Black Hat USA 2019 / DEF CON 27に参加してきました -Black Hat編-

技術開発部セキュリティユニットの星野です。

前回の「Black Hat USA 2019 / DEF CON 27に参加してきました」では、それぞれのイベントの概要とおすすめの歩き方についてご紹介しました。 今回は、そのうちBlack Hat USA 2019の詳細な内容についてご紹介します。

前回も述べたとおり、Black Hatの中で行われるイベントは主にトレーニング、ブリーフィング、ビジネスホールの3つがあります。その3つのうち、私が参加したトレーニングの内容と、聴講したブリーフィングの一部をご紹介します。

トレーニング内容の紹介

私は、 “Advarsary Tactics: Red Team Ops” という4日間のトレーニングを受講しました。 https://www.blackhat.com/us-19/training/schedule/#adversary-tactics---red-team-ops-14189

このトレーニングは主に座学と実践という二つの内容で構成されています。座学では、Red Team1のための「インフラ構築」「攻撃テクニック」「ツールやPost-Exploitフレームワークの活用方法」等を学びます。実践では、ラボ環境に模擬的な企業の環境が用意されており、座学で学んだ内容を元にRed Team活動、つまりは攻撃を行います。

ラボへの攻撃に関してはチーム戦でした。同じ卓に座った受講者がチームとなり、攻略したホスト、奪ったクレデンシャルなどに応じて得点が得られる、いわゆるCTFのような競技形式になっていました。言い換えると、ラボ環境はチームで共通のものを使用する形式となっていました。これはRed “Team”であることを意識した計らいであると考えられます。

ここからはトレーニングのポイントをいくつかご紹介します。

熟練のトレーナー・スタッフ

このトレーニングでは、かなり専門的な内容を学ぶことができます。それもそのはず、このトレーニングを提供するSpectreOpsという組織には、数ある有名なRed Team向けOSS・ツール・ライブラリの開発に関わった人が多数在籍しているのです。PowerPick、PowerShell Empire、BloodHoundなどのツールを聞いたことがある人は多いのではないでしょうか。このトレーニングでは、長年に渡りRed Team的なセキュリティ業務に携わってきたトレーナーが直々にそのノウハウを教えてくれるわけです。

熟練の受講者???

トレーニングの内容、トレーナーのキャリアもさることながら、特筆すべきはその受講者たちです。「あなたは本当にこのトレーニングを受ける必要があるのですか?」、そんな”熟練の受講者”が散見されました。

実は、座学と実践は、交互ではなく同時に進行していました。どういうことかと言うと、座学を聞く必要が無いと判断した受講者は、次々にラボ環境へ攻撃をして良いことになっていたのです。実際、私の隣に座っていたチームメンバーは、トレーニング開始と同時に攻撃を仕掛けていました。彼こそが熟練の受講者です。私が攻撃を始める頃には、彼がラボ環境で暴れまわっており、そこには最初は存在しなかったであろう端末・クレデンシャル情報が無数に列挙されていました。もはや初期状態がわかりません。その侵入の速さに絶句していたのも束の間、「君のために権限昇格したコネクションを用意しておいたよ」と今後の人生で言われることのないであろう言葉をかけられ、どこからツッコめば良いかわからない状況でした。聞いたところによると、彼はRed Team的な業務に長年携わっており、今回使用したツールの利用にもかなり長けていたようです。

洗練されたラボ環境・監視システム

トレーニングのRed Team活動では、主としてCobalt Strikeというツールを使いました。Cobalt Strikeは、多機能な有償のペネトレーションテストツールです。PsExecやWMI2を使ったリモートでのペイロード実行や、PowerShell.exeを使わないPowerShellスクリプト実行(いわゆるPowerShell without PowerShell)の機能を有しています。PowerUp, PowerSploit, PowerViewなどのライブラリをインポートし、それらのコマンドレットを感染端末上で使うこともできます。侵入した端末をビジュアライズしたり、抜き取ったクレデンシャルなどの情報をリスト化するような機能もあります。これらの機能を使い、脆弱なサービス設定を悪用した権限昇格、SYSTEM権限でクレデンシャルダンプ、そのクレデンシャルを使い横展開、ドメイン管理者の特定、ドメイン管理者が利用している端末の特定、キーロガーによるドメイン管理者のクレデンシャル窃取、DCへのログイン、などのように攻撃を進めていきました(あくまで一例で、いくつかの侵入経路が存在します)。ここまでのラボ環境の構築だけでもかなり大変だと思うのですが、さらに倍ほどの端末が用意されており、非常に洗練して作られた模擬企業だったと言えます。

もう一つ目を見張る点は、お手製の監視システムです。運営側が用意した監視システムが、各チームの攻撃を監視していました。攻撃したことがバレやすい、イケてない攻撃をすると、以降の攻撃が成功しなかったり、その旨がチャットで通知されたりします。ただ攻撃させるだけではなく、隠蔽の必要性も考慮したラボ環境を用意している点はこのトレーニングならでは、だと感じました。

