
GitHubおよびペーストサイト向けの自動シークレット・漏洩検出スキャナー。ヒューリスティックフィルタリング、Shhgit/TruffleHogによるIOLエンリッチメント、ELKベースの検索・通知機能を備えています。
Leaktopusユーザーの皆様へ、
Leaktopusプロジェクトは正式に非推奨となります。慎重な評価の結果、このライブラリの活発な開発およびメンテナンスを終了することを決定しました。

ソースコードを掌握せよ。
Code C.A.I.N フレームワークに基づいています:
🐦 Canarytokens(カナリートークン)
🔎 Automated Inspection(自動検査)
💣 Neutralization(無力化)
Plaugh&Play - Dockerによるワンラインインストール。
さまざまなソースをスキャン - キーワードセット(例: ORGANIZATION-NAME.com)を含むソースをスキャンします。
現在サポート:
結果をフィルタリング - 内蔵ヒューリスティックエンジンで。
IOL(漏洩指標)で結果を強化:
公開ソース(例: Webクローラーによる「ジャンク」リポジトリ)を無視できます。
一般的な「ジャンク」ソースのOOTB無視リスト。
リークを確認し、前回のスキャン以降にソースが変更された場合のみ通知を受け取ります。
内蔵ELK - リーク内のデータを検索(IOLを含むGitリポジトリの完全インデックスを含む)。
新しいリークを通知
cd Leaktopus
cp .env.example .env
docker-compose up -d
基本的な個人アクセストークンオプションに加えて、LeaktopusはGitHub App認証をサポートしています。 GitHub Appはレート制限が緩和されるため推奨されます。
GitHub Appを使用するには、GitHub Appを作成し、それを組織/アカウントにインストールする必要があります。 詳細はGitHubのドキュメントを参照してください。
アプリを作成したら、以下の環境変数を設定する必要があります:
GITHUB_USE_APP=TrueGITHUB_APP_IDGITHUB_INSTALLATION_ID - インストールIDはアプリのインストール画面で確認できます。GITHUB_APP_PRIVATE_KEY_PATH(デフォルトは/app/private-key.pem)秘密鍵ファイルをコンテナにマウントします(docker-compose.ymlの例を参照)。
./leaktopus_backend/private-key.pem:/app/private-key.pem
* GITHUB_USE_APPがTrueに設定されている場合、GITHUB_ACCESS_TOKENは無視されます。
Leaktopusをアップデート(新しいバージョンをプル)する場合は、次の手順に従ってください。
git pull
# イメージの再作成を強制
docker-compose up --force-recreate --build
内蔵ヒューリスティックエンジンは、以下の方法で検索結果をフィルタリングし、誤検出を減らします:
OpenAPIドキュメントは http://{LEAKTOPUS_HOST}:8000/apidocs で入手可能です。
上記はカスタムdocker-compose.ymlファイルを使用してカスタマイズできます。
現時点では、Leaktopusは認証メカニズムを提供していません。 外部に公開しないようにし、Leaktopusインスタンスへのアクセスを制限するように最善を尽くしてください。
コントリビューションは大歓迎です。
コントリビューションガイドラインとドキュメントに従ってください。
| サービス | ポート | 必須/任意 |
|---|
| バックエンド (API) | 8000 | 必須 |
| バックエンド (ワーカー) | N/A | 必須 |
| Redis | 6379 | 必須 |
| フロントエンド | 8080 | 任意 |
| Elasticsearch | 9200 | 任意 |
| Logstash | 5000 | 任意 |
| Kibana | 5601 | 任意 |