前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >DNS隧道技术绕过防火墙

DNS隧道技术绕过防火墙

作者头像
Power7089
发布2020-12-11 15:35:56
1.1K0
发布2020-12-11 15:35:56
举报

文章来源:LemonSec

0x01 概念

隧道技术(Tunneling)是一种通过使用互联网络的基础设施在网络之间传递数据的方式。使用隧道传递的数据(或负载)可以是不同协议的数据帧或包。隧道协议将其它协议的数据帧或包重新封装然后通过隧道发送。新的帧头提供路由信息,以便通过互联网传递被封装的负载数据。

0x02 实例分析- DNS隧道技术

环境:客户机(Kali)+DNS服务器(window2003)+目标机(redhat7)

DNS服务器:192.168.10.132

1、新建一个名字为”bloodzero.com”的正向解析域

2、新建一个主机:IP为攻击者kali的IP

3、新建一个委托

此时我们的DNS服务器就配置好了!

Kali:攻击者&&客户端 192.168.10.135

1、攻击端配置:

修改dns2tcpd配置文件:

resources的IP为目标机的IP

启动dns隧道的服务端

2、客户端配置

删除ssh连接的known_hosts文件

修改DNS解析文件:vim /etc/resolv.conf

配置dns隧道客户端程序

在kali2.0中,没有配置文件,需要自己写配置文件

vim /etc/dns2tcpc.conf

测试是否可以提供服务

这个时候我们就已经配置成功了!

成功效果

0x03 分析结论

这个时候的流量走向:

本文中介绍的是DNS隧道服务器,和DNS隧道客户端是同一台机器,并不能说明问题,当DNS隧道服务器存在于防火墙之后,这个时候我们就可以利用此种技术来绕过大部分的防火墙。并且可绕过不开端口,隐蔽性好等;

这里我使用另外一台客户机去连接目标机时,服务端监听的数据如下:

代码语言:javascript
复制
目标机:192.168.10.133
DNS隧道服务端:192.168.10.135
DNS隧道客户端:192.168.10.134
DNS服务器:192.168.10.132

客户端监听数据如下:

发现能够监听到的ssh数据包是DNS隧道服务端与目标机之间的通信;

而客户端与目标机之间的通信是DNS数据;这就是简单的配置DNS隧道;

一如既往的学习,一如既往的整理,一如即往的分享。感谢支持

版权申明:内容来源网络,版权归原创者所有。除非无法确认,都会标明作者及出处,如有侵权烦请告知,我们会立即删除并致歉。祝每一读者生活愉快!谢谢!

代码语言:javascript
复制
↑↑↑长按图片识别二维码关註↑↑↑
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-12-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员阿甘 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x01 概念
  • 0x02 实例分析- DNS隧道技术
    • DNS服务器:192.168.10.132
      • Kali:攻击者&&客户端 192.168.10.135
        • 成功效果
        • 0x03 分析结论
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档