残念ながら最深部まで侵入を進めることはできませんでしたが、よくできたラボ環境で有償ツールを用いた攻撃を試行することができるこのトレーニングは、非常に価値のあるものだったと感じています。

ブリーフィングの紹介

ブリーフィングは、講演のことです。なお、Black Hatの講演で使われたスライドは一部を除いてBlack Hat公式サイトの各講演詳細ページにアップロードされています。

MITRE ATT&CK: The Play at Home Edition

https://www.blackhat.com/us-19/briefings/schedule/index.html#mitre-attck-the-play-at-home-edition-15035

MITRE ATT&CK自体の活用方法にフォーカスした唯一の講演だったと思います。ATT&CKを組織で活用する術をストーリー仕立てで説明するといった内容でした。この講演のポイントは2点あり、一つは企業・チームが抱えているであろう問題点とATT&CKの効果が分かりやすく説明されている点です。もう一点は、解決にあたり使用できる・参考にできる、ATT&CKに関連するツールやブログ等の情報源が紹介されている点です。脅威から組織を防御するためには、新しい脅威を見逃さないための継続的な対応が必須であることを主張し、そのための考え方や活用できるツールについて説明していました。

(出典:http://i.blackhat.com/USA-19/Wednesday/us-19-Nickels-MITRE-ATTACK-The-Play-At-Home-Edition.pdf

Fantastic Red-Team Attacks and How to Find Them

https://www.blackhat.com/us-19/briefings/schedule/#fantastic-red-team-attacks-and-how-to-find-them-16540

Atomic-Red-TeamとEQLという二つのツールについて、それぞれの開発者がその活用方法を紹介しています。Atomic-Red-TeamはRed Team的な侵入テスト用のOSSで、MITRE ATT&CKで定義されるテクニックベースでシンプルに攻撃を自動化することができます。EQLはsysmonのログ等のイベントの検索を行うためのPython実装のツールです。この講演では、Atomic-Red-Teamを使った攻撃をEQLを使ってログの中から見つけ出すためのノウハウを、デモや実際のログを見せながら解説していました。攻撃と防御双方のノウハウを説明しているわけです。これは筆者の意見ですが、どちらか一方が欠けてしまうとそれぞれの結果を評価できなくなりますので、この観点は大切だと思います。

Black HatのKeynoteで、自分の解析能力を何倍にも高める梃子となるツールを持つことが重要であるといった話がありました。筆者もこの考えに同感で、この講演で紹介されたものに限らず、セキュリティチームとして流行りのツールやOSSをウォッチすることは非常に重要だと思います。

(出典:http://i.blackhat.com/USA-19/Thursday/us-19-Smith-Fantastic-Red-Team-Attacks-And-How-To-Find-Them.pdf

Dragonblood: Attacking the Dragonfly Handshake of WPA3

https://www.blackhat.com/us-19/briefings/schedule/#dragonblood-attacking-the-dragonfly-handshake-of-wpa-15991

Dragonflyと呼ばれる、WPA3のハンドシェイク方式に関する脆弱性の話題です。いくつか問題点はあるようですが、中でもハンドシェイク時のパスワード生成アルゴリズムへのサイドチャネル攻撃の説明が非常に分かりやすく印象に残っています。パスワード生成時に特定の値が取れるまでiterationする部分がありますが、その値の計算に任意に変えられる値が使われているため、様々な値を取らせた状態でiterationの処理時間を計測してサイドチャネル攻撃を仕掛けることができます。ちなみに、講演者はもちろんDragonbloodを発見した研究者本人です。また、WPA2の脆弱性であるKRACKsを発見した研究者でもあります。そのご本人に直接お目にかかれるのも、講演に参加する大きなメリットと言えるかもしれません。

(出典:http://i.blackhat.com/USA-19/Wednesday/us-19-Vanhoef-Dragonblood-Attacking-The-Dragonfly-Handshake-Of-WPA3.pdf

まとめ

星野が参加したトレーニングの内容と聴講したブリーフィングの内容についてご紹介しました。

トレーニングについては、他のメンバーが参加したトレーニングも面白そうなものばかりでした。非常にクオリティが高いです。今年は各トレーニングにSKILL LEVELというのも示されていたので、来年のトレーニングの参加を検討している方はそれを参考にするのが良いかもしれません。

ブリーフィングについては、他にも数え切れない程の講演がありました。興味が湧いた方は是非公開されている発表資料をご覧いただくか、来年のBlack Hatへの参加を検討してみると良いと思います。

次回はBlack Hatとはまた一風変わった、DEF CONに関する内容を、同じチームの後藤より紹介いたします。


  1. 実際の攻撃と同等の手法で攻撃シミュレーションを企業・組織に行うことで、それらの実施しているセキュリティ対策が正しく機能しているかを評価することを目的としたチーム。
  2. いずれもMicrosoft正規のツール・技術である。リモート端末でプログラムを実行する機能を有しており、攻撃者が悪用することが知られている。
© NTT Communications Corporation 2014