Modern console application for analyzing website HTTPS, TLS, certificate, header, DNS, and network posture.
- Windows console cybersecurity UI with top ASCII artwork
- White-on-black banner at the top of the console
- Automatic
requirements.txtinstallation on startup when packages are missing - Spinner/progress feedback while scans run
- HTTPS availability and certificate metadata
- Certificate validation findings for expiry, self-signed certs, hostname mismatch, untrusted issuers, weak keys, SHA1, and MD5
- TLS 1.0, 1.1, 1.2, and 1.3 probing with insecure protocol highlighting
- Negotiated cipher analysis with weak cipher detection
- HTTP security header checks with explanations
- HTTP to HTTPS redirect chain analysis
- HSTS parsing for max-age, includeSubDomains, and preload
- Mixed-content detection on the homepage
- DNS, WHOIS, GeoIP, and common web port checks
- Transparent 100-point score breakdown
- Human-readable risk summary and recommendations
- SQLite history, dashboard metrics, and search from the console
- Batch scanner for TXT/CSV domain lists
- Minimal runtime dependencies
git clone https://github.com/X3roxDev/https-security-checker.git
cd https-security-checker
py -3.12 -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -r requirements.txt
python main.pyIf py -3.12 is not available, install Python 3.12+ from python.org and ensure it is added to PATH. The app can also auto-install missing packages from requirements.txt when started directly.
app/
scanners/ Certificate, TLS, web, DNS/WHOIS/GeoIP/port scanners
console.py Windows console interface and artwork
storage/ SQLite history
main.py Application entry point
Some checks depend on optional network conditions and third-party data sources. WHOIS quality varies by TLD and registrar. OCSP responder presence is detected from the certificate, but OCSP stapling and live revocation status are reported as unavailable because Python's standard TLS client does not expose stapled OCSP responses.
