hacktricks/network-services-pentesting/pentesting-vnc.md
carlospolop 63bd9641c0 f
2023-06-05 20:33:24 +02:00

3.4 KiB

5800,5801,5900,5901 - Pentesting VNC

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

Información básica

En informática, Virtual Network Computing (VNC) es un sistema de intercambio de escritorio gráfico que utiliza el protocolo Remote Frame Buffer (RFB) para controlar de forma remota otro ordenador. Transmite los eventos del teclado y del ratón de un ordenador a otro, retransmitiendo las actualizaciones de la pantalla gráfica en la otra dirección, a través de una red.
De wikipedia.

VNC suele utilizar los puertos 5800 o 5801 o 5900 o 5901.

PORT    STATE SERVICE
5900/tcp open  vnc

Enumeración

nmap -sV --script vnc-info,realvnc-auth-bypass,vnc-title -p <PORT> <IP>
msf> use auxiliary/scanner/vnc/vnc_none_auth

Fuerza bruta

Conectarse a VNC usando Kali

vncviewer [-passwd passwd.txt] <IP>::5901

Descifrando la contraseña de VNC

La contraseña por defecto se almacena en: ~/.vnc/passwd

Si tienes la contraseña de VNC y parece estar cifrada (unos pocos bytes, como si fuera una contraseña cifrada), probablemente esté cifrada con 3des. Puedes obtener la contraseña en texto claro usando https://github.com/jeroennijhof/vncpwd

make
vncpwd <vnc password file>

Esto es posible porque la contraseña utilizada dentro de 3des para cifrar las contraseñas VNC en texto plano fue revertida hace años.
Para Windows también puedes utilizar esta herramienta: https://www.raymond.cc/blog/download/did/232/
He guardado la herramienta aquí también para facilitar el acceso:

{% file src="../.gitbook/assets/vncpwd.zip" %}

Shodan

  • port:5900 RFB