テイビス・オーマンディ (
LoadLibrary は、ライブラリのメモリへのロードと既存のシンボルのインポートを処理し、Linux アプリケーションに dlopen スタイルの API を提供します。 プラグイン コードは、gdb、ASAN、および Valgrind を使用してデバッグできます。 フックを接続してパッチを適用することで、実行コードを実行中に調整することができます(ランタイムパッチ)。 C++ の例外処理とアンワインドをサポートします。
プロジェクトの目標は、Linux ベースの環境で DLL ライブラリのスケーラブルで効率的な分散ファジング テストを組織することです。 Windows では、ファジングとカバレッジのテストはあまり効率的ではなく、特にカーネルとユーザー空間にまたがるウイルス対策ソフトウェアなどの複雑な製品を分析しようとする場合、Windows の別の仮想化インスタンスを実行する必要があることがよくあります。 Google の研究者は、LoadLibrary を使用して、ビデオ コーデック、ウイルス スキャナ、データ解凍ライブラリ、画像デコーダなどの脆弱性を検索しています。
たとえば、LoadLibrary の助けを借りて、Windows Defender ウイルス対策エンジンを Linux 上で実行できるように移植することができました。 Windows Defender の基礎を形成する mpengine.dll の研究により、さまざまな形式に対応する多数の高度なプロセッサ、ファイル システム エミュレータ、および Windows Defender にベクトルを提供する可能性のある言語インタープリタを分析することが可能になりました。
LoadLibrary は識別にも使用されました。
出所: オープンネット.ru