ブラックハッカーが思考する11ステップのプロセス
この記事は、「「なりすましサイト」怒りの矛先は正規サイトに?SNSで経営層の好み把握しフィッシング?攻撃者の怪しい動きを「いかに早く掴むか」がカギ」(東洋経済オンライン)の記事の「攻撃者の思考」という画像を参考にして「ブラックハッカーの11ステップの思考プロセス」を説明いたします。。
はじめに
サイバー攻撃は、ちょっと悪戯でするものではありません。
攻撃者は明確な目的を持ち、計画を十二分に立てて攻撃を仕掛けてきます。
ここでは、攻撃者がどのような思考で攻撃を組み立て、どのような対象を狙ってくるのかを、11のステップに沿って説明します。
ホワイトハッカーとして第一歩を踏み出した方にとって、攻撃者の視点を理解することは守る技術の基礎となると考えます。
攻撃者の「思考回路」とは
攻撃者は、常に次のような問より「攻撃方法」を考えています。
・どうすれば成功できるか。
・バレずにやるにはどうすればいいか。
・高度な技術をどこで使うべきか。
こうした情報をもとに、ブラックハッカーはターゲット(人、企業、ネットワーク)を分析し、攻撃シナリオを組み立てていくのですね。
攻撃の11ステップについて
ブラックハッカーは、以下の11のステップに沿って段階的に攻撃します。
1.偵察(Reconnaissance)
まずは相手の情報収集。SNS、Webサイト、ドメイン情報などから、攻撃の糸口を探します。
・目的
対象の情報収集(OSINT)
・主な攻撃ツール
| theHarvester | ドメイン名からメールアドレスやサブドメインを集めるツール。 |
| Recon-ng |
情報収集を自動化するフレームワーク(theHarvesterの上位版)。 |
| Maltego | グラフで情報を可視化する調査ツール(人、企業、ドメインなどの関係を表示)。 |
| Amass | サブドメインなどを調べる強力なOSINTツール。 |
| Shodan | インターネットに接続されている機器を検索する検索エンジン。 |
| Google Dork | 特定の情報を探すための高度なGoogle検索テクニック。 |
2.リソース開発(Resource Development)
攻撃に使うツールやマルウェア、偽装サイト、C2サーバーなどを事前に準備します。
・目的
攻撃用のC2やマルウェアの準備
・主な攻撃ツール
| Metasploit Payloads | 攻撃用プログラム(ペイロード)を生成・管理できる有名なツール。 |
| Cobalt Strike | 高度な攻撃の模擬ツール(本来は赤チーム用だが、悪用もされる)。 |
| MSFVenom |
Metasploitでペイロードを生成する専用ツール。 |
| Empire | PowerShellベースの攻撃ツール。永続化や横展開が可能。 |
| Pupy | クロスプラットフォーム対応のリモート操作ツール(C2機能あり)。 |
3.初期アクセス(Initial Access)
フィッシングや脆弱性の悪用を使って、ターゲットに侵入する“入口”を開きます。
・目的
フィッシング・脆弱性の悪用
・主な攻撃ツール
| SET(Social-Engineer Toolkit) | フィッシングサイトや悪意あるメールを作る社会工学ツール。 |
| Phishery | Word文書を使ったフィッシング攻撃用ツール。 |
| Gophish | フィッシングテストを実施するためのオープンソースのプラットフォーム。 |
| Exploit-DB | 有名な脆弱性情報データベース。攻撃の元ネタを探すのに使う。 |
| Nmap | ポートスキャンやサービス調査ができるネットワーク調査ツール。 |
| Burp Suite | Webアプリの脆弱性を調査するセキュリティテストツール。 |
4.実行(Execution)
侵入後、マルウェアやスクリプトを実行して、内部への足がかりを作ります。
・目的
マルウェアやスクリプトの実行
・主な攻撃ツール
| PowerShell | Windows標準のスクリプト言語。攻撃スクリプトにも使われる。 |
| Python | 多目的なスクリプト言語。攻撃コードの実行や自動化に使われる。 |
| CMD | Windowsのコマンドプロンプト。簡単なコマンド実行に使用。 |
| mshta | HTMLアプリケーションを実行するためのコマンド(悪用されやすい)。 |
| wmic | Windowsのシステム操作コマンド。プロセス実行や情報取得に使われる。 |
| XLS macros | Excelファイルに仕込んだマクロで攻撃コードを実行。 |
5.永続化(Persistence)
再起動しても残るように、システム内に“隠れ家”を設置します(例。バックドア)。
・目的
再起動後も攻撃者が残れるようにする
・主な攻撃ツール
| Empire |
永続化用のスクリプトを多数持つ攻撃ツール。 |
| Metasploit persistence scripts |
Metasploitで作られたバックドア設置用スクリプト。 |
| schtasks | タスクスケジューラで自動実行を設定するコマンド。 |
| registry edits | Windowsのレジストリを書き換えて永続化する手法。 |
6.権限昇格(Privilege Escalation)
ユーザー権限から管理者権限へと昇格し、操作できる範囲を広げます。
・目的
管理者権限を取得
・主な攻撃ツール
| Linux Exploit Suggester | Linuxで使える権限昇格の脆弱性を提案してくれるツール。 |
| WinPEAS/LinPEAS |
Windows/Linuxの調査を自動で行い、権限昇格の手がかりを探すツール。 |
| BeRoot | Windows/Linuxで権限昇格を支援するスクリプト。 |
| Potato系列 | Windowsの権限昇格攻撃に使われるツール群。 |
7.防御回避(Defense Evasion)
ログの削除、プロセス偽装など、検知を逃れるための工夫を行います。
・目的
セキュリティ製品の回避・ログの隠蔽
・主な攻撃ツール
| Veil | セキュリティソフトを回避するためのマルウェアを生成。 |
| Shellter | 実行ファイルをステルスに改造して攻撃コードを仕込む。 |
| obfuscation tools | コードの読みやすさをわざと下げて検知されにくくするツール群。 |
| Process Doppelganging | 正常なプロセスを装って悪意あるコードを実行する手法。 |
| Invoke-Obfuscation | PowerShellコードを難読化して検出を避ける。 |
8.認証情報アクセス(Credential Access)
ID・パスワード・トークンなどを盗み、さらなる侵入を可能にします。
・目的
パスワード・トークンの取得
・主な攻撃ツール
| Mimikatz |
Windowsのパスワードなどの認証情報を抜き取る有名ツール。 |
| LaZagne | ブラウザ・メーラーなどの保存パスワードを自動抽出。 |
| John the Ripper | パスワードのハッシュ値を解析して中身を割り出す。 |
| Hashcat | GPUを使って高速でパスワード解析を行う強力なツール。 |
| Thief | 情報収集用のスティーラーツール。 |
9.探索(Discovery)
ネットワーク内の構成、接続先、サーバーなどを調査します。
・目的
内部ネットワークや資産のスキャン
・主な攻撃ツール
| Netdiscover | ローカルネットワーク内のIPアドレスを発見するツール。 |
| Nmap | 再掲。ネットワークやホストの状況を調査。 |
| BloodHound | Active Directoryの関係性をグラフ化して権限ルートを可視化。 |
| SharpHound | BloodHound用の情報収集スクリプト。 |
| PowerView | PowerShellでAD内の調査を行うツール。 |
| AD Explorer | Active Directoryの構成をGUIで表示するツール。 |
10.水平展開(Lateral Movement)
他の端末やシステムへ移動して、攻撃範囲を拡大します。
・目的
他の端末・サーバーへ横展開
・主な攻撃ツール
| PsExec | Windowsリモートでコマンドを実行できるツール。 |
| WMI | リモート管理用機能(悪用されやすい)。 |
| RDP | Windows標準のリモートデスクトップ接続機能。 |
| Remote PowerShell | ネットワーク越しにPowerShellを使う機能。 |
| Impacket | Python製のライブラリ。認証・横展開・SMB通信などが可能。 |
11.収集・送信(Collection & Exfiltration)
重要データや個人情報を集め、外部へ持ち出します。
・目的
データ収集・持ち出し
・主な攻撃ツール
| Rclone | Google Driveなどにファイルを転送するツール。 |
| FTP/scp | サーバーへのファイル転送プロトコル(古くからある)。 |
| Exfiltration scripts | データをZIP化・暗号化して外部へ送るスクリプト類。 |
| Steghide | 画像や音声にデータを隠す「ステガノグラフィー」ツール。 |
| MegaCMD | Megaクラウドへデータを送るコマンドラインツール。 |
攻撃者が狙う「ポイント」とは
攻撃者がどこに注目しているかを理解することも、防御には欠かせません。
以下は攻撃者が重点的に観察・攻撃するポイントになります。
・モバイル・デバイス。スマホやタブレットは攻撃対象になりやすい。
・ネットワーク。VPNやファイアウォールの設定ミスを狙う。
・セキュリティ侵害。セキュリティ製品の誤設定や弱点を探る。
・サプライヤー企業。本体企業より脆弱な関連会社を踏み台にする。
・エンドポイント。各社員のPC・端末から攻撃を仕掛ける。
・ソーシャルメディア。投稿内容から内部情報や趣味嗜好を収集。
・クラウド。クラウド設定ミスやアクセス権の不備を狙う。
・個人情報の盗取。盗んだ情報を売買したり、二次攻撃に使う。
・幹部の好み。ターゲット型攻撃では好みや性格に合わせて罠を仕掛ける。
・脆弱性。未修正のソフトウェアやOSのバグは格好の的。
ブラックハッカーが思考する11ステップのプロセスのまとめ
まずは「敵の視点」を知ることから始まります。
ホワイトハッカーとしてセキュリティを守るには、まず「攻撃者の視点」を理解することが欠かせません。攻撃者はただ闇雲に攻撃しているのではなく、計画的に、そして戦略的に攻撃します。
防御の第一歩は、どう攻撃されるかを知ることですね。