2020-11-15: Fuzzerの実装をした
やったこと
ReDoS
Fuzzerの実装・テストが一通り終わった。
かなり複雑な場合でもちゃんと検出できることが確かめられたので嬉しい。
https://github.com/MakeNowJust-Labo/redos/pull/11
多分細かいパラメータを調整すればもっと精度が上がるはずだけど、その辺をやり始めるとキリがないので、今のところはこんなもので。
あとは、入力パターンに応じて検出エンジンを切り替えるのを実装できれば完成なのではないかと思う。
やっていくぞ。
それと、Metalsが厳しかったIntelliJ IDEAに戻ってきた。
キーバインドが思い出せてないけど、そこそこ快適でいい感じ。
他には、なんか適当に調べていたらこんな発表を見付けた。
FlashRegexという、脆弱性のある正規表現と入力例から、安全な正規表現を生成するシステムを作ったよ、という研究っぽい。
入力例から正規表現を生成するのをsynthesis、正規表現を安全にするのをrepairと言っていて、これの両方をやっているのは前例がない、ということらしい。(前者はlearningというのではないかと思ったけど良く分からない)
あと、こういう入力例から実際のプログラムを生成する、みたいなのをprogram-by-exampleと言って、その手のやつには習慣的にFlashなんとかと命名するようだ。
この手の研究も面白そうだな、と思う。
あとなんかReDoSの研究とか色々まとまってるページを見つけた。
感謝。