CryptoNice is both a command line tool and library which provides the ability to scan and report on the configuration of SSL/TLS for your internet or internal facing web services. Built using the sslyze API and ssl, http-client and dns libraries, cryptonice collects data on a given domain and performs a series of tests to check TLS configuration and supporting protocols such as HTTP2 and DNS.
how to reproduce - just run with no parameters on a machine with nothing listening on port 443
Scanning localhost on port 443...
Analyzing DNS data for localhost
Fetching additional records for localhost
localhost resolves to 127.0.0.1
localhost:443 is closed
Traceback (most recent call last):
File "/usr/local/bin/cryptonice", line 8, in <module>
sys.exit(main())
File "/usr/local/lib/python3.7/site-packages/cryptonice/__main__.py", line 104, in main
output_data, hostname = scanner_driver(input_data)
File "/usr/local/lib/python3.7/site-packages/cryptonice/scanner.py", line 459, in scanner_driver
if jarm_data:
UnboundLocalError: local variable 'jarm_data' referenced before assignment
how to reproduce - just run with no parameters on a machine with nothing listening on port 443