How to Validate Browser Security and SSL Capabilities Using The Book of Secret Knowledge

You can validate browser security and SSL capabilities using free online services like SSLLabs Client Test, How's My SSL, and sslClientInfo, alongside command-line utilities including ssllabs-scan, testssl.sh, and OpenSSL, all curated in the trimstray/the-book-of-secret-knowledge repository.

The the-book-of-secret-knowledge repository maintains a comprehensive collection of security tools and online services for inspecting TLS configurations. This guide covers both browser-side validation to check your client's cryptographic capabilities and server-side testing to verify the SSL/TLS implementation of remote hosts, using only the resources documented in the project's README.md.

Browser-Side SSL Validation Tools

The repository lists several zero-installation web services that analyze your browser's TLS handshake capabilities. These tools require only that you visit a specific URL with the target browser.

SSLLabs Client Test

The SSLLabs Client Test provides a detailed breakdown of which TLS versions, cipher suites, elliptic curves, and TLS extensions your browser supports. According to the source code analysis, this tool is referenced in README.md at line 448.

To use it, navigate to https://www.ssllabs.com/ssltest/viewMyClient.html. The service performs a series of TLS handshakes from its test server back to your browser and displays a comprehensive compatibility table.

How's My SSL?

How's My SSL? offers a quick snapshot of your browser's TLS version, supported cipher suites, and security headers. The entry appears in the README at line 53.

Visit https://www.howsmyssl.com/ to receive an instant security rating. The page uses JavaScript to initiate a TLS handshake with its server and reports whether your browser negotiates modern protocols or relies on deprecated versions.

sslClientInfo

The sslClientInfo service displays advanced TLS client capabilities including TLS 1.3 support, ALPN (Application-Layer Protocol Negotiation), and OCSP stapling availability. You can find this tool listed at line 54.

Access the service at https://suche.org/sslClientInfo to verify that your browser correctly implements modern TLS extensions required for optimal performance and security.

BrowserLeaks Web Browser Security

BrowserLeaks examines fingerprinting-related information that your browser leaks during TLS handshakes, including certificate details and TLS extension behavior. The repository references this tool at line 52.

Open https://browserleaks.com/ and navigate to the TLS/SSL section to analyze what identifying information your browser transmits during secure connections.

Server-Side TLS Validation for Comprehensive Testing

When you control the web service your browser connects to, validating the server's configuration ensures that your browser's capabilities align with available protocols and ciphers. The repository documents these utilities in README.md between lines 57-70.

SSLLabs Server Test and CLI Scanner

The SSLLabs Server Test performs deep analysis of remote TLS configurations, examining certificate chains, protocol support, cipher strength, and known vulnerabilities. For automation, the repository recommends ssllabs-scan, a command-line interface to the SSLLabs API referenced at lines 60-61.

Command-Line SSL Utilities

The README lists several terminal-based tools for enumerating supported ciphers and detecting common TLS weaknesses:

  • sslscan – Fast SSL/TLS scanner that lists supported cipher suites and certificate details
  • testssl.sh – Comprehensive bash script testing for over 600 TLS/SSL weaknesses
  • sslyze – Python tool for analyzing SSL configurations with Python API support
  • openssl s_client – Low-level TLS handshake utility for testing specific cipher suites or protocol versions

These tools appear in the SSL/Security section of the master list, providing options for CI/CD integration and scripted security auditing.

Practical Implementation Examples

Below are executable commands demonstrating how to automate SSL validation using the tools documented in the repository.

Automating Server Scans with ssllabs-scan

Install the CLI tool via pip and run automated assessments against target domains:


# Install the SSLLabs scanner

pip install ssllabs-scan

# Execute scan and output structured JSON

ssllabs-scan --quiet --host example.com --usecache --fromCache --json > ssllabs-report.json

# Extract supported protocols from the results

jq '.[]?.endpoints[]?.details?.protocols?.[]?.name' ssllabs-report.json

Testing Specific TLS Versions with OpenSSL

Use openssl s_client to verify support for specific cipher suites or protocol versions, as documented in the repository's command examples:


# Test TLS 1.3 connectivity with specific cipher

openssl s_client -connect example.com:443 -tls1_3 -cipher 'TLS_AES_256_GCM_SHA384' </dev/null 2>/dev/null | \
  grep "Cipher    :" || echo "Cipher not supported"

# Check server's certificate chain and TLS version

openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | openssl x509 -noout -text

Scripting Browser Capability Checks

While browser-side tools require a graphical interface, you can script server-side validation to verify what your browser should support:

#!/usr/bin/env bash

# Query howsmyssl.com API for TLS version (simulates browser check)

curl -s https://www.howsmyssl.com/a/check | jq '.tls_version'

# For headless browser automation, use Chrome to capture SSLLabs results

google-chrome --headless --disable-gpu --dump-dom https://www.ssllabs.com/ssltest/viewMyClient.html \
  | grep -oP 'TLS\s+[\d.]+' | sort -u

Summary

  • Browser validation requires no installation – Use SSLLabs Client Test, How's My SSL, sslClientInfo, and BrowserLeaks by simply visiting their URLs in the target browser, as listed in README.md lines 52, 53, 54, and 448.
  • Server-side testing ensures compatibility – Validate remote TLS configurations using SSLLabs Server Test, ssllabs-scan CLI, testssl.sh, or OpenSSL commands documented between lines 57-70.
  • Cross-reference capabilities – Compare your browser's supported cipher list against the server's offered protocols to identify potential connection failures or security weaknesses.
  • Automate with confidence – Use ssllabs-scan for CI pipelines and openssl s_client for low-level protocol testing using the exact tool references from the repository.

Frequently Asked Questions

What is the fastest way to check if my browser supports TLS 1.3?

Visit https://suche.org/sslClientInfo (referenced in the repository at line 54) or https://www.ssllabs.com/ssltest/viewMyClient.html (line 448). Both services display your browser's TLS version support within seconds without requiring any software installation.

Can I validate browser security from the command line without a GUI?

While browser-specific capabilities require a browser engine to test accurately, you can use curl with the howsmyssl.com API to check your system's TLS implementation: curl -s https://www.howsmyssl.com/a/check | jq '.tls_version'. For full browser fingerprinting, use headless Chrome or Firefox with the SSLLabs client test URL.

Which tool should I use to scan multiple servers automatically?

Use ssllabs-scan (documented at lines 60-61 of README.md) for automated API-based scanning, or testssl.sh for comprehensive bash-based testing without API rate limits. Both support JSON output for integration with monitoring systems and CI/CD pipelines.

How do I verify that my browser and server share compatible cipher suites?

First, run the SSLLabs Client Test in your browser to export your supported cipher list. Then use openssl s_client -connect yourserver.com:443 or sslscan yourserver.com to enumerate the server's offered ciphers. Compare the outputs to ensure overlap exists for at least one strong cipher suite (such as TLS_AES_256_GCM_SHA384 for TLS 1.3 or ECDHE-RSA-AES256-GCM-SHA384 for TLS 1.2).

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →