hacktricks/network-services-pentesting/pentesting-vnc.md
2023-08-03 19:12:22 +00:00

141 lines
6.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 5800,5801,5900,5901 - VNC渗透测试
<details>
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks云 ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
- 你在一家**网络安全公司**工作吗想要在HackTricks中看到你的**公司广告**吗?或者你想要**获取PEASS的最新版本或下载HackTricks的PDF**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)
- 发现我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品[**The PEASS Family**](https://opensea.io/collection/the-peass-family)
- 获取[**官方PEASS和HackTricks周边产品**](https://peass.creator-spring.com)
- **加入** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram群组**](https://t.me/peass) 或 **关注**我在**Twitter**上的[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
- **通过向[hacktricks仓库](https://github.com/carlospolop/hacktricks)和[hacktricks-cloud仓库](https://github.com/carlospolop/hacktricks-cloud)提交PR来分享你的黑客技巧。**
</details>
## 基本信息
在计算机领域,**虚拟网络计算****VNC**是一种使用远程帧缓冲协议RFB来远程控制另一台计算机的图形桌面共享系统。它将一个计算机的键盘和鼠标事件传输到另一台计算机然后将图形屏幕更新传回到另一台计算机通过网络进行中继。\
来自[wikipedia](https://en.wikipedia.org/wiki/Virtual\_Network\_Computing)。
VNC通常使用端口**5800或5801或5900或5901**。
```
PORT STATE SERVICE
5900/tcp open vnc
```
## 枚举
### VNC
Virtual Network Computing (VNC) 是一种用于远程控制计算机的图形化桌面共享系统。它允许用户通过网络连接到远程计算机,并在本地计算机上查看和操作远程计算机的桌面。
#### 端口扫描
使用端口扫描工具如Nmap扫描目标主机以确定是否开放了VNC服务。默认情况下VNC使用TCP端口5900和5901。如果发现这些端口开放则可能存在VNC服务。
```bash
nmap -p 5900-5901 <target_ip>
```
#### VNC协议版本
使用VNC协议版本扫描工具如vnccrack扫描目标主机以确定正在使用的VNC协议版本。不同的协议版本可能存在不同的漏洞和弱点。
```bash
vnccrack -t <target_ip>
```
#### VNC认证绕过
尝试使用常见的用户名和密码组合进行VNC认证。还可以尝试使用弱密码字典进行暴力破解。
```bash
vncviewer -passwd <password_file> <target_ip>:<port>
```
#### VNC截屏
使用VNC截屏工具如vncsnapshot获取远程计算机的屏幕截图。
```bash
vncsnapshot -passwd <password_file> <target_ip>:<port> <output_file>
```
#### VNC会话劫持
使用VNC会话劫持工具如vncinject劫持正在进行的VNC会话以获取远程计算机的控制权。
```bash
vncinject -passwd <password_file> <target_ip>:<port>
```
#### VNC漏洞利用
根据目标主机的VNC版本和已知的漏洞尝试利用已知的VNC漏洞进行攻击。
#### VNC字典攻击
使用VNC字典攻击工具如vncrack进行字典攻击以尝试破解VNC认证密码。
```bash
vncrack -u <username> -P <password_file> <target_ip>:<port>
```
#### VNC会话劫持
使用VNC会话劫持工具如vncinject劫持正在进行的VNC会话以获取远程计算机的控制权。
```bash
vncinject -passwd <password_file> <target_ip>:<port>
```
#### VNC漏洞利用
根据目标主机的VNC版本和已知的漏洞尝试利用已知的VNC漏洞进行攻击。
```bash
nmap -sV --script vnc-info,realvnc-auth-bypass,vnc-title -p <PORT> <IP>
msf> use auxiliary/scanner/vnc/vnc_none_auth
```
### [**暴力破解**](../generic-methodologies-and-resources/brute-force.md#vnc)
## 使用Kali连接到VNC
```bash
vncviewer [-passwd passwd.txt] <IP>::5901
```
## 解密VNC密码
默认的**密码存储在**\~/.vnc/passwd
如果你有VNC密码并且它看起来是加密的几个字节就像是一个加密的密码。它可能是使用3des进行加密的。你可以使用[https://github.com/jeroennijhof/vncpwd](https://github.com/jeroennijhof/vncpwd)获取明文密码。
```bash
make
vncpwd <vnc password file>
```
你可以这样做因为多年前已经破解了用于加密明文VNC密码的3DES密码。\
对于**Windows**,你还可以使用这个工具:[https://www.raymond.cc/blog/download/did/232/](https://www.raymond.cc/blog/download/did/232/)\
我也将工具保存在这里以便访问:
{% file src="../.gitbook/assets/vncpwd.zip" %}
## Shodan
* `port:5900 RFB`
<details>
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
- 你在一家**网络安全公司**工作吗想要在HackTricks中**宣传你的公司**吗?或者你想要**获取PEASS的最新版本或下载PDF格式的HackTricks**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)
- 发现我们的独家[NFT收藏品](https://opensea.io/collection/the-peass-family)——[**The PEASS Family**](https://opensea.io/collection/the-peass-family)
- 获取[**官方PEASS和HackTricks周边产品**](https://peass.creator-spring.com)
- **加入**[**💬**](https://emojipedia.org/speech-balloon/) [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass),或者**关注**我在**Twitter**上的[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
- **通过向[hacktricks repo](https://github.com/carlospolop/hacktricks)和[hacktricks-cloud repo](https://github.com/carlospolop/hacktricks-cloud)提交PR来分享你的黑客技巧**。
</details>