Trojan horse (トロイの木馬) は「正規ソフトに偽装し、ユーザに自発的に実行させる」マルウェアの総称。ホメロス『イリアス』の「敵自身に城門を開けさせる」発想がそのまま、「ユーザ自身に install ボタンを押させる」攻撃モデルに対応する。自己増殖もせず脆弱性も要らないため、完璧なシステムでも感染が成立する。最初の一歩は常に「ユーザの判断ミス」 — これが Trojan を 35 年以上にわたって主要な攻撃面にしている本質。本稿では分類・配送経路・攻撃チェーン・持続化・代表事件・MaaS エコシステム・多層防御までを通しで扱う。
難しく見えても本質は次の 3 つだけ。(1) Trojan は 「便利なソフトのフリをして、自分でインストールしてもらう」マルウェア。ギリシャ神話の木馬がそのまま現代版。(2) 自分で増殖しない (= ウイルスと違う) ので、感染の最初の一歩は必ず「ユーザのクリック」。技術的な欠陥がなくても発生する。(3) 唯一の根本対策は 「信用できないコードを実行しない」だが、現実には完璧は無理なので 多層防御 (メール / EDR / MFA / バックアップ) を組み合わせる。— ここを土台に各章を順に開いていけばいい。
マルウェア分類における Trojan の位置 #
「ウイルス」「マルウェア」「Trojan」「ランサムウェア」を全部同じ意味で使うニュース記事は多いが、技術的には機能と性質で明確な区別がある。1 つのマルウェアが複数のカテゴリに同時に当てはまる (例: WannaCry = Worm + Ransomware) ことも普通。
名前を混同しがちだが、「どうやって広まるか」の違いだけ覚えればいい。ウイルス = 「他のファイルに寄生して、そのファイルを実行すると一緒に動く」 — 風邪のウイルスが人体に寄生するのと同じ。ワーム = 「人が何もしなくても、ネット越しに自動で広がる」 — インフルエンザの空気感染のイメージ。トロイ = 「正規ソフトのフリをして、人に自分でインストールしてもらう」 — 詐欺師の手口に近い。ランサムウェア / スパイウェアなどは 「目的」の名前であって、広め方の名前ではない。「WannaCry はワームでありランサムウェア」のように、両方に当てはまるのが普通。
拡散方法による分類 #
| 種別 | 拡散の仕方 | 代表例 |
|---|---|---|
| Virus | 他の正規ファイルに「寄生」、ホスト実行で活動 | ELK Cloner, CIH, Brain (古典的、現代では稀) |
| Worm | 自己増殖、ネットワークで自動拡散、ユーザ操作不要 | Morris, Slammer, Conficker, WannaCry の worm 部分 |
| ★ Trojan | 正規ソフトに偽装、ユーザが自分で実行、自己増殖しない | Zeus, Emotet, Trickbot, Cobalt Strike (商用化) |
目的による分類 (Trojan の中身として運ばれる) #
| 種別 | 何をするか | 代表例 |
|---|---|---|
| Backdoor / RAT | 攻撃者が遠隔操作する裏口、画面/キー/ファイル操作 | Cobalt Strike, NjRAT, Quasar, Sliver |
| Ransomware | ファイル暗号化 → 身代金、通常 Trojan で配送 | WannaCry, LockBit, REvil, Conti, BlackCat |
| Spyware / Stealer | 認証情報・暗号資産・Cookie 等の窃取 | RedLine, Vidar, Lumma, Pegasus (モバイル) |
| Cryptominer | CPU/GPU で暗号資産マイニング、電気代を盗む | XMRig (Monero), CoinHive (ブラウザ) |
| Banking Trojan | 銀行サイトを書換、認証奪取、フォームグラビング | Zeus, Trickbot, Dridex, Emotet, QakBot |
| Botnet client | ゾンビ端末化、DDoS や spam 配信に使う | Mirai (IoT), Necurs, Emotet, Mozi |
| Rootkit | OS 内部に隠れる隠匿層、他マルウェアを隠蔽 | Stuxnet, ZeroAccess, LoJax (UEFI) |
| Dropper / Loader | 第 1 段、後続のペイロードを呼び込む | Emotet, IcedID, BumbleBee, SmokeLoader |
「Virus / Worm / Trojan」は拡散方法の分類。「Ransomware / Stealer / RAT」は目的の分類。両者は同時に成立する。WannaCry はランサムウェアでありワーム、Emotet はトロイの木馬であり Banking Trojan であり Botnet client であり Loader — 多重に当てはまるのが普通。
Trojan の機能別サブ分類 — 犯罪者の経済的目的 #
Trojan の機能をより細かく分類すると、犯罪者の経済的目的ごとに分かれる:
| サブ分類 | 何を狙う | 代表ファミリー |
|---|---|---|
| Banking Trojan | オンラインバンキング認証、2FA コード、口座送金 | Zeus (2007), SpyEye, Trickbot, Dridex, Emotet, QakBot, IcedID |
| InfoStealer | ブラウザ保存パスワード、Cookie、暗号資産ウォレット、Discord/Steam トークン | RedLine, Vidar, Lumma, Raccoon, AZORult, MetaStealer |
| Ransomware (家族) | ファイル暗号化 → 復号鍵で身代金 | LockBit, ALPHV/BlackCat, Conti, REvil, Royal, Akira |
| RAT | 完全な遠隔制御 (画面/カメラ/マイク/ファイル/コマンド) | Cobalt Strike, Sliver, NjRAT, Quasar, Remcos, AsyncRAT |
| Dropper / Loader | 第 1 段ペイロード — 後続を呼び込む | Emotet (現代最大), BumbleBee, GootLoader, IcedID, SocGholish |
| Cryptominer | CPU/GPU で Monero 採掘 (電気代・発熱を被害者に転嫁) | XMRig (OSS を悪用), Lemon Duck |
| Botnet client | DDoS / spam / stealer 配布の足場 | Mirai (IoT), Necurs, Emotet, Mozi |
| Spyware (国家系) | 記者・活動家・政治家の継続監視 | Pegasus (NSO Group), FinFisher, Predator (Intellexa) |
Emotet が初期侵入し、Trickbot を呼び込み、Trickbot が BloodHound で AD を偵察、最後に Ryuk / Conti で暗号化 — という多段攻撃チェーンが標準。Initial Access Broker (IAB) という「初期侵入だけ専門に売る」業者まで存在する分業化が進んでいる。
配送経路 — 2026 年の現実 #
Trojan がユーザの PC に届くまでの経路は、過去 10 年で大きく変化した。Office マクロ封印 (Microsoft 2022) や OS 側のセキュリティ強化で昔ながらの方法が通じなくなったぶん、新しい配送形態が次々現れている。
Trojan の配送経路は 「日常生活に紛れた詐欺の手口」と同じ構造。フィッシングメール = 偽の配達票、Malvertising = Google 広告に化けた偽の電話勧誘、海賊版ソフト = ロハで貰った「タダの傘」(中に追跡器)、USB ドロップ = 駐車場に落ちている「経理 2026」と書かれた USB、供給チェーン攻撃 = 正規メーカーの工場で混入した不良品。「Google 検索の一番上に出てきたから安全」「人気ソフトの公式サイト風だから安全」は誤り — 必ずブックマークまたは公式ドメインを直接打って入る習慣をつけるのが最低限の自衛。
- フィッシングメールの添付 — 依然として圧倒的トップ。
.docm(マクロ付き Word) はマクロ封印で衰退、代わりに.iso/.lnk/.one(OneNote) /.svg/.htmlsmuggling が流行 - HTML smuggling — メール本文の HTML がブラウザ内 JS で zip を組み立てる。EDR がファイル添付として検出できない
- Malvertising — 検索結果上部の有料広告で「正規ソフト ダウンロード」を装う (PuTTY, Notion, OBS, VS Code の偽広告事例多数)。Google Ads がしばしばクリーンアップに失敗
- 海賊版・クラックソフト — Adobe / Office / ゲームの crack に Trojan が同梱。「無料で手に入る何か」には常にリスク
- Vishing (電話) — 「IT サポートです、PC が乗っ取られています」。AnyDesk / TeamViewer 系の正規ツールを攻撃者が遠隔操作
- USB ドロップ — 駐車場に「経理 2026」と書かれた USB を撒く古典手法。今でも企業ターゲットで成功する
- Drive-by download — ブラウザ脆弱性で訪問するだけ感染。sandbox により困難になったがゼロデイで成立
- 供給チェーン — 正規ソフトのアップデート機構を汚染して全顧客に配布。SolarWinds Sunburst (2020) / 3CX (2023) / XZ utils backdoor (2024) が代表
- Living off Trusted Sites — GitHub / Discord / Telegram / Cloudflare R2 / AWS S3 をマルウェア配布や C2 通信に流用
攻撃チェーン — MITRE ATT&CK の縮図 #
Trojan の動きを MITRE ATT&CK の Tactics 順 に追うと、「クリックから ransomware 起動まで」の道筋が見える。
10 段階に分けると圧倒されるが、実は 「家に泥棒が入ってから金庫を奪うまでの手順」とそっくり。玄関に侵入 (Initial Access) → 合鍵を作る (Persistence) → 監視カメラを切る (Defense Evasion) → 本部と通信 (C2) → 家の構造を調べる (Discovery) → 金庫の鍵を盗む (Credential Access) → 隣の部屋にも入る (Lateral Movement) → 最後に金庫を破壊する (Impact)。重要なのは 「玄関に侵入された時点 = まだ被害ゼロ」という事実 — 後段で気付いて止められれば被害は防げる。EDR の本当の役目はこの後段の監視。
Initial Access から Lateral Movement までの平均時間 (CrowdStrike 2024): 62 分 (前年 84 分から短縮)。検知が遅れると数日〜数週間で AD ドメイン全体が乗っ取られ、ransomware 起動でデータが暗号化される。後の検知では既に被害が拡大している。
どこで止めるか #
- 段階 ①〜② — メールフィルタ / マクロ無効化 / 海賊版禁止 / Application Allowlisting (一番効果的)
- 段階 ③〜⑤ — EDR の挙動検知 / プロキシでの C2 ドメイン遮断 (現代の主戦場)
- 段階 ⑥〜⑨ — LSASS 保護 / ネットワークセグメンテーション / Tier 管理 / honey tokens
- 段階 ⑩ — ほぼ手遅れ。バックアップから復旧が事業継続の最後の砦
持続化と検出回避 — 動き続ける技術 #
マルウェア最大の課題は「再起動後も生き残る」こと。Windows での持続化 (Persistence) の代表手法を Registry 例で示す。
# ① Registry Run keys (一番古典的・一番見つかりやすい)
> reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /v evil /d C:\Users\Public\evil.exe
# ② Scheduled Task — ログオン時起動を仕込む
> schtasks /create /tn "Updater" /sc onlogon /tr C:\evil.exe
# ③ Service — sc create で SYSTEM 権限で常駐
> sc create EvilSvc binPath= C:\evil.exe start= auto
# ④ DLL hijacking — 正規 EXE が探す DLL を先に置く
# ⑤ COM hijacking — Registry の COM CLSID を書換
# ⑥ WMI Event subscription — WMI イベントで定期実行 (検出困難)
# ⑦ Bootkit / UEFI rootkit — OS 起動前から走る (LoJax, MoonBounce, BlackLotus)検出回避 (Defense Evasion) の典型 #
- Packer / Crypter — UPX / Themida / 商用 packer でコードを暗号化して実行時展開、AV シグネチャを避ける
- Polymorphic / Metamorphic — 感染のたびにコードを変形しシグネチャを無効化
- コード署名証明書の濫用 — 盗んだ正規ベンダーの証明書で署名 (Stuxnet が Realtek / JMicron の証明書を使用)
- Process injection / hollowing —
explorer.exe,svchost.exe等の正規プロセスに自分のコードを注入 - LOLBins (Living off the Land Binaries) —
powershell,mshta,certutil,regsvr32,rundll32,bitsadminなどの正規システムツールでマルウェア相当の動作を実現 (LOLBAS Project が一覧化) - Sandbox 検出 — VM / sandbox の特徴 (低 RAM, sleep 加速, 特定 driver) を見て自己終了
- Sleep / Stalling — 数時間〜数日寝てから動く、短時間 sandbox 解析を回避
歴史的な代表 Trojan #
| 年 | 名前 | 特徴 |
|---|---|---|
| 1989 | AIDS Trojan (PC Cyborg) | 世界初のランサムウェア。フロッピー配布、HDD ファイル名を暗号化、$189 の身代金 |
| 1998-99 | Sub7 / BackOrifice | RAT のパイオニア。「ハッキング」が大衆文化に登場した時期 |
| 2007 | Zeus (Zbot) | Banking Trojan の王。ソースコード流出 (2011) → Citadel, Gameover Zeus 等の派生種爆発 |
| 2010 | Stuxnet | 国家レベル。4 つのゼロデイ + Realtek/JMicron 署名 + Siemens PLC 改竄。イラン核施設の遠心分離機を物理破壊、サイバー兵器の最初の公知事例 |
| 2014 | Emotet | 元は Banking Trojan、後にマルウェア配信プラットフォームに進化。2021 年 Europol 主導で takedown、2022 年復活 |
| 2016 | Mirai | IoT ボットネット。Wi-Fi カメラ・DVR を 60 万台以上感染、Dyn DDoS で Twitter/Reddit/GitHub を巻き込み |
| 2017 | WannaCry / NotPetya | EternalBlue (NSA リーク) を組合せた worm + ransomware。150 か国 20 万台以上、英 NHS / Maersk / FedEx が停止 |
| 2018- | TrickBot / Ryuk / Conti | Emotet → TrickBot → Conti の多段攻撃チェーンが業界標準化 |
| 2020 | SolarWinds Sunburst | 供給チェーン攻撃。SolarWinds Orion のアップデートに混入、米連邦機関 9 つを侵害 |
| 2021 | Pegasus 暴露 | NSO Group の商用スパイウェア。記者・活動家・政治家のスマホにゼロクリック exploit |
| 2023 | 3CX 供給チェーン | VoIP ソフト 3CX のアップデートに北朝鮮系マルウェア。59 万企業の 3CX 顧客に潜在影響 |
| 2024 | XZ utils backdoor (CVE-2024-3094) | OSS にメンテナとして 2 年潜入 → liblzma に backdoor、SSH 認証バイパスを世界中の Linux に植え付け寸前で発見 |
| 2025 | GootLoader / SocGholish 復活 | SEO poisoning で「契約書テンプレ」を装う JS loader が再増加 |
Trojan は 35 年で衰えるどころか年々高度化している。特に供給チェーン攻撃は防御が極めて困難で、XZ utils 事件 (2024) はほぼ全 Linux に backdoor が入る寸前だった事実が業界に衝撃を与えた。「メンテナが信用できなかったらどうするのか」という根本問題は未解決のまま。
Malware-as-a-Service と現代エコシステム #
「単独のハッカーが書いて配る」モデルから、分業化された商業エコシステムに進化している。ソフトウェア業界そのもののような構造を持つ。
映画に出てくる「天才ハッカーが 1 人で犯行」のイメージはもう古い。現代は 完全な分業化された商業エコシステム。マルウェア開発会社 (MaaS) が月額制で機能を貸し、初期侵入の専門業者 (IAB) が「○○社の VPN 認証情報」を 1 件数万円で販売、ランサムウェア本部が暗号化と身代金交渉を担当し、洗浄業者が暗号資産をクリーンアップ。普通のソフトウェア業界と同じくらいの組織化で動いている。だから個別の攻撃者を捕まえても効果は限定的で、「エコシステム全体を不採算にする」マクロな視点での対策 (国際協力 / 暗号資産規制 / 身代金支払い禁止) が議論されている。
- MaaS (Malware-as-a-Service) — マルウェア作者が月額/利用料で他犯罪者に貸し出す。RedLine Stealer は月 $200、LockBit は身代金の 20% を作者へ
- RaaS (Ransomware-as-a-Service) — 上の特化形。「アフィリエイト」が侵入を担当し、暗号化と交渉は本部
- IAB (Initial Access Brokers) — 「企業 X の社内ネットへの足場 (RDP/VPN 認証情報)」を 1 件 $1,000〜$50,000 で取引するブローカー。Russian Market / Genesis Market 等のフォーラム経由
- Stealer ログ (combo list) — 感染端末から抽出した「URL + ID + パスワード」のセットが 1 ボット分で $2〜$20
- Crypter / Packer サービス — 「あなたのマルウェアを AV 検知されない形に packing します」を月額提供
- Bullet-proof hosting — 法執行から守られる (ほぼ) サーバ提供サービス。多くがロシア・東欧・中国
「侵入は IAB から買い、暗号化は RaaS で、stealer ログは別で買う」という完全分業経済が、身代金 $50M+ クラスの大型攻撃を可能にしている。MGM Resorts (2023, $100M+ 損失) や Change Healthcare (2024, $22M 身代金 + $872M 損失) はこのモデルから生まれた事件。
防御 — 唯一の根本対策と多層防御 #
「信用できないコードを実行しない」 が唯一の根本対策。だが普通のユーザに完璧な判断を求めるのは非現実的なので、多層で防御するのが標準形。
企業向け対策は重厚だが、個人なら次の 5 つを揃えるだけで 90% の Trojan 攻撃は無力化できる。(1) 添付ファイルは開かない — 心当たりのない添付は問答無用で削除。(2) OS とブラウザは自動更新 ON。(3) MFA を有効化 (Google Authenticator / Authy / YubiKey) — パスワード盗まれても認証通らない。(4) 海賊版 / cracked SW は絶対に入れない — 「無料の何か」は必ず代償がある。(5) Windows なら標準の Defender / Mac なら XProtect を有効に。「使い古された対策」だが、本当に守るのはこの 5 つ。
| 層 | 内容 |
|---|---|
| メールフィルタリング | 添付ファイル種別の制限 (.exe .iso .one .lnk .html) / sandbox 検査 / SPF/DKIM/DMARC |
| ブラウザ・OS の sandbox | Chrome/Edge の site isolation / Windows Sandbox / macOS Gatekeeper / Linux 普通ユーザ運用 |
| マクロ / scripting 制限 | Office マクロをデフォルト無効化 (Microsoft 2022 標準) / PowerShell 制限モード / WSH 無効化 |
| EDR | CrowdStrike Falcon / Microsoft Defender for Endpoint / SentinelOne — 挙動ベースで検知 |
| Application Allowlisting | AppLocker / WDAC / Gatekeeper / SELinux で「許可リスト以外実行不可」(最強だが運用重い) |
| 多要素認証 (MFA) | パスワードを盗られても認証は通らない。stealer 被害を限定 |
| 特権分離 | 普段は非 admin / sudo 一時昇格 / Tier 0 アカウントの隔離 |
| ネットワークセグメンテーション | VLAN 分割 / Zero Trust / マイクロセグメンテーションで lateral movement 抑制 |
| C2 通信ブロック | プロキシで既知 C2 ドメイン遮断 / DNS フィルタ (Quad9, Cloudflare 1.1.1.2) |
| バックアップ + イミュータブル | ransomware 対策の最後の砦。3-2-1 ルール + オフライン/write-once コピー |
| パッチ管理 | ブラウザ / OS / 業務アプリの自動更新で配送経路を閉鎖 |
① メールの添付は基本開かない / ② OS とブラウザの自動更新を ON / ③ MFA を有効化 (Authenticator アプリ) / ④ 海賊版・cracked SW を入れない / ⑤ MS Defender / macOS XProtect / Linux ClamAV を有効に — これだけで 90% の Trojan 攻撃は無力化できる。
解析アプローチ — 怪しいファイルが手元に来たら #
疑わしいファイル (不審な添付メール、共有 PC で見つけた exe) を入手したときの解析手順。
怪しいファイルを見つけたとき、初手はこれだけでよい。(1) ファイルのハッシュ値 (SHA-256) を計算 (PowerShell なら Get-FileHash, Linux なら sha256sum)。(2) virustotal.com に貼り付け検索。(3) 既知のマルウェアなら 70+ の AV エンジンが判定を返してくれる。未知の場合だけファイル本体を提出する (機密情報がある場合は慎重に — VirusTotal はアップロード内容を全 AV ベンダーに共有する)。これで個人ユーザの「これ大丈夫?」の 9 割は答えが出る。深掘りしたくなったら Any.Run でブラウザ上 sandbox 実行も可能。
| 手法 | ツール | 何が分かるか |
|---|---|---|
| オンラインスキャン | VirusTotal | 70+ AV エンジンの判定 + 過去解析履歴 |
| 動的解析 (sandbox) | Any.Run, Triage, Joe Sandbox, Cuckoo | 隔離 VM 実行 → API 呼出し / 通信先 / ファイル変更を記録 |
| 静的解析 | DIE (Detect It Easy), PEStudio, exiftool, strings |
packer 種別 / import 関数 / suspicious 文字列 |
| 逆アセンブル | Ghidra (NSA 製 OSS), IDA Pro, Binary Ninja, radare2 | アセンブリ・C 風コードを読み解く |
| デバッガ | x64dbg, gdb + pwndbg, Frida | 実行を一時停止して内部を観察 |
| Yara ルール | yara, YARA-Rules | 既知ファミリーを照合 |
| ATT&CK Navigator | navigator | 観測挙動を Tactics/Techniques に紐付け |
$ file suspicious.exe # ファイル形式
$ sha256sum suspicious.exe # ハッシュ → VT 検索キー
$ strings -a -n 8 suspicious.exe | head -50 # URL / API 名 / mutex 名を見る
$ exiftool suspicious.exe # メタデータ
$ upx -d suspicious.exe 2>/dev/null # UPX packer なら解凍
$ clamscan -i suspicious.exe # 簡易 AV スキャン
# Sandbox 提出 (VirusTotal は CLI 可)
$ curl -F "file=@suspicious.exe" -H "x-apikey: YOUR_KEY" \
"https://www.virustotal.com/api/v3/files"解析は隔離された VM (VMware / VirtualBox スナップショット付き) か使い捨てクラウド VM、またはオンライン sandbox (Any.Run) で。ネットワークも切るか、解析用 MITM プロキシ経由に限定するのが基本。本番環境やプライベート PC では絶対に実行しない。
まとめ #
- Trojan は「自己増殖でも脆弱性悪用でもなく、ユーザに自発的に install させる」モデル — 人間心理を最大の脆弱性として狙う
- 現代の特徴は「単独で完結しない」— 多段チェーン、IAB から RaaS までの分業化、供給チェーン、商用スパイウェア — すべて産業化
- 防御は「信用できないコードを実行しない」が根本だが、ユーザに完璧を求めるのは無理 → メールフィルタ + マクロ無効化 + EDR + MFA + バックアップ + パッチ + Allowlisting の多層防御
- 「1 つの層で全部防ぐ」ではなく「Trojan が必ず最初の数層を突破する前提で、後段でどう止めるか」が 2026 年の標準的発想