- ASUSのDriverHubソフトウェアでワンクリックのリモートコード実行(RCE)脆弱性が発見された
- ローカルでのorigin検証の甘さにより、悪意あるWebサイトがRPC経由で管理者権限での実行を可能にしていた
- UpdateAppエンドポイントを悪用すると、ASUS署名済み実行ファイルと細工されたiniファイルの組み合わせで悪性コードを実行できた
- この脆弱性はCVE-2025-3462、CVE-2025-3463として公開され、ASUSは迅速にパッチを配布した
- 脆弱性報告時点で実際の悪用事例はないことが確認され、ASUSはバグバウンティの代わりに殿堂入りで報いた
Introduction
- 新しいPC部品の購入に関する話から始まる
- ASUSマザーボード購入時、BIOSの自動ソフトウェアインストールオプションがデフォルトで有効になっていた
- 誤ってオプションを無効にしなかったため、Windowsログイン後にDriverHubのインストール権限要求を受けた
- WiFiドライバーが必要だったこともあり、興味本位でDriverHubをインストールした
DriverHub
- DriverHubはGUIなしで動作するバックグラウンドプロセスである
- driverhub.asus.comと通信し、インストールや更新が必要なドライバー一覧を知らせる
- ローカルで**HTTP API(ポート53000)**をRPCとして提供する
- WebサイトがこのローカルサービスにAPIリクエストを送り、直接ドライバー管理を行える
- セキュリティが不十分だと攻撃者が任意のリクエストを送れることを認識した
Finding the Vulnerability
- WebサイトがDriverHubバックエンドに任意のRPCリクエストを送れるか実験した
- Originが“driverhub.asus.com”のときだけ応答するよう設計されていた
- Originチェックが
origin.includes("driverhub.asus.com")のようなワイルドカードマッチで行われているか確認した
- Originを“driverhub.asus.com.mrbruh.com”に変更するとリクエストが許可されることを発見した
- この方法により、攻撃者が悪意あるサイトからRPC呼び出しを行える深刻なリスクであることを確認した
The Extent of the Damage
- リバースエンジニアリングとJavaScript分析を通じて、バックグラウンドで利用可能なAPIエンドポイント一覧を把握した
- 主なエンドポイント:
- Initialize: インストール状態と情報を返す
- DeviceInfo: インストール済みのASUSソフトウェア/ドライバー/ハードウェア/MACアドレスを返す
- Reboot: 即時に再起動を実行する
- Log: ログファイルの一式を返す
- InstallApp: 指定したIDのアプリまたはドライバーをインストールする
- UpdateApp: 指定URLの実行ファイルをダウンロード後に実行する(ASUS署名済みなら自動実行)
- 特にUpdateAppが悪用可能である点に注目した
Achieving RCE
- UpdateAppエンドポイントを詳細に分析した
- “Url”パラメータには
.asus.comを含む条件があるものの、回避の可能性が存在し、ファイル名はURL末尾に従う
- ASUS署名済み実行ファイルのみ自動実行されるが、未署名ファイルもダウンロード後に削除されず残る
- 署名検証通過後、実行直前にファイルを差し替えるタイミング攻撃の可能性を検討したが、実用的ではなかった
- ASUS WiFiドライバーパッケージの構造を分析する中で、AsusSetup.iniのSilentInstallRunプロパティが任意コマンド実行に使えることを把握した
- 最終的な攻撃チェーン:
- 攻撃者がdriverhub.asus.com. * サブドメインのWebサイトへ誘導する
- サイトが悪意あるcalc.exeをUpdateAppで要求する(ダウンロードのみで実行されない)
- カスタムAsusSetup.iniを要求する(
SilentInstallRun=calc.exeを指定、これも実行されない)
- 署名済みのAsusSetup.exeを要求する(管理者権限で自動実行され、“-s”フラグでiniを読み込みcalc.exeを実行する)
- 結果としてワンクリックでリモートから管理者権限の任意コード実行(RCE)が発生した
Reporting Timeline (DD/MM/YYYY)
- 07/04/2025: 最初の脆弱性を発見
- 08/04/2025: RCEの実証と脆弱性報告を実施
- 09/04/2025: ASUSから自動返信を受信
- 17/04/2025: パッチ配布およびパッチ済みビルドを受領
- 18/04/2025: パッチが本番反映されたことを確認
- 09/05/2025: **CVE-2025-3462(8.4点)、CVE-2025-3463(9.4点)**が公開
Assessing the Damage
- 脆弱性報告直後にcertificate transparency追跡スクリプトを作成した
- driverhub.asus.com.* サブドメインの証明書発行履歴を監視した
- 1か月の監視結果では、フィルタにかかったサイトは自身のテスト以外に存在しなかった
- 事前の悪用の兆候はないことが確認された
Bug Bounty
- ASUSにバグバウンティ支払いの有無を問い合わせたが、拒否された
- 代わりに殿堂入り(hall of fame)掲載によって報われた
- ASUSが大企業であるにもかかわらず、バウンティ方針が未整備であるとの説明が加えられた
Fun Notes
- ASUSのSecurity Advisoryフォーム送信時、PoCがAmazon CloudFrontによって悪意あるリクエストとして遮断された
- DriverHubで“Install All”をクリックすると、その他のソフトウェア(Norton360、WinRARなど)も強制インストールされた
- CVEの説明が事実と異なる曖昧さを持ち、「デスクトップ/ノートPCには影響しない」と誤解されるおそれがある(実際にはDriverHubがインストールされたすべての機器が影響を受ける)
- WiFiはいまも動作せず、外付けUSB WiFiアダプターを購入する必要があった
- 問い合わせ先としてSignal: paul19.84、メール contact [at] mrbruh.com が案内されている
1件のコメント
Hacker Newsの意見
*.example.comはtest.example.comには有効だが、test.test.example.comには有効ではない。もし誰かが*.asus.com.example.comのワイルドカードを使っていれば、driverhub.asus.com.example.comは有効になり得る。.example.comのワイルドカード証明書を持っていれば、実際のdriverhub.asus.comではない場所からでも悪用できた可能性がある。この点のため、CTログの監視だけではこの種のサブドメイン乗っ取り脆弱性を完全には捉えられない。MyASUSのようなインストールアプリがデフォルトで追加された。幸い無効化オプションがあり、Intel NUC BIOSから更新した場合はデフォルトでオフになっているようだ。