NIKKEI TECHNOLOGY AND CAREER

Security-JAWS 第30回 [Security-JAWS DAYS] Day1 参加記とパーカーの裏

セキュリティエンジニアの藤田です。普段はプロダクトセキュリティチームのリーダーとしてプロダクトセキュリティ向上のための企画や推進を担当しています。

2023 年 8 月 26 日(土)に開催された Security-JAWS #30[Security-JAWS DAYS]イベントへの参加記です。

本イベントは Security-JAWS の 30 回目を記念して 2 日間連続で開催され、Day1 はカンファレンスデイ、Day2 は CTF デイとして開催されました。

私にとって Security-JAWS のリアルイベントは初参加でした。得られるものが多くとてもいい体験となりましたのでその共有のためのブログ投稿となります。また、パーカーの裏に書かれた謎を解いたことで景品をゲットすることができましたのでその Writeup も書きたいと思います。本当は CTF デイも参加したかったのですが、都合が合わず Day1 のみの参加となりました。

イベント関連のリンクはこちらです。

Security-JAWS との出会い

Security-JAWS とは

コミュニティ公式ページから引用すると以下のように解説されています。

Security-JAWS の目的

Amazon Web Services(以下AWS)を活用する上でセキュリティは重要な要素となります。Security-JAWSでは、攻撃、監査、認証など、様々な分野のスペシャリスト達が、どのようにしてAWSを活用しているのか情報を共有し、より一層AWSを安全に使えるようにしていくことを目的としています。

Security-JAWS コミュニティ紹介ページより引用

イベント参加のきっかけ

昨年、社員研修の一環でラスベガスで開催された AWS 最大のカンファレンス AWS re:Invent 2022 に参加しました。

AWS re:Invent 2022 の会場では、数々のセッションやハンズオンワークショップが行われ、クラウド技術の最新動向やベストプラクティスについての情報が提供されました。私は特に、セキュリティに焦点を当てたセッションを多く受講しました。また、多くの AWS 界隈の方とも挨拶し、様々なコミュニティ活動があることを知りました。

その中で、Security-JAWS を運営されている吉江さん(@Typhon666_death)を始めとした多くのコミュニティメンバーと出会いました。このコミュニティは、AWS を利用しているプロフェッショナルがセキュリティに関する知識や経験を共有し、お互いのスキル向上を図る場となっています。コミュニティ活動に参加することで、実際の運用における課題や解決策、新たなセキュリティ脅威に対する対策などを学び、自身のプロダクトセキュリティの取り組みにも活かせるようになることが期待できます。また、実際の運用事例を聞くことで、理論だけでなく実務に即した知見を得ることもできます。

コミュニティ活動に参加する際には自身の経験や知識をアウトプットすることもまた大切だと言われており、自身が持つ知見やチームの取り組みは、自分にとって当たり前のことでも他の参加者にとっても価値がある情報となるかもしれません。

というわけで少しでもアウトプットしようと思い、本ブログ投稿に至りました。

カンファレンスデイ

より詳しい参加レポート1がすでにクラスメソッドさんから公開されていますので、本投稿では特に印象に残ったセッションを簡単にご紹介します。

どのセッションも発表の裏では根気が必要なものばかりで、取り組みの成果をこうしたコミュニティの場で共有していただけることは本当にありがたいです。

前説

  • 2006 年 5 月の初開催から 7 年間で 30 回目の開催
  • オンサイトは 3 年半ぶり
  • コミュニティ参加者は 4000 人突破:https://s-jaws.doorkeeper.jp/

印象に残ったセッション

Session2: 探せぇ!お薦めAWSセキュリティワークショップ!! 〜 怒涛のワークショップ48連戦 〜

登壇者の鈴木さんはセキュリティ系 48 個全てのセッションを受講したそうで、特に良かったものをランキング形式でご紹介いただきました。

AWS セキュリティについて学びたいけど、どこから手をつければ良いわからない方にとってとても有益な体験の共有だと感じました。私も順番に受講してみたいと思います。

Session3: ECS on Fargate のセキュリティ対策は何をやるべき?開発者目線で考える

NIST SP800-190(Application Container Security Guide)を全員が全文読むと大変だから、という理由で全体を読み込んだ上で要点を絞って対策を解説していただきました。

