DNS隧道技术绕防火墙

Blood_Zero 2015-10-22 10:20:00

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隧道服务器存在于防火墙之后,这个时候我们就可以利用此种技术来绕过大部分的防火墙。并且可绕过不开端口,隐蔽性好等;

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

  • 目标机:192.168.10.133
  • DNS隧道服务端:192.168.10.135
  • DNS隧道客户端:192.168.10.134
  • DNS服务器:192.168.10.132

客户端监听数据如下:

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

而客户端与目标机之间的通信是DNS数据;

这就是简单的配置DNS隧道;

评论

L

lxj616 2015-10-22 15:14:20

iodine

网路游侠 2015-10-22 22:21:02

iodine可以通过一台DNS服务器制造一个IPv4数据通道,这个工具可帮助渗透测试人员用于穿越防火墙等情景。这款工具运行于 Linux, Mac OS X, FreeBSD, NetBSD, OpenBSD和Windows,并需要一个TUN/TAP设备。同时对带宽也有一定要求。 请叫我雷锋。

B

Blood_Zero

一个热爱安全的小菜鸟,不怕苦,不怕累!希望可以在安全这条路上走到底!

twitter weibo github wechat

随机分类

Java安全 文章:34 篇
其他 文章:95 篇
数据分析与机器学习 文章:12 篇
密码学 文章:13 篇
XSS 文章:34 篇

扫码关注公众号

WeChat Offical Account QRCode

最新评论

Article_kelp

因为这里的静态目录访功能应该理解为绑定在static路径下的内置路由,你需要用s

N

Nas

师傅您好!_static_url_path那 flag在当前目录下 通过原型链污

Z

zhangy

你好,为什么我也是用windows2016和win10,但是流量是smb3,加密

K

k0uaz

foniw师傅提到的setfge当在类的字段名成是age时不会自动调用。因为获取

Yukong

🐮皮

目录