ホワイトハッカーの知識
この記事は、「「なりすましサイト」怒りの矛先は正規サイトに?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ステップのプロセスのまとめ
まずは「敵の視点」を知ることから始まります。
ホワイトハッカーとしてセキュリティを守るには、まず「攻撃者の視点」を理解することが欠かせません。攻撃者はただ闇雲に攻撃しているのではなく、計画的に、そして戦略的に攻撃します。
防御の第一歩は、どう攻撃されるかを知ることですね。