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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
route-detect — Webアプリケーションルートの認証(authn)と認可(authz)のセキュリティバグを検出します。 | Kitploit
ツール/GitHubGitHub/mschwager/route-detect
静的分析脆弱性分析ウェブセキュリティ認証
GitHubmschwager/route-detect

route-detect

Webアプリケーションルートの認証(authn)と認可(authz)のセキュリティバグを検出します。

リポジトリを見る
2801311ヶ月前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

route-detect

CI Python Versions PyPI Version

Webアプリケーションのルートにおける認証(authn)と認可(authz)のセキュリティバグを見つけます:

Routes demo

koel ストリーミングサーバーからのルート

WebアプリケーションのHTTPルートにおけるauthnおよびauthzのバグは、今日見られる最も一般的なセキュリティ問題の一部です。以下の業界標準のリソースは、その問題の深刻さを強調しています:

  • 2021 OWASP Top 10 #1 - アクセス制御の不備
  • 2021 OWASP Top 10 #7 - 識別と認証の失敗
  • 2023 OWASP API Top 10 #1 - オブジェクトレベルの認可の不備
  • 2023 OWASP API Top 10 #2 - 認証の不備
  • 2023 OWASP API Top 10 #5 - 機能レベルの認可の不備
  • 2023 CWE Top 25 #11 - CWE-862: 認可の欠如
  • 2023 CWE Top 25 #13 - CWE-287: 不適切な認証
  • 2023 CWE Top 25 #20 - CWE-306: 重要な機能に対する認証の欠如
  • 2023 CWE Top 25 #24 - CWE-863: 誤った認可

対応Webフレームワーク

インストール

pipを使ってroute-detectをインストールします:

root@kitploit:~
$ python -m pip install --upgrade route-detect

次のコマンドでroute-detectが正しくインストールされていることを確認できます:

root@kitploit:~
$ echo 'print(1 == 1)' | semgrep --config $(routes which test-route-detect) -
Scanning 1 file.

Findings:

  /tmp/stdin
     routes.rules.test-route-detect
        Found '1 == 1', your route-detect installation is working correctly

          1┆ print(1 == 1)


Ran 1 rule on 1 file: 1 finding.

使用方法

route-detectはroutes CLIコマンドを使用し、次のコマンドツリーを提供します:

  • routes
    • which
    • viz

Semgrep

まず、semgrepがインストールされ、PATHに含まれていることを確認してください。

[!IMPORTANT] route-detectがコードスニペットを表示するために依存しているSemgrepの機能は、同社のクラウドアプリの背後に移動されました。詳細は#10762を参照してください。ただし、Semgrepの以前のバージョンではこの動作が引き続きサポートされています。route-detectを使用する際は、Semgrepのバージョン1.97.0より前のものをインストールしてください。これは次のコマンドで実行できます:python -m pip install 'semgrep<1.97.0'。

whichサブコマンドを使用して、semgrepを適切なWebアプリケーションルールに向けます:

root@kitploit:~
$ semgrep --config $(routes which django) path/to/django/code

vizサブコマンドを使用して、ブラウザでルート情報を可視化します:

root@kitploit:~
$ semgrep --json --config $(routes which django) --output routes.json path/to/django/code
$ routes viz --browser routes.json

どのフレームワークを探すべきかわからない場合は、特別なall IDを使用してすべてをチェックできます:

root@kitploit:~
$ semgrep --json --config $(routes which all) --output routes.json path/to/code

カスタムのauthnまたはauthzロジックがある場合は、route-detectのルールをコピーできます:

root@kitploit:~
$ cp $(routes which django) my-django.yml

その後、必要に応じてルールを変更し、上記のように実行できます:

root@kitploit:~
$ semgrep --json --config my-django.yml --output routes.json path/to/django/code
$ routes viz --browser routes.json

CodeQL

まず、codeqlがインストールされ、PATHに含まれていることを確認してください。

whichサブコマンドを使用して、まずパックの依存関係をインストールし、次に適切なクエリを実行します:

root@kitploit:~
$ codeql pack install $(poetry run routes which -c rails)
root@kitploit:~
$ codeql database analyze \
    --output routes.sarif \
    --format sarif-latest \
    --sarif-add-file-contents \
    --no-group-results \
    -- \
    /path/to/codeql/db \
    $(routes which --codeql rails)

vizサブコマンドを使用して、ブラウザでルート情報を可視化します:

root@kitploit:~
$ routes viz --codeql --browser routes.sarif

コントリビューション

route-detectは依存関係と設定管理にpoetryを使用しています。

続行する前に、次のコマンドでプロジェクトの依存関係をインストールしてください:

root@kitploit:~
$ poetry install --with dev

Linting

次のコマンドで全てのプロジェクトファイルをlintします:

root@kitploit:~
$ poetry run pre-commit run --all-files

テスト

次のコマンドでPythonテストを実行します:

root@kitploit:~
$ poetry run pytest --cov

次のコマンドでSemgrepルールテストを実行します:

root@kitploit:~
$ poetry run semgrep --test --config routes/rules/ tests/test_rules/

次のコマンドでCodeQLクエリテストを実行します:

root@kitploit:~
$ codeql test run routes/queries/rails/test/
ツールをダウンロード
言語フレームワークSemgrepCodeQL
PythonDjango✅❌
PythonDjango REST framework✅❌
PythonFlask✅❌
PythonSanic✅❌
PythonFastAPI✅❌
PHPLaravel✅❌
PHPSymfony✅❌
PHPCakePHP✅❌
RubyRails❌✅
RubyGrape✅❌
JavaJAX-RS✅❌
JavaSpring✅❌
GoGorilla✅❌
GoGin✅❌
GoChi✅❌
JavaScript/TypeScriptExpress✅❌
JavaScript/TypeScriptReact✅❌
JavaScript/TypeScriptAngular✅❌