Legacy crypto weakness detector for OT/ICS environments.
cryptofault 0.1.0
Copyright (C) 2026 Luis Fidel Castellanos Diaz
A Vector Telemetry Research (VTR) open-source tool
https://vectortelemetryresearch.com
Licensed under Apache-2.0
cryptofault reads packet captures (PCAP) and X.509 certificates and
reports cryptographic weaknesses commonly found in legacy industrial
environments:
- TLS 1.0 / TLS 1.1 ClientHello handshakes
- RSA keys under 2048 bits
- MD5 and SHA-1 certificate signatures
- Plaintext protocol sessions (no encryption detected)
It does not modify traffic, inject packets, or perform active remediation. Output only.
# Analyze a PCAP file
cryptofault scan --pcap capture.pcap
# Analyze an X.509 certificate
cryptofault scan --cert server.pem
# JSON output for pipeline integration
cryptofault scan --pcap capture.pcap --format json[WARN] TLS 1.0 ClientHello — src 10.0.0.5 → dst 10.0.0.1
[WARN] RSA 1024 — CN=legacy-plc.local (expires 2027-03-01)
[WARN] SHA-1 signature — CN=scada-root-ca
[INFO] 3 unencrypted sessions detected on port 502 (Modbus)
cargo install cryptofaultOr build from source:
git clone https://github.com/LuisCastellanos-dev/cryptofault
cd cryptofault
cargo build --releaseApache-2.0 — see LICENSE and NOTICE.
Contributions require DCO sign-off — see CONTRIBUTING.md.
Luis Fidel Castellanos Diaz (@LuisCastellanos-dev)
Founder, Vector Telemetry Research (VTR)
srcfield semantics: fortls_versionandplaintext_sessionfindings,srcis an IP address; forweak_key,weak_signature, andcertificate_expiryfindings,srcis a file path. A dedicatedsrc_kindfield will be added to the schema when a third external consumer requires it (tracked as technical debt).- SHA-256 placeholder:
scanner::pcap::sha256_bytescurrently usesDefaultHasher(non-cryptographic) as a placeholder. Will be replaced withsha2::Sha256in v0.3.0. (sha2is dual-licensed Apache-2.0/MIT; deferred as technical debt, not a license blocker.) Chain of custody for live captures is not cryptographically guaranteed until then.