Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Burp_Suiteで学ぶ_はじめてのハッキング

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for NE株式会社 NE株式会社
June 23, 2026
33

 Burp_Suiteで学ぶ_はじめてのハッキング

Avatar for NE株式会社

NE株式会社

June 23, 2026

Transcript

  1. この会の目的 • 短期目的 ◦ 脆弱性に関する知識レベルを底上げし、日常実務で活かすこと ◦ インシデント発生時や脆弱性発見時の対応力強化 • 長期目的 ◦

    セキュリティ意識の向上、リスクを未然に防ぐ文化の醸成 ◦ 最新の脆弱性動向のキャッチアップ ▪ CVE、OWASPのTOP10など
  2. 本日のアジェンダ (計90分) 1. Burp Suiteについて 2. 攻撃シナリオ①:4バイト文字による認証バイパス 3. 攻撃シナリオ②:brute force

    attack 4. 攻撃シナリオ③:IDOR 5. 攻撃シナリオ④:RCE(任意コード実行) 6. 脆弱性を発見するために
  3. • Burp Suite Community Edition のインストール ◦ https://portswigger.net/burp/communitydownload • 模擬環境のcloneと、docker-compose

    up ◦ https://github.com/ne-develop/security_workshop ▪ 上記をcloneした後、docker-compose up -dを実行 事前準備
  4. • ペネトレーションテスト (侵入テスト) のためのツール ◦ PortSwiggerが提供 • Community Edition ◦

    無料版、機能制限あり • Professional Edition ◦ 有料版、豊富な機能追加 Burp Suiteとは
  5. flag一覧 [flag1] adminユーザーが2026-02-21 09:58:07に作成したTODOのタイトルを取得せよ。 [flag2] yudaiのログインパスワードを特定せよ。 [flag3] 「保守担当 : A」が2026-02-25

    15:12:03に作成したTODOのタイトルを取得せよ。 [flag4] DBのrootユーザーのパスワードを特定せよ。 各攻撃ごとに、flagを回答できるタイミングになったらお知らせします!
  6. $user_name = $_POST["user_name"]; if(isExists($user_name)) { return "すでに存在するユーザーです"; } $result =

    $this->register($user_name); "admin"は存在するが "admin😃"は存在しないので 存在判定をすり抜ける
  7. $user_name = $_POST["user_name"]; if(isExists($user_name)) { return "すでに存在するユーザーです"; } $result =

    $this->register($user_name); "admin😃"を 登録しようとするが 切り落とされて "admin"になる
  8. 攻撃シナリオ 2 : パスワード破り (brute force attack) 参考文献: OWASP TOP10:2025/A07:2025

    Authentication Failures  A07:2025 Authentication Failures CWE-521: Weak Password Requirements  https://cwe.mitre.org/data/definitions/521.html 日経 X Tech: 危険なパスワードのランキングから分かる弱さの共通点、強固でも使い回しは避けよう  https://xtech.nikkei.com/atcl/nxt/column/18/02676/120500016/
  9. • 苗字+アカウントを作った年月 ◦ suzuki2026、tanaka25、kobayashi202603 など • 名前+誕生日 ◦ taro1225、hanako1010、jiro33 など

    • 苗字+覚えやすい数字 ◦ suzuki123、tanaka555、kobayashi5525 など • 人気なローマ字英語 ◦ sakura、tokyo、yokohama、pokemon、mario、onepiece など 日本語話者に多いパスワード
  10. • 電話番号 ◦ 0311112222 など • 郵便番号 ◦ 2220000 など

    • 車のナンバー ◦ 1234、yokohama-1234 など → 秘密ではない、誰でも知り得る情報をパスワードにするパターン その他よくあるパスワード
  11. 攻撃シナリオ 3 : 権限すり抜け (IDOR) 参考文献: OWASP TOP10:2025 / A01:2025

    Broken Access Control: https://owasp.org/Top10/2025/A01_2025-Broken_Access_Control/
  12. 攻撃シナリオ 4 : RCE (任意コード実行 ) 参考文献: PortSwigger WEB Security

    - Academy Lab: Web shell upload via extension blacklist bypassを改編 https://portswigger.net/web-security/file-upload/lab-file-upload-web-shell-upload-via-extension-blacklist-bypass
  13. • ヒント1 ◦ todo_id = 15 の投稿を見てみる • ヒント2 ◦

    <?php var_dump(getenv()); ?>をtest.phpとして保存し、 アップロードしてから「開く」を押す • ヒント3 ◦ rootユーザーのパスワードのキーは「DB_ROOT_PASSWORD」 flag4のヒント
  14. flagの回答 • flag1 ◦ パスワードポリシー厳しくしたらクレームが来たので、緩める • flag2 ◦ sunshine •

    flag3 ◦ public/files/todosに変なphpファイルあったけど削除した(誰かテスト した?) • flag4 ◦ xQ3GL4A+9d+z4kUBJQxLDcEih65BuBJyGaXB+ZMj1wA=