Chrome のユーザー補助 API を使用してセキュリティバグを見つける
「Chromeのユーザーインターフェイスコードは複雑であり、時々バグが発生することがある。これらのバグは、メモリ破損を引き起こし、攻撃者が利用できるセキュリティバグになる可能性がある。Chromeチームはこれらのバグを自動的に検出しようとしており、Chrome UIコントロールのアクセシビリティツリー(アシスタントテクノロジーに公開されている)をこの目的で使用できることに気づいた。チームは、ランダムにUIコントロールとやり取りしてクラッシュを引き起こすことができるかどうかを確認する「ファジング」と呼ばれるテクニックを使用している。チームは、Chrome内の新しいコードに到達するコントロールの組み合わせを選択するためにカバレッジガイドファジングを活用し、InProcessFuzzerフレームワークを使用して実際のChromeバージョンでファジングケースを実行するなどの複数の課題を克服する必要があった。また、Chrome環境のノイズと複雑さに関する懸念を解決し、テストケースが安定して実行可能であることを確認する必要があった。チームはファジングの有効性を向上させるためにカスタムミューテーターを開発し、現在ClusterFuzzインフラストラクチャでファジングを実行している。アプローチが成功するかどうかはまだわからないが、ファジングはすでにアクセシビリティコード自体でいくつかの潜在的なバグを見つけた。」