こんにちは、セキュリティエンジニアの羽田です。 NTT レッドチーム(TeamV)メンバーの谷、藤田とともに、2023年11⽉の CODEBLUE 2023 Bluebox、同年12⽉の Black Hat Europe 2023 Arsenal で、"Power Automate C2: Stealth Living-Off-the-Cloud C2 Framework" というタイトルで疑似攻撃ツール Power Automate C2(以下、PAC2)を発表しました。今回の内容は、以前の記事(Power Automate C2、Power Automate Packing)での検討をツールとして実装したものになります。
この記事では、Black Hat Europe での発表についてレポートいたします。
発表までの経緯
タイトルから想像されるように、Microsoft の自動化プラットフォーム "Power Automate" を悪用してクラウド内で攻撃を完結させる C2 技術を考案しました。これはレッドチームの検証中に発見したコンセプトで、実案件でも採用している手法になりますが、手作業での実行手順が煩雑であったことから自動化に踏み切りました。
Microsoft 365 のネイティブ機能だけを用いてエンドユーザーの気づかないところで攻撃が進行することから、我々はこれを "Living-Off-the-Cloud" と呼んでいます。何かしらの手段でクラウドに侵入されたことが前提になりますが、Power Automate を正しく運用しないことでひそかに攻撃が進行してしまうリスクに警鐘を鳴らすため、今回はこれをレッドチーム向けの検証ツールとして発表いたしました。
ちなみに、全体設計とバックエンドを谷が、フロントエンドを藤田が担当しました。自動化にあたって仕様を詳しく把握する必要がありましたが、このあたりの調査や解析は全員で行いました。PAC2 の機能や仕組み、関連する Power Automate の仕様については、別途本ブログにて詳しく解説する予定です。
発表の様子について
Black Hat Arsenal は自作ツールを共有するための発表の場で、80分といった時間でブースが割り当てられ、インタラクティブに説明します。
発表は初日(12月6日)のトップバッター、つまり Keynote の直後でしたが、我々がブースに到着するとすでに聴講待ちの人だかりができていました。やはりキャッチーなタイトルは聴講者の関心を惹きつけやすいということでしょうか。ブースにはディスプレイとヘッドマイクが用意されており、自分のパソコンをつないで準備しました。
全体を通して聴講者は100名程度で、盛況だったと思います。熱心にメモを取る姿や拍手喝采などの反応があり、我々の成果や Power Automate のデフォルト設定のリスクを十分にアピールできたと考えています。
Power Automate 自体にはあまり馴染みがないという人も多かったのですが、自動化プラットフォームのリスクを注目するきっかけになったという反応もありました。自分は使用していないつもりでも Power Automate 自体が自組織のテナントで有効になっている場合も多くあります。悪用された場合には、エンドポイントやネットワークでの検知も困難であるリスクを意識する必要があります。
また、PAC2 でローコードである Power Automate の自動化フローを GUI からではなく、Python でコードを書いて実装できるようにした点にも反響がありました。一見すると本末転倒でジョークのような機能ではありますが、GUI 上でのフローの実装は大変で、自分自身もコードが書ければ良いのにと思ったことが何度もあり、多くのエンジニアからの共感を得られました。
発表にあたっての工夫
80分の時間の使い方は自由ですが、我々は 20分程度のプレゼンを用意して、何度も繰り返しながら質疑応答をはさむ形式をとりました。常にプレゼンを行い空白の時間をなるべく作らないことが重要です。遠目に見ても何か話したりデモをしていることが分かると足を止めてもらえる可能性が高く、このスタイルは上手くいったと思っています。
さらに集客を高めるための工夫をいくつか行いました。まずは PAC2 のロゴを作成しました。これは開発中に作成したものですが、README やチラシの見栄えも良くなるだけでなく、自分自身のモチベーション向上にもつながりました。C2 ポータルに自作のロゴを掲載するだけでシステムの完成度が高まった気分になりました(笑)。最初はウイルスのイメージから虫を想像していたのですが、Power Automate のロゴを眺めているうちに蝶々のように見えたのでこれをイメージしました。
また、チラシやステッカーを用意して配布することで、通りすがりの人にも足を止めてもらうことができました。Arsenal の規則上、社名やチーム名の入ったグッズは持ち込みが禁止されていますが、ツールに関するものであれば許可されています。チラシの配布枚数から集客数を算出もできました。
ツールのロゴが入ったパーカーを着て発表者としての公式感・統一感を演出しました。ユニクロの UTme というサービスが素晴らしく、イメージデータを店頭に持ち込んでその場で作成できました。
今回ツールの一般公開は間に合わなかったため、チラシにダウンロード用の URL を記載して案内しました。発表スライドの公開も要望される方がいて、今後は発表と同時に公開できると良いと思いました。PAC2 は今後一般公開することを予定していますので、準備ができましたらまた本ブログにて案内したいと思います。
さいごに
発表は初日の午前中に終わったこともあり、この後は他の発表をゆっくりと聴講できました。また、前日の VIP Party にも参加できました。まさに発表者の役得と言えます。
Black Hat Arsenal では、大規模かつロバストなエンタープライズ向けのツールというよりは、たとえ手作り感があっても、アイデアが斬新であったりコンセプトが特徴的であったりなど、今後コミュニティとして育てていきたい、と思ってもらえるようなツールが好まれる傾向にあると感じています。
PAC2 について予定していた機能は一通り実装が完了したので、今後は緩やかにメンテナンスしていくことになると思います。ただ、ローコード・ノーコードのプラットフォームはその機能性と普及率の高さから、まだまだ多くの可能性を秘めていると考えています。今後も案件を通じて、新しいアイデアが出てくるかもしれません。
関連記事
最後に、PAC2 についてまとめていただいた記事と CODE BLUE のインタビューがありますので紹介いたします。このように関心を持っていただくのは嬉しい限りでして、素晴らしい記事を掲載いただきまして本当にありがとうございました。また、見逃している記事がありましたら教えていただけますと幸いです。