PortSwigger ラボ解説集(portswigger-writeups)

Security

概要

このリポジトリは、PortSwigger(Web Security Academy)で提供されるラボ問題の個人学習ノートを集めたものです。各ラボに対する攻撃手順のメモ、実際に使用したペイロード、手順のスクリーンショット、ならびに簡単な緩和策や学習上の気づきを Markdown ファイルとして整理しています。教材的な観点で脆弱性の再現や対策を理解するために役立つ内容が中心で、悪用目的ではなく教育目的に限定して公開されています。

GitHub

リポジトリの統計情報

  • スター数: 1
  • フォーク数: 0
  • ウォッチャー数: 1
  • コミット数: 3
  • ファイル数: 8
  • メインの言語: 未指定

主な特徴

  • PortSwigger のラボ問題に対する個人の Writeup(手順、PoC、スクリーンショット)を Markdown 化して整理
  • 代表的な脆弱性(SQLi、XXE、パス・トラバーサル、OAuth リダイレクト)をカバー
  • 教育目的の注意喚起を明記し、安全な学習環境での利用を促進
  • 小規模で読みやすく、学習者が真似して理解を深めやすい構成

技術的なポイント

本リポジトリの技術的価値は「実践的な攻撃シナリオを要点だけ簡潔にまとめている点」にあります。扱われている脆弱性は以下のように多岐に渡ります。

  • SQLインジェクション(ログインバイパス): 認証処理に対する入力検証不足を突き、論理式の挿入や UNION、エラーベース/ブラインドテクニックを活用する手順を短く記載。ログインバイパスの典型的なペイロードやレスポンス観察のポイントが示されています。
  • XXE(外部実体参照): XML パーサが外部エンティティを解決するケースでのファイル取得方法や SSRF に繋がるリスクについての実例。XML の DOCTYPE 定義や外部エンティティの宣言例、攻撃時のレスポンスの見方が含まれます。
  • パストラバーサル: ファイルパスの正規化漏れを突く相対パス操作(../)を用いた /etc/passwd などの取得手法、サーバ側のパス制限回避の基本テクニックがまとめられています。
  • OAuth リダイレクト URI を利用したアカウント乗っ取り(redirect_uri を介した攻撃): オープンリダイレクタや不正なリダイレクト先登録がある場合のフローを説明し、認可コードやアクセストークンの横取り経路、対策としてのホワイトリスト化と厳密な検証の必要性を示しています。

ドキュメントは実行可能なスクリプトやツールを含むというより、実務での「気づき」と「手順の要約」に重点を置いているため、短時間でポイントを掴みやすいのが特徴です。学習者はここで提示された PoC を自身のラボ環境で再現することで、攻撃原理の理解と防御策の検証が行えます。注意点として、ペイロードや手順は公開情報であり実運用システムでの利用は禁止されています。また、緩和策としては入力検証、出力エンコーディング、最小権限化、正当性検証(redirect_uri の厳格化)などが一貫して推奨されています。リポジトリ自体は小規模でメンテナンス性が高く、個人の学習ログとしてシンプルにまとまっている点も評価できます。

プロジェクトの構成

主要なファイルとディレクトリ:

  • Exploiting-XXE-using-external-entities-to-retrieve-files.md: file
  • File-path-traversal-simple-case.md: file
  • OAuth-account-hijacking-via-redirect_uri.md: file
  • README.md: file
  • SQL-injection-vulnerability-allowing-login-bypass.md: file

…他 3 ファイル

まとめ

PortSwigger の学習ノートを実務的観点で簡潔にまとめた教育向けリポジトリです(短評:学習に便利)。

リポジトリ情報:

READMEの抜粋:

PortSwigger Writeups

This repository is a simple, personal collection of PortSwigger / Web Security Academy lab writeups, PoCs, screenshots, and notes — organized so others can learn from them. Feel free to browse, reuse, and learn from these writeups; they’re provided to help students and practitioners understand common web vulnerabilities and mitigations.

Quick notes

  • Content is intended for educational purposes only. Do not use any payloads or techniques here against systems you d…