Hello there, ('ω')ノ
🔍 ラボの概要
このラボでは、管理者インターフェース /admin にアクセスするために、フロントエンドで使用されているカスタム HTTP ヘッダーの存在を特定し、それを利用して認証をバイパスする方法を学びます。最終的な目的は、ユーザー carlos を削除することです。
🛠️ 攻略手順
1. /admin ページへのアクセス試行
Burp Suite を起動し、ブラウザで /admin にアクセスします。レスポンスには、「管理者またはローカル IP からのアクセスのみ許可」と表示され、アクセスが拒否されます。
2. TRACE メソッドを使用してカスタムヘッダーを特定
Burp Suite の Repeater タブで、GET /admin リクエストを TRACE /admin に変更して送信します。レスポンスに X-Custom-IP-Authorization ヘッダーが含まれており、現在の IP アドレスが表示されます。
3. カスタムヘッダーを使用して認証をバイパス
Burp Suite の Proxy タブで、Match and Replace 機能を使用して、すべてのリクエストに以下のヘッダーを追加します:
X-Custom-IP-Authorization: 127.0.0.1
これにより、サーバーはリクエストがローカルからのものであると認識し、管理者インターフェースへのアクセスが可能になります。
4. carlos ユーザーの削除
ブラウザで /admin ページにアクセスし、carlos ユーザーの削除リンクをクリックします。これでラボは解決されます。
💡 攻略のポイント
TRACEメソッドは、サーバーが受信したリクエストをそのまま返すため、リクエストに追加されたカスタムヘッダーを特定するのに有効です。X-Custom-IP-Authorizationヘッダーを使用して、サーバーにリクエストがローカルからのものであると誤認させることで、アクセス制限を回避できます。- Burp Suite の Match and Replace 機能を活用することで、すべてのリクエストに自動的にカスタムヘッダーを追加できます。
🧠 学習のポイント
- HTTP メソッドの理解と活用(特に
TRACE) - カスタムヘッダーによるアクセス制御のバイパス方法
- Burp Suite の高度な機能(Repeater、Match and Replace)の活用
Best regards, (^^ゞ