NIST SP800 はコンテナセキュリティに限らず多くの資料が公開されているため全て読むのは確かに大変…。コンテナセキュリティ強化の検討の際に積極的に参照していきたいと思います。

また、登壇直後にはブログが投稿2されている迅速さ、さすがです!

Session11: AWSのセキュリティ管理をPolicy as Codeで加速する ― 最高のCSPM体験を目指して

クラウドセキュリティにおいて「自社に不要な項目がある」「自社には項目不足/固有の検査を足したい」といった課題が共感できました。また、偶然にも登壇の 3 日前にローンチされたばかりの CSPM3の SaaS「Shisho Cloud」4には業界標準のプリセットが用意されており、Policy as Code を実践できるプロダクトとの紹介もありました。

パーカーの裏の謎(CTF 風のなにか)

パーカーの裏の謎とは

きっかけはこちらの 8 月 8 日のポスト(旧ツイート)です。 ちょうど現地参加を申し込んだ後にポストを見つけ、解くと記念パーカーが貰えそうな雰囲気も出ていたのでチャレンジしてみることにしました。

他にもチャレンジした人がいたのかは知りませんが…、冒頭に書いたとおり無事景品を頂くことができました。

背中に何が描かれていたのかは、イベント後にポストされたこちらの写真から確認することができます。

Writeup

Writeup の公表を快諾いただきましたので書いていきたいと思います。

まず会場で来場者への案内をしているけーにーさん(@ke_ni_)を見つけ出し、頼んで背中の写真を撮影させていただきました。 突然「背中の写真を撮影させてください」と伝える HUMINT5の難しさが一番の難関でした。

実行されているコマンドは何か?

上位ポストのとおり背中を見ると、以下の curl コマンドと共に JSON の応答があったことを示しています。

curl http://169.254.169.254/latest/meta-data/iam/security-credentials/securityjaws

解法には関係ないのですが、一応解説してみます。

パス文字列解説
http://169.254.169.254/latest/meta-dataクラウド上のインスタンスに関連するメタデータを取得する事ができます。IMDS6 と呼ばれます。
/iam/security-credentials/インスタンスメタデータからのセキュリティ認証情報を取得するためのパスです。
securityjawsIAM ロールの名称(固有名詞)です。

つまり、このコマンドは起動中の EC2 上インスタンスで実行されたコマンドで、securityjaws という名称の IAM ロールがもつ認証情報を取得したものだと理解することができます。

ちなみに、IMDS には IMDSv1 と IMDSv2 がありますが、IMDSv2 ではリクエストにトークンを含める必要があるため、このコマンドは IMDSv1 で実行されていたことがわかります。

応答結果のそれぞれの属性については、AWS 公式ドキュメント7をご参照いただければと思いますが、いくつかの属性がエンコードされているようで怪しかったため調べてみました。

SecretAccessKey

末尾が==でパディングされているなど、ぱっと見で Base64 の特徴を有しており、文字数も少ないため手打ちしました。

QW1hem9uIEd1YXJkRHV0eSBpcyBteSB3aWZlLg==

Base64 デコードでは、イギリスの政府通信本部(GCHQ)が公開している The Cyber Swiss Army Knife こと「CyberChef8」を活用していきます。 エンコード、デコードだけでなく様々な文字列処理、バイナリ処理ができるため使い方を覚えておくと便利です。

Base64 デコードすると、以下のメッセージが表示されました。

Amazon GuardDuty is my wife.

secretaccesskey

と、いうわけで上記メッセージを運営に伝えたところ「正解!でもまだメッセージがあるからよろしくねっ!」とのことで Try harder.です

Token

もしかしてこっちもか…と思いながら後半の長い Token も目を皿にしながら手打ちすることに。

効率化のため iPhone の OCR(光学的文字認識)を使ってみましたが、フォントの特性からゼロとオーとの違いや、小エルと大アイ、小アイと小ジェイの違いなど、じっくり見ないと判別できない文字が多かったため、結局すべて手打ちしました。

token

SecretAccessKey のときのように ASCII 文字で表示されませんでした。 このようなときに CyberChef で活用できるのが、BruteForce シリーズです。 XOR 暗号化や、エンコード文字列の文字コードを特定したい場合に総当たりで試行できるため便利です。

bruteforce

