Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
HTTP通信を書きかえてみよう
Search
Ryusei Ishikawa
October 05, 2023
Technology
0
76
HTTP通信を書きかえてみよう
SECCON Beginners 2023 札幌
Ryusei Ishikawa
October 05, 2023
Tweet
Share
More Decks by Ryusei Ishikawa
See All by Ryusei Ishikawa
“それなりに”安全なWebアプリケーションの作り方
xryuseix
0
500
DIVER OSINT CTF を支える技術 2025
xryuseix
0
100
OSINT CTFの リアル作問環境を体験してみよう!
xryuseix
0
270
OSINT CTFを支える技術
xryuseix
1
870
Webアプリケーションのユーザ入力検証
xryuseix
3
1.3k
Privateリポジトリで 管理しているソースコードを 無料でGitHub Pagesに公開する
xryuseix
0
3.9k
CTFにおけるOSINT問題作問の難しさ
xryuseix
0
790
「Reactはビルド時にコメントが消えるから」と言ってコメントに💩を書いてはいけない
xryuseix
0
1.4k
Other Decks in Technology
See All in Technology
松尾研LLM講座2025 応用編Day3「軽量化」 講義資料
aratako
15
4.9k
旬のブリと旬の技術で楽しむ AI エージェント設計開発レシピ
chack411
1
110
わが10年の叡智をぶつけたカオスなクラウドインフラが、なくなるということ。
sogaoh
PRO
1
260
形式手法特論:コンパイラの「正しさ」は証明できるか? #burikaigi / BuriKaigi 2026
ytaka23
15
4.1k
2025年の医用画像AI/AI×medical_imaging_in_2025_generated_by_AI
tdys13
0
310
ハッカソンから社内プロダクトへ AIエージェント ko☆shi 開発で学んだ4つの重要要素
leveragestech
0
560
「リリースファースト」の実感を届けるには 〜停滞するチームに変化を起こすアプローチ〜 #RSGT2026
kintotechdev
0
580
複雑さを受け入れるか、拒むか? - 事業成長とともに育ったモノリスを前に私が考えたこと #RSGT2026
murabayashi
1
1.3k
ソフトウェアエンジニアとAIエンジニアの役割分担についてのある事例
kworkdev
PRO
1
370
Agentic AIが変革するAWSの開発・運用・セキュリティ ~Frontier Agentsを試してみた~ / Agentic AI transforms AWS development, operations, and security I tried Frontier Agents
yuj1osm
0
210
20251225_たのしい出張報告&IgniteRecap!
ponponmikankan
0
110
ルネサンス開発者を育てる 1on1支援AIエージェント
yusukeshimizu
0
130
Featured
See All Featured
The agentic SEO stack - context over prompts
schlessera
0
580
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
300
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
51k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Code Reviewing Like a Champion
maltzj
527
40k
New Earth Scene 8
popppiees
0
1.3k
Git: the NoSQL Database
bkeepers
PRO
432
66k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
0
1.8k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Transcript
HTTP通信を 書きかえてみよう xryuseix (@ryusei_ishika) SECCON Beginners 2023 札幌
自己紹介 ID: xryuseix (Twitter: @ryusei_ishika) Webセキュリティと開発が好きです。 ctf4b 2023では以下の問題を提供しました。 • shaXXX
• drmsaw • phisher2 2
ローカルプロキシとは これってstring? number? 3 https://www.anet.co.jp/security/en gineer_blog/webburp_suite.html
Burp Suiteのダウンロード 4 1. ここにアクセス a. https://portswigger.net/burp 2. community editionをダウンロード
3. メールアドレスを入力 4. 自分のOSに合わせたバイナリを ダウンロード
Burpの起動 これってstring? number? 5 ↑2回くらいnextおす →
Burpの起動 これってstring? number? 6 ↑おす ↗Proxyを選択する
Burpの起動 これってstring? number? 7
Burpの起動 これってstring? number? 8 一旦interceptをOFFにしてください
問題ページ これってstring? number? 9 https://2023-sapporo.ctf4b.ryuse.dev/ 今回の講義では この後のCTFで使用す問題を先に解説するので、 あとで皆さんに解いてもらいます
問題1: ダウンロードするHTMLを書き換える 10 問題文に書いてある通り、ダウンロードされる HTMLを書き換えればフラグが手に入ります
問題1: ダウンロードするHTMLを書き換える 11 開発者ツールなどで中身を見てみると、どこを書き換えればいいのかひと目でわかります
問題1: ダウンロードするHTMLを書き換える 12 レスポンスを書き換えていきます。まず intercept is onにします 次にproxy settingsからresponses interception
rulesのチェックを入れます
問題1: ダウンロードするHTMLを書き換える 13 この状態で先ほどの問題ページ (/chall1.html)をリロードします。
問題1: ダウンロードするHTMLを書き換える これってstring? number? 14 左上のforwardを何度か押すと、HTMLが表示されます。
問題1: ダウンロードするHTMLを書き換える 15 左側はエディタに貼っているので、書き換えます。
問題1: ダウンロードするHTMLを書き換える 16 書き換えた状態でforwardを押すと、フラグが手に入ります。
問題2: HTTPリクエストを書き換える 17
問題2: HTTPリクエストを書き換える 18 残りの在庫が0個のflagを購入できれば良さそうです
問題2: HTTPリクエストを書き換える 19 Appleを1個で購入しようとすると、リクエスト内容はこのようになります。
問題2: HTTPリクエストを書き換える 20 なのでこれをflagにすると...
問題2: HTTPリクエストを書き換える 21 not enough flagと出力されました。在庫が 0なので仕方ないですね
問題2: HTTPリクエストを書き換える 22 ソースコードが読めるので、読んでみましょう。
問題2: HTTPリクエストを書き換える 23 フラグを-1個で購入すると、フラグが手に入ります。
問題3: Adminのパスワードを入手する 24 今回はburpのリクエスト内容をブルートフォースする機能を使用します
問題3: Adminのパスワードを入手する これってstring? number? 25 HTTP historyから先ほどのリクエストを選択します。
問題3: Adminのパスワードを入手する これってstring? number? 26 requestを右クリックでSend to Intruderを選択します。
問題3: Adminのパスワードを入手する これってstring? number? 27 上のタブからintruderを選択します。
問題3: Adminのパスワードを入手する これってstring? number? 28 パスワードの部分を選択して右上の Add $をクリックします。
問題3: Adminのパスワードを入手する これってstring? number? 29 PayloadsからNumbersを選択します。Payload settingsはこんな感じです。
問題3: Adminのパスワードを入手する これってstring? number? 30 実行すると一個だけレスポンスサイズがおかしい!この中身をみるとフラグが入っています。
まとめ 31 • HTTPリクエスト・レスポンスはローカルプロキシを使用して書き換えられる • リクエストやレスポンスを書き換えることによって入力制限などを回避できる場合が ある • Burp Suiteを使うとパラメータを変えながら様々なリクエストを作成することができる