| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 内网隐蔽隧道之DNS隧道搭建(iodine) -> 正文阅读 |
|
[系统运维]内网隐蔽隧道之DNS隧道搭建(iodine) |
目录 DNS隧道DNS隧道(DNS Tunneling)是将其他协议的内容封装在DNS协议中,然后以DNS请求和响应包完成传输数据(通信)的技术。当前网络世界中的DNS是一项必不可少的服务,所以防火墙和入侵检测设备处于可用性和用户友好的考虑将很难做到完全过滤掉DNS流量,因此,攻击者可以利用它实现诸如远程控制,文件传输等操作,众多研究表明DNS Tunneling在僵尸网络和APT攻击中扮演着至关重要的角色。 DNS隧道依据其实现方式大致可分为直连和中继两类。 直连:用户端直接和指定的目标DNS服务器建立连接,然后将需要传输的数据编码封装在DNS协议中进行通信。这种方式的优点是具有较高速度,但蔽性弱、易被探测追踪的缺点也很明显。另外直连方式的限制比较多,如目前很多的企业网络为了尽可能的降低遭受网络攻击的风险,一般将相关策略配置为仅允许与指定的可信任DNS服务器之间的流量通过。 中继隧道:通过DNS迭代查询而实现的中继DNS隧道,这种方式及其隐秘,且可在绝大部分场景下部署成功。但由于数据包到达目标DNS服务器前需要经过多个节点的跳转,数据传输速度和传输能力较直连会慢很多。 实现DNS隧道的关键要点:
iodineiodine是基于C语言开发的,分为服务端和客户端。iodine支持转发模式和中继模式。其原理是:通过TAP虚拟网卡,在服务端建立一个局域网;在客户端,通过TAP建立一个虚拟网卡;两者通过DNS隧道连接,处于同一个局域网(可以通过ping命令通信)。在客户端和服务器之间建立连接后,客户机上会多出一块名为dns0的虚拟网卡。 环境搭建域名解析配置因为我们需要在自己的VPS上使用DNS服务,所以得先配置一下域名 —>?域名注册及域名解析 在添加A记录的基础上,再添加一个NS记录(将子域名指定其他DNS服务器解析,子域名字随便自己定)
此时,我们能ping通www.ssrc.top,说明A记录配置正确 ?然后在我们的VPS上执行以下命令监听UDP53端口
在任意一台机器上执行 ?nslookup 12.ssrc.top 命令,如果在我们的VPS监听的端口有查询信息,说明第二条记录设置成功 安装并启动服务器在vps中安装iodine的服务端,因为为linux系统,直接执行以下命令进行下载
执行以下命令启动服务端
运行之后VPS上会多一个虚拟网卡地址,地址为刚设置的地址 安装并启动客户端我们在受害者机器上运行客户端 客户端为linuxkali中自带了iodine,如果没有则先下载再进行安装:https://github.com/yarrick/iodine
然后执行下面命令连接服务端(需要root权限),如图连接成功。
如下,代表连接成功,此时服务端也会有数据反应 ?连接成功后,客户端上新建了一个dns0的网卡,IP地址为172.16.10.2,与服务端生成的虚拟网卡的地址处于同一网段 此时vps和客户端相当于处于同一内网环境 1. vps可以直接ping客户端地址172.16.10.2 ?2. vps访问内网的web服务 ?3. vps ssh连接客户端 客户端为windowsiodine.exe使用需要先安装TAP适配器,所以安装openvpn-install-2.3.13-I601-x86_64.exe,安装时只选择TAP Virtual Ethernet Adapte ?将iodine.exe以及dll文件上传到机器上(服务端使用iodined,客户端使用iodine) 安装完TAP后,执行
如下代表连接成功 ?此时能看出多出了一张网卡172.16.10.2 此时vps服务端能ping通客户端,但是客户端ping不同服务端不知道为啥 此时在客户端的网段连接中是看不到任何信息的 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 15:42:08- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |