今回の講演では、ソースコードが入手不可能なコンパイルされたプログラムの解析について取り扱う。LLVM パスの様な多くの静的なプログラム解析ツールでは、ソースからバイトコードへのコンパイル機能に重点を置いており、バイナリを動作させることはできない。この問題の解決策を、Binary Ninja で扱っている新しい中間言語 (IL) を用いて紹介し実演する。Binary Ninja IL は、それを用いた解析をどの様に記述するかという基礎的な知識を用いることにより、取り扱うことが可能となる。
今回の講演では、簡単なメモリ破壊脆弱性を自動検出するために書かれた Binary Ninja IL で開発されたツールを公開し、CTF で出題されたバイナリを用いて実演する。また、脆弱性発見の手順における、変数解析や抽象解釈、整数範囲解析についても議論する。
--- ソフィア・ダントワーヌSophia D'Antoine
ソフィア・ダントワーヌはニューヨークの Trail of Bits 社のセキュリティ技術者であり、Rensselaer Polytechnic Institute の卒業生である。彼女は RECon、HITB、CanSecWest の様な世界中のセキュリティ・カンファレンスでは常連の講演者である。彼女の講演では、LLVM を用いたソフトウェアの難読化や、ソフトウェアに対する攻撃の自動化技術などを取り扱っている。彼女は CTF への取り組みや、騒がしいコンサートに出かけることに多くの時間を費やしている。