DNS tunnel的原理及实战

DNS tunnel的原理及实战

摘自:http://netsec.ccert.edu.cn/zhengming/2011/11/01/%E8%BD%AC%E8%BD%BD%EF%BC%9Adns-tunnel%E7%9A%84%E5%8E%9F%E7%90%86%E5%8F%8A%E5%AE%9E%E6%88%98/

什么是DNS tunnel?

DNS tunnel 即 DNS隧道。从名字上来看就是利用DNS查询过程建立起隧道,传输数据。

为什么使用DNS tunnel?

当你在酒店、机场等公共场所,通常有Wifi信号,但是当你访问一个网站时,如http://hi.baidu.com/, 可能会弹出个窗口,让你输入用户名、密码,登陆之后才可以继续上网(该技术一般为透明http代理,不在本文讨论范围之内,以后再讲)。这时,你没有账号,就无法上网。但是有时你会发现,你获取到得DNS地址是有效的,并且可以用以进行DNS查询,这时你便可以用DNS tunnel技术来实现免费上网了!

DNS tunnel的原理

首先,要知道DNS系统的工作原理,见:[DNS系统(服务器)的工作原理及攻击防护方法论] 。你在做 DNS 查询的时候,如果查的域名在 DNS 服务器本机的 cache 中没有,它就会去互联网上查询,最终把结果返回给你。如果你在互联网上有台定制的服务器。只要依靠 DNS 的这层约定,就可以交换数据包了。从 DNS 协议上看,你是在一次次的查询某个特定域名,并得到解析结果。但实际上,你在和外部通讯。你没有直接连到局域网外的机器,因为网关不会转发你的 IP 包出去。但局域网上的 DNS 服务器帮你做了中转。这就是 DNS Tunnel 了。

上 图简单介绍了DNS tunnel的原理。当你连接上wifi后,你可以使用DNS服务器,向这个服务器的53端口发送数据,请求一个域名,比如b.xxx.org 。这台DNS服务器上没有b.xxx.org,那么它将向root,也就是根域名服务器请求,看看根知道不。root一看是.org的域名,就交 给.org域名服务器进行解析。.org的域名服务器一看是.xxx.org那么就会去找.xxxi.org的域名服务器 (f1g1ns1.dnspod.net),看看它有没有这条记录。.xxx.org的域名服务器上一看是b.xxx.org,如果它有这 条A记录,那么就会返回b.xxx.org的地址。

但是,如果没有,你可以再在guanwei.org的域名服务器上设定一个NS 类型的记录人,如:xxx.org NS 111.222.333.444(通常这里不让设置为地址,那么也好办,你可以先在DNS服务器上添加一条A记录,如ns.xxx.org 111.222.333.444,再添加NS记录:guanwei.org NS ns.xxx.org),这里指定一个公网服务器,也就是上图绿色的服务器,这台服务器中跑着DNS tunnel的server端,是一台假的DNS服务器,他不会返回b.xxx.org的地址,但是它会将你的请求转发到已经设定的端口中,比如 SSH的22端口,22端口返回的数据它将转发到53端口返回给客户端(也就是你的电脑)。这时,你就可以用这台公网服务器的资源了,如果是一台http 或者sock代理,那么你就可以用这个代理免费上网了。

DNS tunnel实现的工具

DNS tunnel实现的工具有很多,比如:OzymanDNS、tcp-over-dns、heyoka、iodine、dns2tcp。由于BT4、5系统自带了dns2tcp工具。这里仅介绍dns2tcp的使用方法。

DNS2TCP的DNS tunnel实验

环境准备

一个已经申请好的公网域名,在这里我就用本blog的域名了xxx.org。给该域名指定一个DNS服务器(在域名管理的控制面板即可看到),本 环境为DNSpod的服务器:f1g1ns1.dnspod.net。一个公网服务器server(运行着BT4系统,主要使用里面的dns2tcpd V4程序)。这里使用局域网中的一台PC,在防火墙上做端口映射,将UDP的53端口映射出去。公网IP为111.222.333.444一 个客户端client(运行着BT4系统,主要使用里面的dns2tcpc V4程序)。这里模拟在机场的环境,能连接局域网(与上面的服务器不在一个局域网内,是另一个连接公网的局域网),能够获取到DNS服务器,如辽宁网通的202.96.64.68,并可以通过它进行DNS查询(测试方法:nslookup www.xxx.org 202.96.64.68,后面的域名服务器请根据实际情况替换)。

。。。可以让你实现一个反弹木马,可免费上网。

时间: 2024-10-12 20:51:45

DNS tunnel的原理及实战的相关文章

网络取证原理与实战

