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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
badsecrets — 多くのWebフレームワークにわたって既知のシークレットを検出するためのライブラリ | Kitploit
ツール/GitHubGitHub/blacklanternsecurity/badsecrets
脆弱性分析ウェブセキュリティ暗号化ペネトレーションテストシークレット検出
GitHubblacklanternsecurity/badsecrets

badsecrets

多くのWebフレームワークにわたって既知のシークレットを検出するためのライブラリ

リポジトリを見る
81784265日前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

badsecrets

Ruff License Tests codecov Pypi Downloads

様々なプラットフォームにおいて、既知のあるいは非常に脆弱な暗号学的シークレットの使用を特定するための純粋な Python ライブラリです。本プロジェクトは、様々な「既知のシークレット」(例えば、チュートリアルの例で見られる ASP.NET マシンキーなど)のリポジトリとして機能すると同時に、その使用を特定するための言語非依存の抽象化レイヤーを提供することを目的としています。

「悪いシークレット」が使用されたかどうかを知ることは、通常、そのシークレットが使用された何らかの暗号学的な生成物を調べることで判断できます。例えば、鍵付きハッシュアルゴリズムで署名された Cookie などです。各プラットフォームが提供する個々の実装上の特異性を掘り下げていくと物事は複雑になりがちですが、本ライブラリはそれを軽減することを目指しています。

Black Lantern Security ブログの詳細なブログ記事もぜひご覧ください!

Blacklist3rに触発され、対応プラットフォームを拡大し、言語およびオペレーティングシステムへの依存を取り除きたいという願いから生まれました。

現在のモジュール

パッシブモジュール

パッシブモジュールは、すでに手元にある暗号学的な生成物(Cookie、トークン、署名付き URL など)を分析します。既知のシークレットのデータベースに対してその生成物を復号または検証しようと試みることで、オフラインで動作します。

名前説明
ASPNET_Viewstateviewstate/generator を既知のマシンキーのリストと照合してチェックします。
ASPNET_ResourceWebResource.axd および ScriptResource.axd の暗号化された URL を既知のマシンキーのリストと照合してチェックします。ページに __VIEWSTATE が存在しない場合に有用です。
Telerik_HashKeyパッチ適用済み(2017 年以降)の Telerik UI について、既知の Telerik.Upload.ConfigurationHashKey をチェックします
Telerik_EncryptionKeyパッチ適用済み(2017 年以降)の Telerik UI について、既知の Telerik.Web.UI.DialogParametersEncryptionKey をチェックします
Flask_SignedCookies脆弱な Flask の Cookie 署名パスワードをチェックします。flask-unsignのラッパーです
Peoplesoft_PSTokenpeoplesoft の PS_TOKEN について、不良または脆弱な署名パスワードをチェックできます
Django_SignedCookiesdjango のセッション Cookie(signed_cookie モードの場合)について、既知の django secret_key をチェックします
Rails_SecretKeyBaseRuby on Rails の署名付きまたは暗号化されたセッション Cookie(複数のメジャーリリースから)について、既知の secret_key_base をチェックします
Generic_JWTJWT について、既知の HMAC シークレットまたは RSA 秘密鍵をチェックします
Jsf_viewstateJava Server Faces(JSF)の Mojarra および Myfaces の両実装について、既知または脆弱なシークレットキーの使用をチェックします
Symfony_SignedURLsymfony の「_fragment」URL について、既知の HMAC キーをチェックします。ハッシュを含む完全な URL に対して動作します
Express_SignedCookies_ESexpress.js の express-session ミドルウェアについて、署名付き Cookie およびセッション Cookie の既知の「session secret」をチェックします
Express_SignedCookies_CSexpress.js の cookie-session ミドルウェアについて、署名付き Cookie およびセッション Cookie の既知の secret をチェックします
Laravel_SignedCookies「laravel_session」Cookie について、既知の laravel「APP_KEY」をチェックします
ASPNET_Compressedviewstateかつて普及していたカスタムの圧縮 Viewstate コードスニペットで RCE に対して脆弱なものをチェックします
Rack2_SignedCookiesRack 2.x の署名付き Cookie について、既知のシークレットキーをチェックします
Yii2_SignedCookiesYii2 フレームワークの署名付き Cookie について、既知の Cookie 検証キーをチェックします
Shiro_RememberMeApache Shiro の rememberMe Cookie について、既知の AES 暗号化キーをチェックします
LTPA_TokenIBM WebSphere の LtpaToken および LtpaToken2 Cookie について、既知の LTPA 暗号化キーをチェックします
NextAuthNextAuth.js / Auth.js の JWE セッション Cookie について、既知または脆弱な NEXTAUTH_SECRET / AUTH_SECRET をチェックします

アクティブモジュール

