ハッカーがDLLサイドローディングを悪用しOneDrive.exe経由で悪性コードを実行

はじめに

セキュリティ研究者が、MicrosoftのOneDriveアプリケーションを悪用し、検出されずに悪性コードを実行する高度な攻撃手法を発見しました。このDLLサイドローディングと呼ばれる手法は、Windowsがライブラリファイルをロードする方法を悪用し、正規のアプリケーションに攻撃者によって制御されたソフトウェアを実行させます。これは、OneDriveが数千台のマシンに広く展開されている企業環境にとって、重大な脅威となります。

攻撃ベクトルの理解

この脆弱性は、アプリケーション起動時にWindowsがライブラリファイルを検索する方法に起因します。OneDrive.exeが起動すると、オペレーティングシステムはversion.dllなどの必要なファイルを複数の場所で検索します。まずアプリケーションのディレクトリをチェックし、その後システムディレクトリを検索します。攻撃者はこの予測可能な検索順序を悪用し、悪意のあるversion.dllをOneDrive.exeと同じフォルダに配置します。アプリケーションが起動すると、正規のMicrosoftライブラリではなく、攻撃者のコードを意図せずロードし、信頼されたOneDriveプロセス内で不正な実行を可能にします。

攻撃の危険性

このアプローチは、悪性コードがシステムレベルのアプリケーションであるOneDrive.exeのIDと権限で実行されるため、特に危険です。セキュリティツールはMicrosoftによってデジタル署名されたプロセスを信頼することが多いため、この手法は従来のEDR(エンドポイント検出および対応)システムを迂回するのに非常に効果的です。攻撃者のコードは、OneDriveが通常持つすべての昇格された権限とネットワークアクセスを継承します。

攻撃の高度な手法

セキュリティ研究者によって発見された概念実証は、基本的なDLLサイドローディングを超えた追加の高度な手法を示しています。悪意のあるライブラリは、ホストアプリケーションとの互換性を維持するDLLプロキシを使用します。OneDriveが予期される関数を見つけられない場合にすぐにクラッシュするのではなく、悪意のあるDLLは正規のversion.dllと同じ関数をエクスポートし、正規の呼び出しを実際のシステムライブラリに転送します。これにより、OneDriveは正常に動作し続け、攻撃者のコードはバックグラウンドで目に見えない形で動作します。

さらに、この実装は、ベクタ化例外処理(Vectored Exception Handling)とメモリページ保護技術を使用した高度なAPIフックを採用しています。セキュリティ製品が検出する可能性のある明白な方法でコードを直接変更するのではなく、攻撃はWindows APIレベルで関数呼び出しを傍受します。OneDriveがCreateWindowExW関数を実行しようとすると、フックメカニズムがこのアクションを捕捉し、実行フローを攻撃者によって制御されたコードにリダイレクトします。この手法は、アプリケーションの実行中、永続性を維持するために継続的に自身を再武装させます。

ペイロードと組織へのリスク

概念実証では、プロセス作成を通じて任意のコード実行が行われることを示しています。悪意のあるペイロードは、DLLインジェクション後2秒間待機し、その後昇格された権限でコマンドを起動します。デモンストレーションでは単純なメモ帳プロセスを使用していますが、実際の攻撃では、ランサムウェアの実行、資格情報の窃取、バックドアの展開、コマンド&コントロール接続の確立などが行われる可能性があります。2秒の遅延は、実際の攻撃が始まる前に初期のOneDriveプロセスが正規に見えるようにするための隠蔽メカニズムとして機能します。

ファイル同期とコラボレーションにOneDriveを使用している組織は、アプリケーションが永続的な昇格された権限とネットワーク接続を維持するため、特にリスクに直面します。OneDrive内でコード実行を可能にした攻撃者は、同期されたファイルへのアクセス、機密文書の持ち出し、ネットワーク上での永続性の確立、他のシステムへの横展開が可能になります。この手法は、従業員が個人デバイスと企業デバイス間でOneDriveを介して企業データを同期するハイブリッドワーク環境において特に懸念されます。

推奨される対策

組織は、以下の複数の検出レイヤーを実装する必要があります。

  • アプリケーションディレクトリ内の予期せぬDLLファイルの監視
  • アプリケーションがライブラリをロードできる場所の制限
  • 信頼されたアプリケーションからの疑わしいプロセス作成に対する行動分析

セキュリティチームは、OneDriveの展開構成を見直し、重要なアプリケーションディレクトリに対してファイル整合性監視が有効になっていることを確認する必要があります。


元記事: https://gbhackers.com/hackers-abuse-onedrive-exe-via-dll-sideloading/