SSL Checker: collect SSL and TLS information

Share this with people that should know this:

It’s a simple script running in python that collects SSL/TLS information then it returns the group of information in JSON. It can also connect through your specified SOCKS server.

One of the good things about this script is that it will fully analyze the SSL certificate for security issues and will include the report in the output, CSV, HTML, or a JSON file.

What is SSL

An SSL connection means that the connections, for example for payment transactions and the sending of data with forms such as name, email, etc. from a website are secure. This is done by linking an SSL certificate to the website. This guarantees the privacy of visitors to the website. When the website is linked with an SSL certificate, it is recognizable because the URL is HTTPS. A non-secure connection is HTTP without the “s”, this “s” stands for secure. Because http and https is not displayed on a mobile, a lock has been added for the URL to make security more visible

Usage

The SSL checker tool is straight forward in the usage, and it contains a clear help interface.

./ssl_checker.py -h
usage: ssl_checker.py (-H [HOSTS [HOSTS ...]] | -f HOST_FILE) [-s HOST:PORT]
                      [-c FILENAME.CSV] [-j] [-S] [-x] [-J] [-a] [-v] [-h]

Collects useful information about given host's SSL certificates.

optional arguments:
  -H [HOSTS [HOSTS ...]], --host [HOSTS [HOSTS ...]]
                        Hosts as input separated by space
  -f HOST_FILE, --host-file HOST_FILE
                        Hosts as input from file
  -s HOST:PORT, --socks HOST:PORT
                        Enable SOCKS proxy for connection
  -c FILENAME.CSV, --csv FILENAME.CSV
                        Enable CSV file export
  -j, --json            Enable JSON in the output
  -S, --summary         Enable summary output only
  -x, --html            Enable HTML file export
  -J, --json-save       Enable JSON export individually per host
  -a, --analyze         Enable SSL security analysis on the host
  -v, --verbose         Enable verbose to see what is going on
  -h, --help            Show this help message and exit

Options

Port is optional in the SSL checker script. The script will use 443 if not specified.

  • -f, --host-file File containing hostnames for input
  • -H, --host Enter the hosts separated by space
  • -s, --socks Enable connection through SOCKS server
  • -c, --csv Enable CSV file export by specifying filename.csv after this argument
  • -j, --json Use this if you want to only have the result in JSON
  • -S, --summary This argument will show quick summary in the output
  • -x, --html Enable HTML file export
  • -J, --json-save Use this if you want to save as JSON file per host
  • -a, --analyze This argument will include security analyze on the certificate. Takes more time. No result means failed to analyze.
  • -v, --verbose Shows more output. Good for troubleshooting.
  • -h, --help Shows the help and exit

As a Python Module

Simply import the ssl_checker.py into your python script and use it as a module.

from ssl_checker import SSLChecker
SSLCheckerObject = SSLChecker()  

Download SSL checker

https://github.com/narbehaj/ssl-checker
Share this with people that should know this: