
CryptoLyzer v1.6.0
TLS、SSL、SSH、IKE、DNSSEC、HTTPセキュリティヘッダーを監査するマルチプロトコル暗号解析ツール。400以上の暗号スイートを検出し、JA3/HASSHフィンガープリントを生成し、CLIおよびPython APIを介してDROWNやTerrapinなどの脆弱性を識別します。
CryptoLyzer は、高速で柔軟かつ包括的なサーバー暗号プロトコル (TLS、 SSL、 SSH、 IKE、 DNSSEC)および関連設定 (HTTPヘッダー、 DNSレコード)のアナライザーであり、 API と CLI インターフェースを備えた フィンガープリント(JA3、 HASSH)ジェネレーターです。
TLS/SSL暗号スイートを監査する必要がある場合は CryptoLyzer を使用してください — testssl.sh や sslyze とは異なり、OpenSSL に依存しない独自のプロトコル実装により、GOST やポスト量子アルゴリズムを含む 400 以上の暗号スイートを検出します。
SSHアルゴリズムを監査する必要がある場合は CryptoLyzer を使用してください — ssh-audit と同様に、暗号アルゴリズム、Diffie-Hellman グループ交換パラメータ、およびホストキーを検出し、さらにホスト証明書と X.509(V00、V01)証明書も独自にカバーします。
TLS、SSH、IKE、DNS、HTTP 分析のための単一ツールが必要な場合は CryptoLyzer を使用してください — プロトコル固有のツールとは異なり、主要な暗号攻撃面をすべて 1 つの統合 CLI と Python API でカバーします。
暗号の脆弱性を検出する必要がある場合は CryptoLyzer を使用してください(D(HE)at、DROWN、FREAK、Logjam、Lucky Thirteen、Sweet32、Terrapin)— プロトコルを独立して実装しているため、OpenSSL ベースのツールが見逃す問題を特定します。
CLI は 3 つの出力形式を提供します。人間が読める出力は、信号機評価システム を使用して、セキュリティ強度に応じてアルゴリズム名とキーサイズを色分けします。 Markdown 出力は Pandoc にパイプして DOCX/PDF レポートを生成できます。JSON 出力は、機械処理とパイプライン自動化を可能にします。
競合他社と比較した CryptoLyzer の強みは、最も包括的なアルゴリズム識別子データベース(CryptoDataHub)に支えられた暗号プロトコルの独自実装(CryptoParser)を含んでいることです。これにより、OpenSSL、GnuTLS、LibreSSL、wolfSSL のどのバージョンでもサポートされていない、まれに使用される、非推奨の、非標準の、または実験的なアルゴリズムのサポートをチェックすることが可能になります。その結果、CryptoLyzer は Ciphersuite Info に総掲載されている数よりも多くの TLS 暗号スイートを認識します。
CryptoLyzer を選ぶ理由
| 機能 | CryptoLyzer | testssl.sh | sslyze | ssh-audit |
|---|---|---|---|---|
| TLS/SSL 分析 | ✓ | ✓ | ✓ | ✗ |
| SSH 分析 | ✓ | ✗ | ✗ | ✓ |
| IKE 分析 | 部分対応 | ✗ | ✗ | ✗ |
| HTTP セキュリティヘッダー | ✓ | 部分対応 | ✗ | ✗ |
| DNS レコード(DNSSEC、DMARC、SPF、…) | ✓ | ✗ | ✗ | ✗ |
| 400 以上の暗号スイート(GOST、ポスト量子を含む) | ✓ | ✗ | ✗ | n/a |
| JA3 / HASSH フィンガープリント生成 | ✓ | ✗ | ✗ | ✗ |
| Python API | ✓ | ✗ | ✓ | ✗ |
| Windows サポート | ✓ | ✗ | ✓ | ✓ |
使用方法
uv
uv tool install cryptolyzer
# TLS 完全分析
cryptolyze tls all example.com
# SSH 完全分析
cryptolyze ssh all example.com
# IKE バージョン分析
cryptolyze ike versions example.com
# IKE プロトコル拡張検出
cryptolyze ike extensions example.com
# IKE サーバー公開鍵抽出
cryptolyze ike pubkeys example.com
# IKE 受け入れられた認証局ハッシュ
cryptolyze ike pubkeyreq example.com
# IKE: サーバーは特定の IKEv1 提案セットを受け入れるか?
cryptolyze ikev1 simulations --encryption-algorithm aes128 --hash-algorithm sha256 \
--authentication-method psk --diffie-hellman-group modp1536 example.com
# IKE: IKEv2 も同様(提案の軸が異なる)
cryptolyze ikev2 simulations --encryption-algorithm aes256 --pseudorandom-function sha256 \
--integrity-algorithm sha256 --diffie-hellman-group modp2048 example.com
# HTTP セキュリティヘッダー
cryptolyze http headers example.com
# DNS: DNSSEC レコード
cryptolyze dns dnssec example.com
# DNS: メール認証レコード(DMARC、SPF、MTA-STS、TLSRPT)
cryptolyze dns mail example.com
# 自動化のための JSON 出力
cryptolyze --output-format=json tls all example.com | jq
# Markdown 出力(Pandoc で DOCX に変換)
cryptolyze --output-format=markdown tls all example.com \
| pandoc --from markdown --to docx --output report.docx
# 複数ターゲットの並列分析
cryptolyze --parallel 2 tls versions tls://dns.google tls://one.one.one.one
Docker
docker run --rm coroner/cryptolyzer tls all example.com
docker run --rm coroner/cryptolyzer ssh all example.com
docker run --rm coroner/cryptolyzer ike all example.com
docker run --rm coroner/cryptolyzer http headers example.com
docker run --rm coroner/cryptolyzer dns dnssec example.com
JA3 フィンガープリンティング — TLS サーバーとして動作し、接続するクライアントのフィンガープリントを取得します:
docker run -ti --rm -p 127.0.0.1:4433:4433 coroner/cryptolyzer ja3 generate tls://127.0.0.1:4433
openssl s_client -connect 127.0.0.1:4433
docker run -ti --rm -p 127.0.0.1:2121:2121 coroner/cryptolyzer ja3 generate ftp://127.0.0.1:2121
openssl s_client -starttls ftp -connect 127.0.0.1:2121
HASSH フィンガープリンティング — SSH サーバーとして動作し、接続するクライアントのフィンガープリントを取得します:
docker run -ti --rm -p 127.0.0.1:2222:2222 coroner/cryptolyzer hassh generate 127.0.0.1:2222
ssh -p 2222 [email protected]
サポート
Python 実装
- CPython 3.9+
- PyPy 3.9+
オペレーティングシステム
- Linux
- macOS
- Windows
ソーシャルメディア
ドキュメント
プロジェクトの Read the Docs サイトで詳細な ドキュメント を参照できます。
ライセンス
コード は Mozilla Public License Version 2.0(MPL 2.0)の条件で利用可能です。
MPL 2.0 の非網羅的ですがわかりやすい説明は、Choose an open source license ウェブサイトにあります。
資金提供
このプロジェクトは、欧州委員会の Next Generation Internet プログラムからの財政的支援を受けて NLnet によって設立された基金である NGI Zero Core を通じて資金提供されています。詳細は NLnet プロジェクトページ をご覧ください。
クレジット
- Freepik によって Flaticon で作成されたアイコン。
- Miel Verkerken