Text Encoding Brute Force で確認したところ、UTF-8 でデコードしたときに以下の文字列が表示されました。 (一部、楦などの少し違う漢字が紛れているのでおそらくどこかで文字を打ち間違えているのかもしれませんがそこはご愛嬌ということで…)

ubw

赤い荒野を彷彿とさせる詞ですね。

なお、この Token は実際の認証情報として使用することはできません。

回答を運営に伝えたところ正解認定していただき、無事パーカーを受け取ることができました。

終わりに

感想

Security-JAWS カンファレンスでは、登壇者の皆様が実務を通じて得た知見を披露していただき、新たな洞察を得ることができました。日々のクラウドスキルアップや業務で活用する際に改めて見直して参考にしていきたいと思います。 また、カンファレンス後の懇親会にも参加させていただき、事業会社のセキュリティ担当の方からセキュリティ系 SaaS のスタートアップの方に至るまで、幅広いセキュリティ界隈の方との会話を通じて新たなつながりを得ることもできました。

コミュニティ活動では、勉強会に参加してインプットするだけでなく、新たに得た知見をアウトプットすることが大事だということを改めて強く感じましたので、自身でできる範囲で積極的にアウトプットしていこうと思います。

イベント告知

ここまでお読みいただきありがとうございました。

日本経済新聞社は、「考え、伝える。より自由で豊かな世界のために。」というパーパスのもと、エンジニアが情報発信することにも力を入れています。

日経のエンジニア組織が主催する勉強会、【NIKKEI Tech Talk】の第 12 回目(10 月 19 日開催)は、プロダクトセキュリティ会です。

本勉強会では、プロダクトセキュリティチームでの経験を通じて学んだことを共有します。具体的には、開発チームと連携して行う DevSecOps やシフトレフトなどのプロダクトセキュリティの取り組みや、新卒エンジニアから管理職まで幅広い層に向けたセキュリティ啓蒙活動や教育活動についてお話しします。

これらの活動を支えてくださった Flatt Security さま、IssueHunt さまにも登壇いただき、私たちがどのようにプロダクトセキュリティの民主化を図っているかを紹介します。 また、後半では、プロダクトセキュリティの推進に取り組む 3 人のメンバーが一堂に会し、パネルディスカッションを行います。それぞれの視点からプロダクトセキュリティの普及活動について話し合い、共通点や違いなどを深く掘り下げていきます。

https://nikkei.connpass.com/event/294774/

もしご興味がありましたら、オンラインで参加できますのでお気軽にご視聴下さい。

仲間募集

テクノロジーメディアを目指す日本経済新聞社ではデジタルサービスにおけるセキュリティを重視しており、クラウドセキュリティを始め最新のセキュリティ技術に興味のあるエンジニアを随時募集しております。一緒にメディアの未来を作る仕事に興味のある方は、ぜひお気軽にご連絡ください。

日経のデジタルサービスを支える<セキュリティエンジニア>の募集ページはこちら。

https://herp.careers/v1/nikkei/vylwWfvk8ir-

業務内容を詳しく知りたい方は、カジュアル面談をお申し込みいただくこともできます。


  1. [レポート]Security-JAWS DAYS Day1 に参加しました #secjaws #secjaws30 #jawsug #secjawsdays:https://dev.classmethod.jp/articles/2023-security-jaws-days-day1/
  2. Security-JAWS DAYS に「ECS on Fargate のセキュリティ対策は何をやるべき? 開発者目線で考える」というタイトルで登壇しました #secjaws #secjawsdays:https://dev.classmethod.jp/articles/security-for-ecs-on-fargate-secjawsdays/
  3. CSPM:Cloud Security Posture Management
  4. Shisho Cloud:https://shisho.dev/
  5. HUMINT:HUMAN INTELLIGENCE:人からの聴取や接触を通じて情報を得るための活動。 https://ja.wikipedia.org/wiki/%E3%83%92%E3%83%A5%E3%83%BC%E3%83%9F%E3%83%B3%E3%83%88
  6. IMDS はインスタンスメタデータサービスの略: https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/WindowsGuide/instancedata-data-retrieval.html
  7. Amazon EC2 の IAM ロール: https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html
  8. CyberChef:https://gchq.github.io/CyberChef/
藤田尚宏
SECURITY ENGINEER藤田尚宏

Entry

各種エントリーはこちらから

キャリア採用
Entry
新卒採用
Entry
カジュアル面談
Entry