Trojan Horse (トロイの木馬) #
Trojan horse (トロイの木馬) は 「正規ソフトウェアに偽装し、ユーザに自発的に実行させる」マルウェア の総称。ホメロス『イリアス』 に出てくる「巨大な木馬の中に兵士を隠し、敵の城内に運び込ませた」ギリシャ神話のエピソードから命名されている。「敵自身に城門を開けさせる」という発想がそのまま、「ユーザ自身に install ボタンを押させる」攻撃モデルに対応する。
ウイルス (Virus) やワーム (Worm) のように 自己増殖する わけでも、未パッチの脆弱性を必要とする わけでもないため、コードに 1 つのバグもない完全なシステムでも感染が成立する。**最初の一歩は常に「ユーザの判断ミス」**であり、これが Trojan を 30 年以上にわたって主要な攻撃面にしている本質である。
本稿は 「Trojan が Virus / Worm / Ransomware / RAT 等とどう関係しているか」 を 1 枚で整理し、現代の Trojan の機能別サブ分類、配送から目的達成までの攻撃チェーン (MITRE ATT&CK 縮図) をもう 1 枚で展開し、持続化 / 検出回避 / 代表事件 / Malware-as-a-Service エコシステム / 防御 までを扱う。「Trojan は古い概念だが、2026 年現代の攻撃の入口は依然 Trojan が圧倒的に多い」 — この事実を踏まえた地図を頭に入れることが目標。
1. マルウェアの分類における Trojan の位置 #
「ウイルス」「マルウェア」「Trojan」「ランサムウェア」を全部同じ意味で使っているニュース記事は多いが、技術的には機能と性質で明確な区別がある。1 つのマルウェアが複数のカテゴリに同時に当てはまることもある (例: WannaCry = Worm + Ransomware) ため、**「分類の地図」**を持っておくと整理が楽。
ポイント:
- Virus と Worm と Trojan は「拡散方法」の分類。何を運ぶか (Ransomware / Stealer / RAT) と は独立した軸。「WannaCry はランサムウェアでありワーム」「Emotet はトロイの木馬であり Banking Trojan であり Botnet client であり Loader」のように多重に当てはまるのが普通。
- **Trojan は「自己増殖しない」**点で Virus / Worm と違う。配信は人間が起点 (フィッシング、海賊版 DL、偽広告) となる。
- Backdoor (RAT) は「Trojan 経由で侵入された後、攻撃者が遠隔操作する」インタフェース部分。Cobalt Strike (本来は商用ペンテストツール) が犯罪者の標準ツールになっている事実は、業界の闇。
- Rootkit は「他のマルウェアを見えなくする」隠匿層。Trojan 自身が rootkit を兼ねていることもある。
2. Trojan の現代的な機能別サブ分類 #
Trojan の機能をより細かく分類すると、犯罪者の経済的目的ごとに分かれる:
| サブ分類 | 何を狙う | 代表ファミリー |
|---|---|---|
| Banking Trojan | オンラインバンキング認証情報、二段階認証コード、口座送金 | 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 (Remote Access Trojan) | 完全な遠隔制御 (画面/カメラ/マイク/ファイル/コマンド実行) | Cobalt Strike, Sliver, NjRAT, Quasar, Remcos, AsyncRAT |
| Dropper / Downloader | 第 1 段ペイロード — 後続の Trojan を呼び込む | Emotet (現代の最大), BumbleBee, GootLoader, IcedID, SocGholish |
| Cryptominer | CPU / GPU で Monero 等を採掘 (電気代と発熱を被害者に転嫁) | XMRig (オープンソースを悪用), Lemon Duck |
| Botnet client | 大量感染 → DDoS や spam 配信 や stealer 配布の足場 | Mirai (IoT), Necurs, Emotet, Mozi |
| Spyware (国家系) | 高価値ターゲット (記者・活動家・政治家) の継続監視 | Pegasus (NSO Group), FinFisher, Predator (Intellexa) |
「現代の Trojan は単機能でなくモジュラ」 — Emotet が初期侵入し、Trickbot を呼び込み、Trickbot が BloodHound で AD を偵察し、最後に Ryuk / Conti で暗号化、という多段攻撃チェーンが標準。Initial Access Broker (IAB) という、「初期侵入だけ専門に売る」業者まで存在する分業化が進んでいる。
3. 配送経路 — 2026 年の現実 #
Trojan がユーザの PC に届くまでの経路は、過去 10 年でかなり変化した。Office マクロ封印 (Microsoft 2022) や OS 側のセキュリティ強化 で、昔ながらの方法が通じなくなったぶん、新しい配送形態が次々現れている:
- フィッシングメールの添付 — 依然として圧倒的トップ。
.docm(マクロ付き Word) はマクロ封印で衰退、代わりに.iso/.lnk/.one(OneNote) /.svg/.htmlsmuggling が流行 - HTML smuggling — メール本文の HTML がブラウザで JavaScript で zip を組み立てる。EDR がファイル添付として検出できない
- Malvertising (悪意ある広告) — 検索結果上部の有料広告で 「正規ソフト ダウンロード」 を装う (実例: PuTTY, Notion, OBS, VS Code)。Google Ads がしばしばクリーンアップに失敗する古典的問題
- 海賊版・クラックソフト — Adobe / Office / ゲームの crack に Trojan が同梱される。「無料で手に入る何か」には常にリスク
- ソーシャルエンジニアリング電話 (Vishing) — 「IT サポートです、PC が乗っ取られています、このリンクからツールを入れて」。AnyDesk / TeamViewer 系の正規ツールを攻撃者が遠隔操作で使う
- USB ドロップ — 駐車場に「経理 2026」と書かれた USB を 100 個撒く古典手法。今でも企業ターゲットで成功する
- Drive-by download — ブラウザ脆弱性を踏み台に訪問するだけで感染。Chrome/Firefox/Edge の sandbox により困難になっているがゼロデイで成立
- 供給チェーン (Supply Chain) — 正規ソフトのアップデート機構を汚染 して全顧客に配布。SolarWinds Sunburst (2020) / 3CX (2023) / XZ utils backdoor (2024) が代表
- Living off Trusted Sites — GitHub / Discord / Telegram / Cloudflare R2 / AWS S3 をマルウェア配布や C2 通信に流用。「まさかこんな大手サービスが」が攻撃者の盾になる
4. 攻撃チェーン — 初期侵入から目的達成まで #
Trojan の動きを MITRE ATT&CK の Tactics 順 に追うと、**「クリックから ransomware 起動まで」**の道筋が見える。Lockheed Martin の Cyber Kill Chain とも対応する。
このチェーンのどこか 1 段で止められれば被害は最小化できる:
- 段階 ①〜② で止める = メールフィルタ / マクロ無効化 / 海賊版禁止 / Application Allowlisting (一番効果的)
- 段階 ③〜⑤ で止める = EDR の挙動検知 / プロキシでの C2 ドメイン遮断 (現代の主戦場)
- 段階 ⑥〜⑨ で止める = LSASS 保護 / ネットワークセグメンテーション / Tier 管理 / honey tokens
- 段階 ⑩ で止める = ほぼ手遅れ。バックアップから復旧が事業継続の最後の砦
5. 持続化と検出回避 — 動き続ける技術 #
マルウェアの最大の課題は「再起動後も生き残る」こと。Windows での持続化 (Persistence) の代表手法:
- Registry Run keys —
HKCU\Software\Microsoft\Windows\CurrentVersion\Runにエントリを書き込む。一番古典的で一番見つかりやすい - Scheduled Task —
schtasks /createでログオン時起動を仕込む - Service —
sc createで Windows サービスとして登録 (system 権限で動く) - 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 / カスタム crypter でコードを暗号化して実行時展開。AV シグネチャを避ける
- Polymorphic / Metamorphic — 感染のたびにコードを変形し、シグネチャが効かなくする
- コード署名証明書の濫用 — 盗んだ正規ベンダーの証明書で署名 (Stuxnet が Realtek / JMicron の証明書を使用)
- Process injection / hollowing — 正規プロセス (
explorer.exe,svchost.exe) の中に自分のコードを注入 - Living off the Land Binaries (LOLBins) —
powershell,mshta,certutil,regsvr32,rundll32,bitsadminなどの正規システムツールでマルウェア相当の動作を実現 (LOLBAS Project が一覧化) - Sandbox 検出 — VM / sandbox の特徴 (低 RAM, sleep を加速, 特定 driver の有無) を見て自己終了
- Sleep / Stalling — 数時間〜数日寝てから動く。短時間しか動かない sandbox 解析を回避
6. 歴史的な代表 Trojan #
| 年 | 名前 | 特徴 |
|---|---|---|
| 1989 | AIDS Trojan (PC Cyborg) | 世界初のランサムウェア。フロッピーで配布、HDD のファイル名を暗号化、$189 の身代金 |
| 1998-1999 | 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 暴露 (Forbidden Stories) | 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 で「契約書テンプレ」を装う JavaScript loader が再増加 |
「Trojan は 35 年で衰えるどころか、年々高度化している」が実情。特に供給チェーン攻撃は防御が極めて困難で、XZ utils 事件 (2024) が**「ほぼ全 Linux に backdoor が入る寸前だった**」事実は業界に衝撃を与えた。
7. Malware-as-a-Service と現代エコシステム #
「単独のハッカーが書いて配る」モデルから、「分業化された商業エコシステム」に進化している。ソフトウェア業界そのもののような構造を持つ:
- 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 損失) はこのモデルから生まれた事件。
8. 防御 — 唯一の根本対策と現実的な多層防御 #
「信用できないコードを実行しない」 が 唯一の根本対策。だが普通のユーザに完璧な判断を求めるのは非現実的なので、多層で防御するのが標準形:
| 層 | 内容 |
|---|---|
| メールフィルタリング | 添付ファイル種別の制限 (.exe .iso .one .lnk .html) / sandbox 検査 / sender 認証 (SPF/DKIM/DMARC) |
| ブラウザ・OS の sandbox | Chrome/Edge の site isolation / Windows Sandbox / macOS Gatekeeper / Linux 普通ユーザ運用 |
| マクロ / scripting 制限 | Office マクロをデフォルト無効化 (Microsoft 2022 で標準) / PowerShell 制限モード / WSH 無効化 |
| EDR (Endpoint Detection and Response) | CrowdStrike Falcon / Microsoft Defender for Endpoint / SentinelOne — 挙動ベースで検知 |
| Application Allowlisting | AppLocker / WDAC / macOS Gatekeeper / Linux SELinux で**「許可リスト以外実行不可」** (最強だが運用重い) |
| 多要素認証 (MFA) | パスワードを盗られても認証は通らない。stealer 被害の影響を限定的に |
| 特権分離 / Just-In-Time admin | 普段は非 admin で運用 / sudo 一時昇格 / Tier 0 アカウントの隔離 |
| ネットワークセグメンテーション | LAN を VLAN で分割 / Zero Trust / マイクロセグメンテーションで lateral movement 抑制 |
| C2 通信ブロック | プロキシで既知の C2 ドメイン遮断 / DNS フィルタ (Quad9, Cloudflare 1.1.1.2) |
| バックアップ + イミュータブル | ransomware 対策の最後の砦。3-2-1 ルール + オフライン or write-once コピー |
| パッチ管理 | exploit 配送経路の閉鎖 (ブラウザ / OS / 業務アプリの自動更新) |
個人ユーザの最低 5 つ: ① メールの添付は基本開かない / ② OS とブラウザの自動更新を ON / ③ MFA を有効化 (Authenticator アプリ) / ④ 海賊版・cracked SW を入れない / ⑤ MS Defender / macOS XProtect / Linux ClamAV を有効に。これだけで 90% の Trojan 攻撃は無力化できる。
9. 解析アプローチ — 怪しいファイルが手元に来たら #
疑わしいファイルを入手したとき (例: 不審な添付メール、共有 PC で見つけた exe) の解析手順:
| 手法 | ツール | 何が分かるか |
|---|---|---|
| オンラインスキャン | 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 (Windows), gdb + pwndbg (Linux), Frida | 実行を一時停止して内部を観察 |
| Yara ルール | yara, YARA-Rules リポジトリ | 既知マルウェアファミリーを照合 |
| MITRE ATT&CK Navigator | navigator | 観測した挙動を ATT&CK Tactics/Techniques に紐付け |
# 最低限の確認シーケンス (Linux ホスト想定)
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 提出 (Any.Run はブラウザから / VirusTotal は CLI 可)
curl -F "file=@suspicious.exe" -H "x-apikey: YOUR_KEY" \
"https://www.virustotal.com/api/v3/files"
絶対に本番環境やプライベート PC では実行しない。隔離された VM (VMware / VirtualBox スナップショット付き) か 使い捨てクラウド VM、または オンライン sandbox (Any.Run) で。ネットワークも切るか、アナライザ用の MITM プロキシ経由に限定するのが基本。
Trojan horse は、**「自己増殖でも脆弱性悪用でもなく、ユーザに自発的に install させる」**という、人間心理を最大の脆弱性として狙うマルウェア配送モデルである。コードがいかに正しくても、暗号がいかに強くても、ユーザが「実行」をクリックすれば終わりという性質が、Trojan を 35 年経っても主要攻撃クラスに留め続けている理由。
現代の特徴は 「単独で完結しない」こと — Emotet → Trickbot → Conti のような多段チェーン、Initial Access Broker から RaaS まで完全に分業化された商業エコシステム、SolarWinds / 3CX / XZ utils のような供給チェーン、Pegasus のような国家系商用スパイウェア — どこを切り取っても産業化している。
防御は 「信用できないコードを実行しない」 が根本だが、普通のユーザに完璧を求めるのは無理なので、メールフィルタ + マクロ無効化 + EDR + MFA + バックアップ + パッチ + Application Allowlisting の多層防御が現実解。「1 つの層で全部防ぐ」考えではなく、「Trojan が必ず最初の数層を突破することを前提に、後の段階でどう止めるか」が 2026 年のセキュリティ設計の標準的な発想である。