T1189 - Drive-by Compromise
概要
Adversaries may gain access to a system through a user visiting a website over the normal course of browsing. Multiple ways of delivering exploit code to a browser exist (i.e., Drive-by Target), including:
- A legitimate website is compromised, allowing adversaries to inject malicious code
- Script files served to a legitimate website from a publicly writeable cloud storage bucket are modified by an adversary
- Malicious ads are paid for and served through legitimate ad providers (i.e., Malvertising)
- Built-in web application interfaces that allow user-controllable content are leveraged for the insertion of malicious scripts or iFrames (e.g., cross-site scripting)
Browser push notifications may also be abused by adversaries and leveraged for malicious code injection via User Execution. By clicking "allow" on browser push notifications, users may be granting a website permission to run JavaScript code on their browser.(Citation: Push notifications - viruspositive)(Citation: push notification -mcafee)(Citation: push notifications - malwarebytes)
Often the website used by an adversary is one visited by a specific community, such as government, a particular industry, or a particular region, where the goal is to compromise a specific user or set of users based on a shared interest. This kind of targeted campaign is often referred to a strategic web compromise or watering hole attack. There are several known examples of this occurring.(Citation: Shadowserver Strategic Web Compromise)
Typical drive-by compromise process:
- A user visits a website that is used to host the adversary controlled content.
- Scripts automatically execute, typically searching versions of the browser and plugins for a potentially vulnerable version. The user may be required to assist in this process by enabling scripting, notifications, or active website components and ignoring warning dialog boxes.
- Upon finding a vulnerable version, exploit code is delivered to the browser.
- If exploitation is successful, the adversary will gain code execution on the user's system unless other protections are in place. In some cases, a second visit to the website after the initial scan is required before exploit code is delivered.
Unlike Exploit Public-Facing Application, the focus of this technique is to exploit software on a client endpoint upon visiting a website. This will commonly give an adversary access to systems on the internal network instead of external systems that may be in a DMZ.
管理者によるコメント
T1189「Drive-by Compromise」(ドライブバイ・コンプロマイズ) は、ユーザーが特定のウェブサイトを閲覧するだけで、意図せず(何もクリックしなくても)マルウェアに感染してしまう攻撃手法です。
1. 概要
この手法で攻撃者は、「ユーザーの積極的な操作を必要としない初期侵入(Initial Access)」を実現します。
何を実現できるのか:
- 広範囲な感染: 有名なサイトや、特定のターゲットが頻繁に訪れるサイト(水飲み場攻撃)を改ざんすることで、効率的に標的を侵害します。
- 高い成功率: フィッシングメールのように「リンクをクリックさせる」「ファイルを開かせる」というステップを飛ばせるため、ユーザーが気づかないうちに侵入を完了できます。
2. 攻撃の流れ
攻撃は、ユーザーがサイトを訪れた瞬間にバックグラウンドで進行します。
- サイトの侵害: 攻撃者はあらかじめ正規のウェブサイトをハッキングして改ざんするか、悪意のある広告(マルバタイジング)を配信ネットワークに紛れ込ませます。
- リダイレクト: ユーザーがそのサイトを訪れると、目に見えない
iframe やスクリプトによって、攻撃者が管理する「エクスプロイト・キット(脆弱性攻撃ツール群)」が設置されたサーバーへ転送されます。
- プロファイリング: 攻撃用サーバーは、訪問者のブラウザの種類、バージョン、OS、プラグイン(FlashやPDF閲覧ソフトなど ※現在はブラウザ自体の脆弱性が主)をスキャンします。
- エクスプロイト実行: 特定された環境に適合する脆弱性を突き、ブラウザの保護機能を突破してコードを実行させます。
- ペイロードの展開: 最終的なマルウェア(ランサムウェアやRATなど)をダウンロード・実行させ、システムを掌握します。
3. 防御・対策
「サイトを訪れるだけでアウト」という性質上、事前の防御とブラウザの堅牢化が不可欠です。
- ブラウザおよびプラグインの更新: ブラウザ(Chrome, Edge, Firefox等)を常に最新の状態に保ち、既知の脆弱性を塞ぎます。
- WebフィルタリングとEDR: 不審なドメインへの通信をブロックし、ブラウザプロセスが不自然な子プロセス(
cmd.exeなど)を起動する挙動を監視します。
- 広告ブロック (Ad-blocker): マルバタイジング(不正広告)経由の感染を防ぐために有効です。
- ブラウザのサンドボックス化: ブラウザをOSの重要部分から隔離して実行する技術(Windows Sandboxや専用のセキュリティ製品)を使用します。
4. 重要ポイント
- 水飲み場型攻撃 (Watering Hole Attack): 特定の組織がよく利用する業界サイトなどを狙い撃ちにするパターンは、標的型攻撃において非常に強力な戦術となります。
- 信頼の悪用: ユーザーが普段から信頼して使っている正規サイトが踏み台になるため、人間の注意力だけでは防ぎきれません。
5. 関連する主なCWE
- CWE-79: Cross-Site Scripting (XSS): サイトを改ざんして悪意のあるスクリプトを埋め込む際に利用される脆弱性。
- CWE-119: Buffer Errors: ブラウザ内でメモリ破壊を引き起こし、コード実行を実現させるために悪用される弱点。
6. 関連する代表的なCVE
T1189ではブラウザやその周辺コンポーネントの「ゼロデイ」や「古いパッチ未適用」の脆弱性が狙われます。
- CVE-2023-2033 / CVE-2023-3079: Google ChromeのV8エンジンにおける脆弱性。ドライブバイ攻撃で実際に悪用されたゼロデイ脆弱性の例です。
- CVE-2021-26411: Internet Explorerのメモリ破損の脆弱性。北朝鮮系などのAPTグループによるドライブバイ攻撃に使用されました。
- CVE-2019-1113: Apple Safariの脆弱性。特定のサイトを閲覧したiPhoneユーザーを標的にした攻撃に悪用されました。
補足
最近ではブラウザのセキュリティが向上したため、単一の脆弱性ではなく、複数の脆弱性を組み合わせた「エクスプロイト・チェーン」が用いられるのが一般的です。
分析
この攻撃手法を利用する脅威アクター
関連する CVE
攻撃手法 – 脅威アクター Graph
← Technique一覧に戻る
← Tactics一覧に戻る