GitHubじゃ!Pythonじゃ!

GitHubからPython関係の優良リポジトリを探したかったのじゃー、でも英語は出来ないから日本語で読むのじゃー、英語社会世知辛いのじゃー

evyatarmeged

Raccoon – 偵察および脆弱性スキャン用の高性能攻撃防御ツール

投稿日:

偵察および脆弱性スキャン用の高性能攻撃防御ツール

ラクーン

偵察と情報収集のための攻撃的なセキュリティツール

特徴
  • DNSの詳細
  • DNSゴミ箱を使用したDNSビジュアルマッピング
  • WHOISの情報
  • TLSデータでサポートされる暗号、TLSバージョン、証明書の詳細とSAN
  • ポートスキャン
  • サービスとスクリプトのスキャン
  • URLのファジー化とディレクトリ/ファイルの検出
  • サブドメイン列挙 – Google dorking、DNS dumpsterクエリ、SANの発見とブルートフォースを使用
  • Webアプリケーションのデータ取得:
    • CMS検出
    • Webサーバー情報とX-Powered-By
    • robots.txtとサイトマップ抽出
    • クッキー検査
    • すべてのファジーブルURLを抽出する
    • HTMLフォームを発見する
    • すべての電子メールアドレスを取得する
    • 脆弱なS3バケットの対象をスキャンし、機密ファイル用に列挙する
  • 既知のWAFを検出する
  • Tor / Proxiesによる匿名ルーティングのサポート
  • 改善されたパフォーマンスのためにasyncioを使用
  • 出力をファイルに保存 – ファイルごとにフォルダとモジュールでターゲットを区切ります
ロードマップとTODO
  • 複数のホストをサポートする(ファイルから読み込む)
  • レート制限回避
  • OWASPの脆弱性スキャン(RFI、RCE、XSS、SQLiなど)
  • 結果に対するSearchSploitルックアップ
  • IP範囲のサポート
  • CIDR表記のサポート
  • より多くの出力フォーマット

ラクーンは、単純化に重点を置いて偵察と情報収集用に作られたツールです。
DNSレコードの取得、WHOIS情報の取得、TLSデータの取得、WAFの存在の検出、スレッド化されたディレクトリ破棄およびサブドメイン列挙まで、すべてを行います。 すべてのスキャンが対応するファイルに出力されます。

Raccoonのスキャンの大部分は独立しており、互いに結果に依存しないため、Pythonのasyncioを利用してほとんどのスキャンを非同期で実行します。

Raccoonは、匿名ルーティングのためにTor / proxyをサポートしています。 驚くべきSecListsリポジトリのデフォルトのワードリスト(URLのファジー化とサブドメインの検出用)を使用しますが、異なるリストを引数として渡すことができます。

その他のオプションについては、「使用法」を参照してください。

インストール

最新の安定版の場合:

pip install raccoon-scanner
# To run:
raccoon [OPTIONS]

RaccoonにはPython3.5 +が必要ですので、 pip3 install raccoon-scannerを使用する必要があるかもしれません。
GitHubリポジトリをクローンして、最新の機能と変更点を確認することもできます。

git clone https://github.com/evyatarmeged/Raccoon.git
cd Raccoon
python raccoon_src/main.py

ドッカーのインストールの場合:

# Build the docker image
docker build -t evyatarmeged/raccoon .
# Run a scan, As this a non-root container we need to save the output under the user's home which is /home/raccoon
docker run --name raccoon evyatarmeged/raccoon:latest -t example.com -o /home/raccoon
前提条件

Raccoonは、 Nmapを使ってポートをスキャンするだけでなく、他のNmapスクリプトや機能を利用します。 Raccoonを実行する前にインストールしておく必要があります。
OpenSSLは、TLS / SSLスキャンにも使用されるため、同様にインストールする必要があります。

使用法

Usage: raccoon [OPTIONS]

Options:
  --version                      Show the version and exit.
  -t, --target TEXT              Target to scan  [required]
  -d, --dns-records TEXT         Comma separated DNS records to query.
                                 Defaults to: A,MX,NS,CNAME,SOA,TXT
  --tor-routing                  Route HTTP traffic through Tor (uses port
                                 9050). Slows total runtime significantly
  --proxy-list TEXT              Path to proxy list file that would be used
                                 for routing HTTP traffic. A proxy from the
                                 list will be chosen at random for each
                                 request. Slows total runtime
  -c, --cookies TEXT             Comma separated cookies to add to the
                                 requests. Should be in the form of key:value
                                 Example: PHPSESSID:12345,isMobile:false
  --proxy TEXT                   Proxy address to route HTTP traffic through.
                                 Slows total runtime
  -w, --wordlist TEXT            Path to wordlist that would be used for URL
                                 fuzzing
  -T, --threads INTEGER          Number of threads to use for URL
                                 Fuzzing/Subdomain enumeration. Default: 25
  --ignored-response-codes TEXT  Comma separated list of HTTP status code to
                                 ignore for fuzzing. Defaults to:
                                 302,400,401,402,403,404,503,504
  --subdomain-list TEXT          Path to subdomain list file that would be
                                 used for enumeration
  -sc, --scripts                 Run Nmap scan with -sC flag
  -sv, --services                Run Nmap scan with -sV flag
  -f, --full-scan                Run Nmap scan with both -sV and -sC
  -p, --port TEXT                Use this port range for Nmap scan instead of
                                 the default
  --vulners-nmap-scan            Perform an NmapVulners scan
  --vulners-path TEXT            Path to the nmap_vulners.nse script.
  -fr, --follow-redirects        Follow redirects when fuzzing. Default: False
                                 (will not follow redirects)
  --tls-port INTEGER             Use this port for TLS queries. Default: 443
  --skip-health-check            Do not test for target host availability
  --no-url-fuzzing               Do not fuzz URLs
  --no-sub-enum                  Do not bruteforce subdomains
  --skip-nmap-scan               Do not perform an Nmap scan
  -q, --quiet                    Do not output to stdout
  -o, --outdir TEXT              Directory destination for scan output
  --help                         Show this message and exit.

スクリーンショット

脆弱なS3バケットを含むWebアプリケーションデータ:
HTBチャレンジサンプルスキャン:

スキャン後の結果フォルダツリー:

貢献する

すべての寄付、問題、機能、およびヒントを歓迎します。







-evyatarmeged
-, , , , , , , , , , , , , ,

執筆者: