T1659 - Content Injection
概要
Adversaries may gain access and continuously communicate with victims by injecting malicious content into systems through online network traffic. Rather than luring victims to malicious payloads hosted on a compromised website (i.e., Drive-by Target followed by Drive-by Compromise), adversaries may initially access victims through compromised data-transfer channels where they can manipulate traffic and/or inject their own content. These compromised online network channels may also be used to deliver additional payloads (i.e., Ingress Tool Transfer) and other data to already compromised systems.(Citation: ESET MoustachedBouncer)
Adversaries may inject content to victim systems in various ways, including:
- From the middle, where the adversary is in-between legitimate online client-server communications (Note: this is similar but distinct from Adversary-in-the-Middle, which describes AiTM activity solely within an enterprise environment) (Citation: Kaspersky Encyclopedia MiTM)
- From the side, where malicious content is injected and races to the client as a fake response to requests of a legitimate online server (Citation: Kaspersky ManOnTheSide)
Content injection is often the result of compromised upstream communication channels, for example at the level of an internet service provider (ISP) as is the case with "lawful interception."(Citation: Kaspersky ManOnTheSide)(Citation: ESET MoustachedBouncer)(Citation: EFF China GitHub Attack)
管理者によるコメント
T1659「Content Injection」(コンテンツ・インジェクション) は、攻撃者がネットワークトラフィックに介入し、ユーザーが閲覧しているWebページやダウンロードしているデータに対して、悪意のあるコンテンツをリアルタイムで「注入」する手法です。
以前のバージョンでは「手法」として分類されていましたが、現在は T1566(Phishing) や T1189(Drive-by Compromise) を実現するための、より技術的な配信メカニズムとして理解されています。
1. 概要
この手法で攻撃者は、「正規の通信を汚染し、ユーザーに気づかれずに攻撃コードを送り込むこと」を実現します。
何を実現できるのか
- 透過的な攻撃: ユーザーは正規のURL(例:ニュースサイトや社内ポータル)にアクセスしているつもりでも、その通信の途中で悪意のあるスクリプトが挿入されます。
- 検知の回避: サーバー自体を改ざん(T1189)する必要がなく、通信経路でデータを書き換えるため、サーバー側の整合性チェックをすり抜けます。
- 広告やスクリプトの悪用: ブラウザ上で実行される広告スクリプトなどを書き換え、マルウェア配布サイトへリダイレクトさせます。
2. 攻撃の流れ
この攻撃には、通信経路上の「特権的な位置」の確保が必要です。
- 経路の確保 (In-path Position): 攻撃者は、ターゲットと目的のサーバーの間のどこかに位置取る必要があります。
- 例: 公共のWi-Fiスポットでの中間者攻撃 (MitM)。
- 例: ISP(プロバイダ)レベルや、侵害されたルーター・ゲートウェイ。
- トラフィックの監視: 通信をリアルタイムでスキャンし、インジェクションに適したHTTPレスポンス(Webページのデータ)を探します。
- コンテンツの注入: サーバーからの正規の応答パケットに対し、悪意のある
<script> タグや <iframe> を差し込み、パケットの整合性(チェックサムなど)を調整してユーザーに送り届けます。
- ブラウザでの実行: ユーザーのブラウザは、届いたデータが「サーバーからの正規のもの」と信じて、挿入された悪意のあるコードを実行します。
3. 防御・対策
暗号化によって通信の「改ざん」を防ぐことが最も効果的です。
- HTTPS (TLS) の強制利用: HSTS(HTTP Strict Transport Security)を導入し、すべての通信を暗号化します。暗号化された通信(HTTPS)は、途中で内容を書き換えるとエラーになるため、インジェクションを防げます。
- コンテンツセキュリティポリシー (CSP) の設定: Webサイト側で、許可されたドメイン以外からのスクリプト実行をブラウザに禁止させます。
- VPNの使用: 信頼できないネットワーク(公共Wi-Fiなど)を利用する際はVPNを通し、通信全体をトンネル化して保護します。
- 署名付きバイナリの検証: ダウンロードしたファイルが、配信途中で改ざんされていないかデジタル署名を自動検証する仕組みを導入します。
4. 重要ポイント
- 「非暗号化通信」の脆弱性: HTTPなどの暗号化されていないプロトコルがいかに危険であるかを示す典型的な例です。
- 国家レベルの攻撃: ISPやインターネットの基幹インフラを掌握できる国家背景の攻撃グループ(APT)が、大規模な監視やマルウェア配布のためにこの手法を用いることがあります。
5. 関連する主なCWE
- CWE-94: Improper Control of Generation of Code ('Code Injection'): 動的に生成されるコードに外部の入力を許してしまう不備。
- CWE-319: Cleartext Transmission of Sensitive Information: 重要な情報を平文で送信し、傍受や改ざんを許してしまう問題。
- CWE-345: Insufficient Verification of Data Authenticity: データの正当性を検証せずに受け入れてしまう不備。
6. 関連する代表的な事例
特定のソフトウェア脆弱性(CVE)を突くというより、ネットワークインフラの悪用として記録されることが多いです。
- Great Cannon (グレート・キャノン): 中国のインターネット検閲システムの一部。海外から中国国内のサーバーへのトラフィックにJavaScriptを注入し、特定のサイト(GitHubなど)に対してDDoS攻撃を仕掛けるために使用されました。
- Quantum Insert: NSA(アメリカ国家安全保障局)が使用していたとされる手法。ターゲットの通信に介入し、正規の応答よりも早く悪意のある応答を送り込むことで、ブラウザを侵害サイトへ誘導します。
- マルバタイジング (Malvertising): 広告配信ネットワークの通信に介入し、正規の広告枠に悪意のあるスクリプトを注入する攻撃も、このテクニックの広義の応用と言えます。
分析
この攻撃手法を利用する脅威アクター
この攻撃手法を利用する脅威アクターは登録されていません。
関連する CVE
攻撃手法 – 脅威アクター Graph
← Technique一覧に戻る
← Tactics一覧に戻る