Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
cve-2021-41773-lab — 教育用FastAPIラボで、CVE-2021-41773のディレクトリトラバーサルとローカルファイルインクルージョンを実演します。脆弱性のあるサーバー、パッチ適用済みコード、エンコードされたペイロードの例を含み、ローカルセキュリティトレーニング向けです。 | Kitploit
ツール/GitHubGitHub/kunalkhandelwal-dev/cve-2021-41773-lab
脆弱性分析ウェブアプリケーション悪用ウェブセキュリティ学習と教育ラボと実践
GitHubkunalkhandelwal-dev/cve-2021-41773-lab

cve-2021-41773-lab

教育用FastAPIラボで、CVE-2021-41773のディレクトリトラバーサルとローカルファイルインクルージョンを実演します。脆弱性のあるサーバー、パッチ適用済みコード、エンコードされたペイロードの例を含み、ローカルセキュリティトレーニング向けです。

リポジトリを見る

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
21日前未レビュー

CVE-2021-41773 — 最小限の FastAPI ラボ

ファイルシステム境界を検証する前にユーザー入力をデコードすると、ディレクトリトラバーサルやローカルファイルインクルージョン(LFI)につながることを示す、自己完結型の小さな FastAPI ラボです。Apache HTTP Server の脆弱性 CVE-2021-41773 をモデルにしています。


特徴

  • 最小限で読みやすい FastAPI の例: 脆弱なサーバーとパッチ済みサーバー
  • シングルエンコード(%2e)およびダブルエンコード(%252e)によるバイパスを実演します
  • ルートエンドポイントには、curl でテストするための手軽なペイロードが含まれています
  • Docker は不要 — uvicorn でローカル実行できます

リポジトリ構成

  • patched_app.py — セキュリティ修正済みの実装(正規パスチェックを使用)
  • vulnerable_app.py — 意図的に脆弱性を含む実装
  • secret.txt — 攻撃対象として使用される境界外のシークレットファイル
  • webroot/test.txt — この例で提供される公開ファイル
  • README.md — 本ファイル

要件

  • Python 3.8+
  • pip

ランタイムの依存関係をインストール:

root@kitploit:~
pip install fastapi uvicorn

クイックスタート

  1. 仮想環境を作成して有効化します(Windows PowerShell の例):
root@kitploit:~
python -m venv venv
.\venv\Scripts\activate
  1. 依存関係をインストール:
root@kitploit:~
pip install fastapi uvicorn
  1. 脆弱なサーバーを起動します(ポート 8011):
root@kitploit:~
uvicorn vulnerable_app:app --port 8011

ブラウザで http://127.0.0.1:8011/ を開いてください — ルートエンドポイントには一般的なペイロードと注記が表示されます。

修正を確認するには、脆弱なサーバーを停止してパッチ済みサーバーを起動します:

root@kitploit:~
uvicorn patched_app:app --port 8011

リクエスト例(curl)

  • 公開ファイルへの基本アクセス:
root@kitploit:~
curl --path-as-is http://localhost:8011/icons/test.txt
  • CVE-2021-41773(シングルエンコード)— 単純な境界チェックをバイパス:
root@kitploit:~
curl --path-as-is "http://localhost:8011/icons/.%2e/secret.txt"
  • CVE-2021-42013(ダブルエンコード)— 繰り返しデコードしないフィルターをバイパス:
root@kitploit:~
curl --path-as-is "http://localhost:8011/icons/.%252e/secret.txt"

脆弱なサーバーに対しては、これらのペイロードが secret.txt を返す可能性があります。パッチ済みサーバーに対しては、拒否されるはずです(HTTP 403)。


パッチの仕組み(概要)

  1. 受信パスを完全にデコードします(複数のエンコード層を処理)。
  2. os.path.realpath() を使用して正規のファイルシステムパスを解決します。
  3. 解決されたパスが意図した webroot ディレクトリ内にあることを強制し、そうでなければ拒否します。

これにより、デコード → 正規化 → 認可という正しい順序が強制されます。


安全性と使用

このリポジトリはローカルでの教育用途に限ります。脆弱なサーバーを公開ネットワークに公開しないでください。


ライセンス

MIT License


著者

Kunal Khandelwal — セキュリティ研究者、アプリケーションセキュリティ

ツールをダウンロード