0

Can nmap be used to enumerate tls ciphers against mysql service?

I am able to run testssl.sh to enumerator ciphers against mysql service, but running nmap does not enumerate ciphers (as shown below). I would prefer to run nmap, as it provides a clear "grade" per cipher.

Running nmap against port 3306 simply lists the state of the port, no additional information about ciphers:

nmap -sV --script ssl-enum-ciphers -p 3306 localhost

Starting Nmap 7.01 ( https://nmap.org ) at 2020-06-30 10:48 PDT
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000064s latency).
PORT     STATE SERVICE VERSION
3306/tcp open  mysql   MySQL 5.7.30-0ubuntu0.16.04.1
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.80 seconds

Running testssl.sh against port 3306 shows all the tls/cipher information:

./testssl.sh --starttls=mysql localhost:3306

Using "OpenSSL 1.0.2-chacha (1.0.2k-dev)" [~183 ciphers]
 on HOSTNAME:testssl.sh/bin/openssl.Linux.x86_64
 (built: "Jan 18 17:12:17 2019", platform: "linux-x86_64")
 Start 2020-06-30 10:44:39        -->> 127.0.0.1:3306 (localhost) <<--
 A record via:           /etc/hosts 
 rDNS (127.0.0.1):       localhost.
 Service set:            STARTTLS via MYSQL (experimental)
 Testing protocols via native openssl
 SSLv2      not offered (OK)
 SSLv3      not offered (OK)
 TLS 1      not offered
 TLS 1.1    not offered
 TLS 1.2    offered (OK)
 

and lists a bunch of extra information and individual supported ciphers
jzacharuk
  • 101
  • 2

1 Answers1

0

Nmap Scripting Engine (NSE) didn't support MySQL's SSL connection handshake until yesterday. Thanks for pointing it out! You can see the change here: https://github.com/nmap/nmap/commit/f491966ef21def276c0987a1ac1a0a0ff5c92b29

P.S. Nmap 7.01 is over 4 years old and doesn't have support for checking SSL configuration of VNC, MS SQL, NNTP, or LMTP either.

bonsaiviking
  • 4,420
  • 17
  • 26