网络取证原理与实战 一.分析背景 网络取证技术通过技术手段,提取网络犯罪过程中在多个数据源遗留下来的日志等电子证据,形成证据链,根据证据链对网络犯罪行为进行调查.分析.识别,是解决网络安全问题的有效途径之一.目前,传统的计算机取证模型和方法比较成熟,而应用于大数据时代则需要OSSIM等集成分析平台对海量数据尽心网络取证分析. 二.取证分析特点 网络取证不同于传统的计算机取证,主要侧重于对网络设施.网络数据流以及使用网络服务的电子终端中网络数据的检测.整理.收集与分析,主要针对攻击网络服务(Web

DNS服务的原理与配置

DNS服务的原理与配置    DNS是一组协议和服务,基本功能是在主机名与对应的IP地址之间建立映射管理. *主机名便于记忆 *数字形式的IP地址可能会由于各种原因而改变,而主机名可以保持不变. DNS的组成           根域:就是"."(点号),由Internet名称注册授权机构管理,该机构把域名空间各部分的管理责任分配给了连接到Internet的各个组织. 顶级域:根域的下级域,由Internet名称授权机构管理,有两种常见类型. *组织域:采用三个字符的代号,标识DNS域

Keepalived原理与实战精讲

什么是Keepalived呢,keepalived观其名可知,保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,用来防止单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发生,那说到keepalived时不得不说的一个协议就是VRRP协议,可以说这个协议就是keepalived实现的基础,那么首先我们来看看VRRP协议 注:搞运维的要有足够的耐心哦,不理解协议就很难透彻的掌握keepalived的了 一,VRRP协议VRRP协议学过网络的朋友都知道,网络在设计的

Keepalived原理与实战

什么是Keepalived呢,keepalived观其名可知,保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,用来防止单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发生,那说到keepalived时不得不说的一个协议就是VRRP协议,可以说这个协议就是keepalived实现的基础,那么首先我们来看看VRRP协议 一,VRRP协议 VRRP协议学过网络的朋友都知道,网络在设计的时候必须考虑到冗余容灾,包括线路冗余,设备冗余等,防止网络存在单点故障,那在路由

DNS基本工作原理、及正反向解析、主从同步

dns基本工作原理 1.客户端:互联网上提出域名查询请求的终端. 2.根域名服务器:在"域名树"的顶端,一次完整的域名查询请求的入口. 3.子域:域名树的上下层级关系,下级是上一级的子域.如:www.autohome.com.cn. 是autohome.com.cn. 的子域. 4.子域授权:上一级域名将子域的解析授予固定的服务器,这一过程为子域授权. 5.权威域名服务器:"域名树"中的每一级域名解析服务器都是权威域名服务器.这个概念是相对于本地域名解析服务器的.

DNS基本工作原理,及正反向解析和主从同步测试

DNS基本工作原理 及正反向解析和主从同步测试 域名系统DNS是一个分布式数据库,它在本地负责控制整个分布式数据库的部分段,每一段中的数据通过客户服务器模式在整个网络上均可存取,通过采用复制技术和缓存技术使得整个数据库可靠的同时,又拥有良好的性能. 一.基本工作原理 域名是分层次的.最顶部是根域:这一域上的信息驻留在从整个Internet中所选的一些根服务器上.在根域下面是顶级域,也就是国家代码或机构代码.国家代码的例子有SG(新加坡)和CA(加拿大)等;而机构代码则包括众所周知的COM(商业机

+++++++DNS基本工作原理、DNS正反向解析及主从同步

dns基础工作原理 bind Berkerley Information Name Domain DNS Domain Name Server TCP/UDP 53 UDP 53 无连接协议,域名解析 TCP 53 面向连接协议,区域传送 历史IANA 统一名字,自己hosts中维护(%windows%/system32/etc/hosts, /etc/hosts) 统一维护,定时任务计划 统一查询,glibc共享库作为客户端基于UDP协议解析域名 hash 数值分布式 域名分布式:授权方式,将

DNS的工作原理、正反解析及子域委派

domain name server ----- 域名解析服务 DNS的工作原理:   正向解析 通过域名解析ip   反向解析 通过ip解析域名 BIND: Dns服务,程序包名bind,程序名named. 程序包,bind,bind-libs,bind-utils Bind-chroot:/var/named/chroot 服务脚本:/etc/init.d/named/start restart reload 主配置文件:/etc/named.conf,/etc/named.rcf1912.

Mysql主从复制原理加实战

前言:本文将介绍主从复制的作用,原理以及实战等内容 一,主从复制作用 MYSQL主从复制有利于数据库架构的健壮性,提升访问速度和易于管理 健壮性: 当主服务器出现问题,可以立刻切换到从服务器提供服务 1.主从服务器互为备份 但是异步同步,有时还是不能数据完全一样,当主挂了,只能把主的binlog拉到从库上,让从库不丢失数据 2.读写分离分担网站压力(读写分离数据库结构) 把更新数据操作交给主服务器,查询交给从服务器,如果网站以浏览为主的业务,这时多个从服务器的负载均衡就很有效了 中大型公司:通过