アクティブモジュールは、パッシブ検出を一歩超えたものです。YARA ベースのプリフィルタリングを使用してライブターゲットをフィンガープリントし(HTTP レスポンスヘッダー、Cookie、ボディコンテンツに基づく)、次に既知のキーで暗号学的な生成物を偽造してターゲットに送信し、そのキーが受け入れられるかどうかを確認します。これにより、分析するトークンをまだ持っていないが、ターゲットがデフォルトまたは広く知られたシークレットを使用している疑いがある場合に有用です。

アクティブモジュールは URL モード(--url)でデフォルトで有効になっています。無効にするには --passive-only を使用してください。

名前説明
Shiro_RememberMe_Key既知の AES キーで Apache Shiro の rememberMe Cookie を偽造し、ターゲットがそれらを受け入れるかどうかをテストします(デシリアライゼーション RCE)
GlobalProtect_DefaultMasterKeyPAN-OS GlobalProtect ポータルについて、デフォルトのマスター暗号化キーの使用をテストします
LTPA_Token_Key既知の LTPA キーで IBM WebSphere の LtpaToken2 Cookie を偽造し、ターゲットが認証を許可するかどうかをテストします(認証バイパス)

インストール

pypi パッケージがあるので、ライブラリを利用するには pip install badsecrets を実行するだけです。

簡単な使い方

Badsecrets を使う最良の方法は、pip install を実行した後に単純に badsecrets を実行することです:

pip install badsecrets
badsecrets eyJhbGciOiJIUzI1NiJ9.eyJJc3N1ZXIiOiJJc3N1ZXIiLCJVc2VybmFtZSI6IkJhZFNlY3JldHMiLCJleHAiOjE1OTMxMzM0ODMsImlhdCI6MTQ2NjkwMzA4M30.ovqRikAo_0kKJ0GVrAwQlezymxrLGjcEiW_s3UJMMCo

内部的には、cli.py の例を使用しています。CLI は pip インストールなしでも手動でアクセスできます:

pip インストールなしの場合:

git clone https://github.com/blacklanternsecurity/badsecrets.git
cd badsecrets
python ./badsecrets/examples/cli.py eyJhbGciOiJIUzI1NiJ9.eyJJc3N1ZXIiOiJJc3N1ZXIiLCJVc2VybmFtZSI6IkJhZFNlY3JldHMiLCJleHAiOjE1OTMxMzM0ODMsImlhdCI6MTQ2NjkwMzA4M30.ovqRikAo_0kKJ0GVrAwQlezymxrLGjcEiW_s3UJMMCo

例

例を使用するには、pip install を行った後、リポジトリを git clone して badsecrets ディレクトリに cd します:

git clone https://github.com/blacklanternsecurity/badsecrets.git
cd badsecrets

以下の例のセクションにあるコマンドは、このディレクトリにいることを前提としています。

Badsecrets BBOT モジュールを使用している場合、他に何もする必要はありません - BBOT がパッケージをインストールします。

cli.py

Bad secrets には、シークレットを手動で確認する際の利便性のためにサンプル CLIが含まれています。上記のとおり、pip install が成功した後は badsecrets を実行するだけでアクセスできます。

使用方法

usage: badsecrets [-h] [-nc] [-j] [-u URL] [-nh] [-c FILE_OR_MODULE:KEYS]
                  [-p PROXY] [-a USER_AGENT] [-H HEADER] [-d] [-t TIMEOUT]
                  [-P] [-l]
                  [product ...]

Check cryptographic products against badsecrets library

positional arguments:
  product               Cryptographic product to check for known secrets

options:
  -h, --help            show this help message and exit
  -nc, --no-color       Disable color message in the console
  -j, --json            Output results as JSON only (no banner, no color).
                        Outputs nothing on no detection
  -u URL, --url URL     Use URL Mode. Specified the URL of the page to access
                        and attempt to check for secrets
  -nh, --no-hashcat     Skip the check for compatable hashcat commands when
                        secret isn't found
  -c FILE_OR_MODULE:KEYS, --custom-secrets FILE_OR_MODULE:KEYS
                        Custom secrets to check. Can be specified multiple
                        times. Without a module prefix, the file is loaded for
                        all modules. With a module prefix (MODULE:value), keys
                        are targeted to that module only. Value can be a file
                        path or comma-separated inline keys. Example: -c
                        my_keys.txt or -c Shiro_RememberMe_Key:key1,key2 or -c
                        GlobalProtect_DefaultMasterKey:keys.txt
  -p PROXY, --proxy PROXY
                        In URL mode, Optionally specify an HTTP proxy
  -a USER_AGENT, --user-agent USER_AGENT
                        In URL mode, Optionally set a custom user-agent
  -H HEADER, --header HEADER
                        Custom header (e.g., -H 'Cookie: foo=bar'). Can be
                        specified multiple times
  -d, --debug           Enable debug output (request URL, response status,
                        headers, etc.)
  -t TIMEOUT, --timeout TIMEOUT
                        Request timeout in seconds (default: 10)
  -P, --passive-only    Disable active probing in URL mode (only run passive
                        analysis)
  -l, --list-modules    List all available modules with descriptions and exit

ツールをダウンロード