MENU

TryHackMe Pyramid of Pain — 学習メモ

目次

はじめに

Pyramid of Painの備忘録。
本記事は学習記録です。演習環境のターゲット名・IP・フラグは公開していません。

Pyramid of Pain

Task 1 Introduction

Pyramid of Pain(ピラミッド・オブ・ペイン)

サイバー脅威ハンティングやインシデント対応で使われる有名な概念図。
下から上にいくほど、攻撃者にとって回避が難しく、防御側にとって価値が高い指標。
IoCの種類ごとに攻撃者への“痛み”の度合いを示すモデル。

Pyramid of Pain
  • ハッシュ値(Hash Values)
    マルウェアファイルのハッシュ(MD5/SHA1など)。
    攻撃者はファイルを少し変更すればハッシュは簡単に変えられるため、防御効果は低い。

  • IPアドレス(IP Addresses)
    攻撃元やC2サーバーのIP。
    攻撃者はプロキシやVPNを変えればすぐ別のIPが使える。

  • ドメイン名(Domain Names)
    マルウェア通信に使われるドメイン。
    取得し直すのに多少コストがかかるが、比較的簡単に回避可能。

  • ネットワーク/ホストアーティファクト(Network/Host Artifacts)
    特徴的な通信パターン、レジストリキー、ファイル名など。
    攻撃者は修正できるが、調整には労力がかかる。

  • ツール(Tools)
    攻撃に使うマルウェアやフレームワーク(例:Mimikatz、Cobalt Strike)。
    独自に開発したツールを封じられると、再開発や入手に時間がかかるため痛手。

  • TTPs(Tactics, Techniques, and Procedures:戦術・技術・手順)
    攻撃者の行動様式そのもの。MITRE ATT&CKで定義されるような「どんな手口で侵入・横展開・窃取するか」という戦略的パターン。
    ここを把握して防御すると、攻撃者は根本的に戦術を変えざるを得ないため、最も「痛い」。

Task 2 Hash Values (Trivial)

ハッシュ検索ツール

  • VIRUSTOTAL
    世界中のセキュリティベンダーの検知結果を集約し、ハッシュ値を入力すると、そのファイルが既知のマルウェアかどうか即座に確認できる。

  • Metadefender Cloud – OPSWAT
    マルチスキャンエンジンを利用し、ファイルの安全性や改ざん有無を検証できる。

セキュリティ研究レポート

  • The DFIR Report
    実際の攻撃事例に基づき、どのようなマルウェアがどの環境で使われたのかを詳細に解説。

  • Trellix Research
    セキュリティベンダーによる最新の脅威動向や解析記事が公開されている。

Task 3 IP Address (Easy)

  • Fast Flux(ファストフラックス)
    サイバー攻撃者がDNSを悪用して、自分たちのサーバ(フィッシングサイト、マルウェア配布サイト、C2サーバなど)を隠したり、耐障害性を高めたりする技術。

Task 4 Domain Names (Simple)

  • Punycode(ピュニコード)攻撃
    国際化ドメイン名(IDN)を悪用したフィッシング攻撃の一種。

    ・Punycodeとは
     ASCIIで記述できないUnicode文字(漢字やキリル文字など非ASCII文字)をASCII互換文字列に変換する方式。

    ・国際化ドメイン名(IDN)とは
     世界中の利用者向けに、漢字・ひらがな・キリル文字(ロシア語)、ギリシャ文字などをドメインに使えるようにした仕組みが 国際化ドメイン名(IDN)。

    ・攻撃の仕組み
     攻撃者は見た目が正規サイトと同じに見えるドメインを登録できる。
     
     例:
     本物: apple.com
     偽サイト: аррӏе.com (キリル文字の「а」「р」「ӏ」「е」を使用)

     人間の目には「apple.com」に見えるが、実際は別のドメイン。
     ブラウザのアドレスバーでは apple.com と表示される場合もあり、ユーザーが気づきにくい。

  • URL短縮サービス
    長いURL(Webアドレス)を短く変換してくれるサービス。
    本当の遷移先が見えないため、フィッシング詐欺やマルウェア配布に悪用されることがある。
    信頼できない短縮URLは直接クリックせず、「プレビュー機能」や展開ツールを使って遷移先を確認すると安全。

    攻撃者は通常、以下のURL短縮サービスを利用して悪意のあるリンクを生成。
    ※Pyramid of Pain Task 4Domain Names (Simple) より引用
  • bit.ly
  • goo.gl
  • ow.ly
  • s.id
  • smarturl.it
  • tiny.pl
  • tinyurl.com
  • x.co

  ・短縮URLサービスの公式プレビュー機能
   TinyURL → https://preview.tinyurl.com/xxxx
   bit.ly → 短縮URLの末尾に「+」を付けるとプレビュー画面が表示されます。
   例: https://bit.ly/3xyzabc に「+」をつけて https://bit.ly/3xyzabc+
  
  ・専用の展開サービス
   CheckShortURL
   Unshorten.me

  • Any.run
    マルウェア解析サンドボックスサービス。
    後述のTask5にてAny.run解析レポートの内容について簡易的に紹介。

