ジョナサン・ライチュー【CODE BLUE SPEAKER インタビュー】
[Speaker interview, English follows]
セキュリティ研究者を増強することでOSS系脆弱性を淘汰する
今回は「セキュリティ研究者を増強することでOSS系脆弱性を淘汰する」の講演を予定しているジョナサン・ライチュー(Jonathan Leitschuh)氏に話を伺いました。
https://codeblue.jp/2022/talks/?content=talks_15
講演のテーマは、OSS プロジェクトの脆弱性修正の自動化です。昨年末に発見・報告されたLog4Shellは、脆弱性の影響範囲が広く、かつその悪用が容易だったことから、大きな話題となりました。
ライチュー氏は、OSSプロジェクトの脆弱性を修正するために、Gitリポジトリに対するプルリクエストを大量に生成するツールを開発し、講演ではその事例が紹介されるといいます。
また、特筆すべき点として、ライチュー氏がダン・カミンスキー・フェローシップ*1の初代受賞者であることも挙げられます。
フェローシップは、生前のカミンスキー氏が共同創立者として名を連ねたWhiteOps社(現HUMAN Security社)によって設立され、インターネットのイノベーションに貢献する人物に贈られるというものです。
―― 発表されるテーマを始めたきっかけは何ですか?
ライチュー氏:私は2019年からOSSのセキュリティ脆弱性を調査していますが、同じ脆弱性が複数のプロジェクトで何度も現れることがよくあります。これらの脆弱性を手作業でプロジェクトに報告するのは、非常に困難で時間がかかるものです。私はこのプロジェクトの自動化を考え、早い段階での試みで成功を収めました。
―― この研究を行う上で、障害となったことは何ですか?
ライチュー氏:このように自動的に脆弱性をメンテナーに開示する場合、人的な要素を十分に意識する必要があります。ゼロデイ脆弱性を放置するかもしれませんし、まったく脆弱性でないものを報告してしまう可能性もあります。開示は、非常に注意深く、かつ慎重に行う必要があります。
さらに、周囲のコードと同じように見えるように自動的にコードを書き換えることは、非常に困難な作業です。
―― この講演に参加しようと思っている人たちに一言お願いします。
ライチュー氏:私たちが何度も何度も発見し続けている脆弱性は自動化することによって実際に排除できる。このことを他のセキュリティ研究者に理解してもらいたいと考えています。そのためのテクノロジーはすでに存在しています。あとはそれを活用するだけなのです。
“Scaling the Security Researcher to Eliminate OSS Vulnerabilities Once and For All”
Jonathan Leitschuh
https://codeblue.jp/2022/en/talks/?content=talks_15
―― How did you get started in the topic that you are presenting?
I've been finding security vulnerabilities in OSS since 2019, and often the same vulnerability appears again and again across multiple projects. It can be very difficult and time consuming to manually report these vulnerabilities to projects by-hand. I was inspired to throw automation at this project and found success on earlier attempts.
―― What were some of the obstacles in doing this research?
You have to be very conscious of the human element when automatically disclosing vulnerabilities to maintainers in this way. You’re essentially dropping an 0-day vulnerability on them, or it may not be a vulnerability at all. You have to be very careful and gentle in your disclosure.
Additionally, automatically rewriting code so that it looks like the surrounding code is a very difficult endeavor.
―― What would you say to the people thinking of attending this talk?
I’m hoping to inspire other security researchers to realize that the vulnerabilities we keep finding again and again, and again can actually be eliminated through automation. The technology exists, we just need to leverage it.