Hello there, ('ω')ノ
🎯 ラボの目的
このラボでは、アクセス制御がユーザーが自由に改ざんできるクッキーに依存している状態になっています。
目標:管理者用パネルにアクセスし、ユーザー「carlos」を削除する
🛠 攻略手順
1. /admin
にアクセスして拒否を確認
https://<LAB-ID>.web-security-academy.net/admin
に直接アクセス- → アクセス拒否(403など)されることを確認
2. ログイン処理をBurpでキャプチャ
- BurpのProxyで Intercept を ON
- ラボに戻って「wiener : peter」でログイン
- Burp上でログインリクエスト(POST)とレスポンスを確認
3. レスポンス中のクッキーを改ざん
- レスポンスヘッダーに以下のような Set-Cookie が含まれるはず:
Set-Cookie: Admin=false
- これを
Admin=true
に書き換えてから Forward
4. 管理者パネルに再アクセス
- 再度
/admin
にアクセス - 今度はアクセス可能になっている
5. ユーザー「carlos」を削除
- 管理パネルにて、ユーザー
carlos
を探して削除ボタンをクリック
✅ 攻撃成立の理由
問題点 | 説明 |
---|---|
🔓 クッキーの Admin=false がユーザー側で自由に変更可能 |
クライアント側の値を信頼している |
🚫 サーバー側で適切な検証が行われていない | クッキー値が改ざんされたかチェックしていない |
🛠 セッションやトークンではなく脆弱なパラメータに依存 | アクセス制御の本質的欠陥 |
✅ 学びポイント
- アクセス制御情報をクライアントに保持してはいけない
- クッキーはユーザーによって改ざん可能であり、信頼してはいけない
- サーバー側でユーザーの認証情報やロールは一元的に安全に管理すべき
Best regards, (^^ゞ