Task 5 Host Artifacts (Annoying)

  • Any.run解析レポートの簡易解説

    ・General Info(基本情報)
     サンプルファイル名、ハッシュ値(MD5, SHA1, SHA256)、実行環境などが記載されている。

    ・Behavior Activities(挙動)
     Malicious(悪意あり)、Suspicious(不審)、Info(情報レベル)。

    ・Malware configuration(マルウェアの設定情報)
     マルウェアが内部に持つ設定パラメータ。
     マルウェアの「行動方針」や「攻撃先」「通信手段」などが書かれている。

    ・Static Information(スタティック情報)
     マルウェアファイルそのものを実行せずに解析して得られる基本的な情報。

    ・Video and Screenshots(ビデオとスクリーンショット)
     マルウェアの挙動を記録・可視化した映像と画面キャプチャ。

    ・Processes(プロセス)
     作成・実行されたすべてのプロセスの詳細な動きを可視化。

    ・Registry Activity(レジストリ操作の記録)
     マルウェアがレジストリキーや値を「読み取り・作成・変更・削除」した履歴を時系列で記録。
     永続化(自動起動)・構成変更・痕跡隠蔽・情報収集などの重要な行動の証拠になる。

    ・Files Activity(ファイルの操作履歴)
     マルウェアがどのファイルを作ったか、変更したか、消したかを記録。
     実際に何を「感染先に落とす(ドロップ)」かを確認できる重要な手がかり。

    ・Network Activity(ネットワーク通信の記録)
     マルウェアが外部と通信した IPアドレスやドメイン名、プロトコル、ポート番号などを一覧で表示
     C2サーバー(攻撃者の遠隔操作先)との通信、ファイルダウンロード、情報送信などの証拠を発見できる

    ・Debug output strings
     実行中のマルウェアやプログラムが内部的に出力したデバッグメッセージのログを表示する。

Task 6 Network Artifacts (Annoying)

  • tshark
    コマンドラインのパケット解析ツール。

  • User-Agentの代表例
    IE系: MSIE、Trident
    Chrome系: Chrome/xx
    Firefox系: Firefox/xx
    Safari系: Safari/xxx(ただしChromeにも含まれるので注意)

  • 設問:上記のスクリーンショットに表示されている User-Agent 文字列を使用するブラウザはどれですか? のヒント

    User-Agent 文字列
    Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/7.0; …)

    MSIE 7.0 と書かれている → 「Internet Explorer 7」に見せかけている。
    しかし、Trident/7.0 というIE互換レンダリングエンジンが使われている → これは Internet Explorer 11 が使うエンジン。
    つまり本当は Internet Explorer 11 で、互換モードを示す UA を偽装しているケース。

  • なぜUser-Agentを偽装するのか
    検知回避(evasion technique)のため。

    ・古いInternet Explorer(IE7など)を偽装すると、大量に存在する正常なトラフィックと同じように見えるため、セキュリティ監視の目から隠れやすくなる。

    ・セキュリティ機器は、User-Agent の文字列に応じて検査の深さを変える場合があり、古いブラウザに特化した通信は「既知の安全なもの」として扱われ、詳細な検査をスキップすることがある。

    ・「IE 7.0」など人間が普通に使っていそうなものはホワイトリストに入っているケースもあり、ブロックを回避できる。

Task 7 Tools (Challenging)

  • fuzzy hash
    似ているファイル同士を比較するためのハッシュ技術。
    通常のハッシュ(MD5、SHA256など)では不可能な、「類似度の比較」ができる。

  • SSDEEP
    fuzzy hashの一種。
    ファイルを小さなブロック単位で比較し、類似性に基づくハッシュ(fuzzy hash)を生成。

Task 8 TTPs (Tough)

  • MITRE  ATT&CK
    サイバー攻撃者が現実に使う戦術(Tactics)、技術(Techniques)、手順(Procedures)を体系的にまとめたナレッジベース。

    たとえば、Task5のレポートの場合、MITRE  ATT&CKに照らし合わせると

    – 初期アクセス:T1566.001(スピアフィッシング+添付ファイル)
    – 実行:T1059.001(PowerShell)
    – C2通信:T1071.001(HTTPなど)

    などが該当する。

Task 9 Practical: The Pyramid of Pain

Pyramid of Painの演習問題。
各IoCレベル(ハッシュ値・IPアドレス・ドメインなど)の特徴を理解していれば解答可能。

Task 10 Conclusion

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

勉強中のセキュリティエンジニアです。
初心者の目線で学んだことをまとめています。

コメント

コメントする

CAPTCHA


目次