はじめに
フィッシング攻撃というと、「偽サイトにIDとパスワードを入力させる」イメージが強いですが、
実際の攻撃では “ファイルをダウンロードさせて実行させる” という手口も非常に多く使われます。
そのときに登場するのが Dropper(ドロッパー) と呼ばれるソフトウェアです。
Dropper は、被害者に実行させるための “最初の踏み台” となるプログラムで、
それ自体は一見すると無害に見えることが多いのが特徴です。
Dropper(ドロッパー)とは
Dropper とは、本命のマルウェアを被害者の環境に「落とす(drop する)」ためのプログラムです。
特徴をまとめると:
- 被害者に ダウンロード&実行させること が主目的
- 自身は 比較的無害に見える 作りになっていることが多い
- 実行されると:
- 本命マルウェアを 内部から展開 する
- または 外部サーバーからダウンロード する
- 最終的に 攻撃者のインフラ(C2)と通信 するマルウェアを動かす
つまり、Dropper は マルウェア本体ではなく「運び屋」 の役割を担います。
Dropper の典型的な偽装例
被害者を騙すために、こんな姿で配布されます:
- 「この動画を見るにはコーデックが必要です」
- 「このファイルを開くには専用ビューアが必要です」
- 「社内ツールのアップデートです」
- 「請求書・見積書ビューアです」
つまり、「役に立ちそう」な顔をしたトロイの木馬みたいな存在ですね。
Dropper の役割(なぜ分離するのか?)
Dropper はたいてい それ自体は強い悪意を持たない ように作られています。
理由はシンプル:
- ウイルス対策ソフトに引っかかりにくくするため
- 検知を回避して “最初の一歩” を踏ませるため
- 本命マルウェアを後から柔軟に差し替え可能にするため
役割分担はこんな感じ:
[フィッシングメール]
↓
[Dropper 実行]
↓
[本命マルウェアをダウンロード or 展開]
↓
[攻撃者のC2サーバへ通信]
↓
[遠隔操作・情報窃取・横展開]
Dropper は “運び屋”、
本命マルウェアは “実行役” という分業制です。
実行後に何が起きる?
Dropper が実行されると、典型的には:
- 外部サーバーからマルウェアをダウンロード
- 内部に埋め込まれていたペイロードを展開
- 自動起動設定(レジストリ・タスク・サービス登録など)
- 攻撃者の C2(Command & Control)に接続
- 攻撃者がリモート操作可能な状態に
結果として:
- キーロガー
- 情報窃取マルウェア
- ランサムウェア
- バックドア
- 社内ネットワーク横断感染
などの 次のフェーズの攻撃 に繋がります。
なぜアンチウイルスをすり抜けるのか?
Dropper が検知されにくい理由:
- 本体は ほぼ無害なロジック しか持たない
- 悪意コードは 後から取得 or 復号 される
- 振る舞い検知前に 短時間で役目を終える
- シグネチャベース検知を回避しやすい
つまり:
「空港の手荷物検査は通るけど、中身を後で現地調達するスパイ」
みたいな存在です。なかなか狡猾
Blue Team 視点:どうやって防ぐ?
技術対策:
- ✅ EDR / 振る舞い検知の導入
- ✅ PowerShell / Script 実行ログ監視
- ✅ 不審な通信(C2)検知
- ✅ メール添付・ダウンロード制御
- ✅ マクロ・実行ファイルの制限
運用・教育面:
- 「コーデック要求=まず疑え」教育
- 添付ファイル実行ルールの徹底
- “とりあえず実行”文化の撲滅
- フィッシング訓練(GoPhish など)
Red Team 視点:なぜ Dropper は重要か?
※あくまで 防御強化のための理解 という前提で:
- 初期侵入フェーズでの 検知回避テクニックの代表例
- 「最初の一歩」をどこで検知できるか?を検証できる
- EDR / SOC の対応力テストに最適
- フィッシング+マルウェアの 連携シナリオ評価 に使える
まとめ
- Dropper は マルウェアの“運び屋”
- 自身は比較的無害に見せかける
- 実行後に 本命ペイロードを展開・取得
- 攻撃の初期侵入フェーズでよく使われる
- 防御側は「実行前」「通信」「挙動」を見るのがカギ
この知識は:
- セキュリティ教育
- 検知・防御設計
- 許可された演習・検証
のために使うものです。
実運用環境や他人のシステムに対して試すのはアウトです。ガチで。