最近、カスペルスキーは Duqu 2.0の分析 をリリースし、マルウェアはTrue Typeフォントファイルを使用して重大な脆弱性( CVE-2011-3402 )を悪用し、「カーネルに直接ジャンプしました。 」この特定の脆弱性に関する詳細や、TTFがいかに油断なき目的で使用されるかについて、多くの詳細を見つけることはできませんでした。私は、フォントの指示を画面上の文字に変換するコードはカーネルアクセスを必要とせず、特に複雑にする必要もないと単純に考えますが、それは明らかに正しくありません。では、悪意のあるフォントファイルが任意のコードを実行できるようにするにはどうすればよいでしょうか。
Julia Wolf FireEye、Inc.の分析:
PDF:Julia Wolf、CanSecWest、2013-03-08、 WindowsカーネルTrueTypeフォントエンジンの脆弱性
ビデオ/スライドはこちら。 HackInParis、2013年6月20日、Windowsカーネルの脆弱性の分析:スパイ活動から犯罪目的への使用、スライド: 3ページPDF =、ビデオ: YouTubeで1時間
要点はこれのようです:
スライド32:
(そしてその言語はカーネルモードで解釈されるようです)
スライド78:
Google Project Zeroは、フォントの脆弱性に関する一般的な詳細なブログ投稿をまとめました。
(特定のCVE-2011-3402
上からは言及されていません。)
TechNetブログ:2017-01-13、Matt OhとElia Florio、Windows Defender ATP Research Team、 ゼロデイエクスプロイト緩和策によるWindows 10の強化 (アーカイブ ここ 。)
フォント解析は、AC ["AppContainer"]内のユーザーモードで行われるようになりました
(そのステートメントを含む画像は、このプレゼンテーションのスライド34からのものであるようです:BlackHat 2016、 Windows 10の緩和機能の改善 。 )
TrueTypeフォント(TTF)とOpenTypeフォント(OTF)は非常に人気があり、広く使用されているフォントシステムです。多くのマシンでは、TTFがデフォルトであり、OTFは特にオープンソース形式として使用できるため、人気が高まっています。 OTFは1996年に公開され、TTFはそれよりずっと前から使用されています。これらのフォントシステムの両方をサポートするドライバーでよく使用されるレガシーコードは、ヒープオーバーフローや境界外エラーなどの脆弱性を公開します。どちらも悪意のある特権の実行につながる悪用の一般的な攻撃ベクトルです。
通常、TTFおよびOTFの脆弱性をターゲットとするエクスプロイトは、コンピューターでのこれらのフォントファイルタイプの使用をサポートするドライバーをターゲットとしています。
CVE-2015-2426(Microsoftが Exploit:Win32/CVE-2015-2426 として検出してブロックする)の場合、エクスプロイトは使用された.dllドライバーファイル(atmfd.dll)をターゲットにしようとしましたWindowsのWindows Adobe Type Managerライブラリ。この脆弱性はMS15-078で解決されました。 TrendMicroが分析を行いました この脆弱性は、HackingTeamエクスプロイトでデータ侵害からデータが漏洩したときに発見されました。 NCC Groupも長い分析を行いました HackingTeamエクスプロイトのメタスプロイトフレームワークプロジェクトにms15_078_atmfd_bofとして侵入しました。
全体の話をじっくり味わうことができるなら、 Reverse Engineering and Exploiting Font Rasterizers に関する44CONのj00ruの講演を必ずチェックしてください。
CVE-2013-3128(MS13-081によって解決)は、OTFおよびTTFフォントがMicrosoftプログラムによって解析される方法の脆弱性でした。このような場合、攻撃者は悪意のあるフォントまたは不正なフォントをWebページに埋め込んで、脆弱性を読み込んだりターゲットにしたりして、マルウェアをマシンにインストールする可能性があります。 CVE-2013-3128には、関連するTTFの脆弱性であるCVE-2013-3894を含む Nessus および OpenVAS プラグインがあります。おそらく、これら2つがmetasploit-frameworkエクスプロイトモジュールに組み込まれなかった理由は、同じパッチロールアップMS13-081およびMS13-082に、ms13_081_track_popup_menuという名前の別のローカル権限昇格エクスプロイトが含まれていたためです(新しいms14_058_track_popup_menuと品質が類似しています)。
フォントスケーラーエンジンの脆弱性が本当に好きな場合は、必ず F13 Laboratory の作業をチェックして、Black Hat USA 2013-WindowsカーネルでのFont Scaler Engineのスマッシング video および ホワイトペーパー 、およびDig Teamの作業、Black Hat USA 2014-Windows Kernel Font Scaler EngineのTOCTTOUについて ビデオ および PDFプレゼンテーション 。
カプセル化PostScript(EPS)ファイルは、印刷プレビューを表示し、印刷に関連する他の機能を提供するために使用されます。 TTFと同様に、ユビキタスです。
.epsファイルは、Wordの.docxファイルなどの他のファイルに埋め込むことができます。 .docxファイルが解凍または解凍され、.epsファイルが追加されてイメージとして参照され、.docxファイルが再パックされます。
Microsoft Officeで使用されるPosScriptフィルターに影響を与えるCVE-2015-2545を使用したこの配信メカニズムの3つのバージョンを確認しました。
異常な方法で、この脆弱性のmetasploit-frameworkエクスプロイトモジュールは作成されませんでしたが、CORE IMPACTでは Microsoft Office Malformed EPS File Vulnerability Exploit -またはいくつかのビューを参照してください- レジスタとスタックトレース 。
フォントをレンダリングするために、技術的にカーネルランドメモリ空間へのアクセスは必要ありません。そのため、エクスプロイトとパッチが存在します。
パッチは、レンダリングエンジンがスタック内の書き込み可能なメモリにアクセスして作成する必要があることに対処しました。
これは、ユーザーランドメモリまたはカーネルレベルのメモリレジスタで発生する可能性がありますが、スタックに書き込む前に境界チェックが行われていないため、不正な形式のfonファイルからコードを実行できました。
それが悪用された「方法」を見つけるための最善の策は、metasploitsモジュールを検索することです。私にはそれがあると思います。