VNC Authentication Probing
VNC auth “probing” is reading the RFB security types the server offers. That tells you if the desktop is open, password-gated, or wrapped in TLS or vendor auth before you waste time with the wrong client.
Fast path
Probe a single port:
PORT STATE SERVICE 5900/tcp open vnc | vnc-info: | Protocol version: 3.889 | Security types: | Mac OS X security type (30) |_ Mac OS X security type (35)
Probe common displays:
vnc-info returns the RFB version and supported security types.
Interpreting security types
The decision point is the security type list. Common values you’ll see in the wild:
1 None
No authentication at the VNC layer.
Next move: connect with a viewer immediately and validate you get a desktop.
2 VNC Authentication
Classic VNC password challenge-response.
Next move: credential validation or controlled password auditing.
18 TLS / 19 VeNCrypt
You need a client that supports the offered crypto wrapper.
Next move: try a modern viewer and don’t assume “not reachable” if your first client errors.
If you want the protocol-level meaning of “None” vs “VNC Authentication”, RFC 6143 is the authoritative reference.
Confirm with a real viewer
Nmap tells you what’s offered. A viewer tells you what works and whether you land on a usable desktop.
TigerVNC vncviewer will prompt for a password if required.
What to do with the behavior:
Immediate desktop without a prompt usually matches
None.Password prompt matches VNC Authentication or a compatible extended type.
“No matching security types” means the server offered types your client doesn’t support. Switch client or tune security options instead of assuming it’s dead.
Detect “no-auth VNC” quickly across many hosts
When you’re sweeping a network, you’re often hunting for None first.
This is usually enough to prioritize immediate interactive access attempts.
Edge cases
Viewer says “No matching security types”
That’s almost always client capability mismatch, not “wrong creds”. The server is advertising security types your viewer can’t do. Use vnc-info to see what’s being offered, then switch viewers or enable support for that type.
Port is open but no RFB banner
If you don’t see an RFB version string with a raw connect, you’re probably not talking to VNC on that port.
If it’s VNC, you should see RFB 003.xxx early in the handshake.
Legacy
Notice
RealVNC auth-bypass checks target a very old RealVNC issue (CVE-2006-2369). Keep it as a quick legacy sanity-check, not a primary path.
References
-
vnc-info NSE scriptnmap.org/nsedoc/scripts/vnc-info.html (opens in new tab)
Enumerates RFB version and supported security types
-
RFC 6143 (RFB)datatracker.ietf.org/doc/html/rfc6143 (opens in new tab)
Security handshake semantics for None vs VNC Authentication
-
IANA RFB Registrywww.iana.org/assignments/rfb/rfb.xhtml (opens in new tab)
Security type value mappings (None, VNC Auth, TLS, VeNCrypt)
-
TigerVNC vncviewertigervnc.org/doc/vncviewer.html (opens in new tab)
Viewer behavior and password prompting
-
realvnc-auth-bypass NSE scriptnmap.org/nsedoc/scripts/realvnc-auth-bypass.html (opens in new tab)
Legacy auth bypass check for RealVNC
Was this helpful?
Your feedback helps improve this page.