关于DNSStager
DNSStager是一个基于Python开发的开源项目,可以帮助广大研究人员使用DNS来隐藏和传输Payload。
DNSStager可以创建一个恶意DNS服务器,并负责处理我们域名相关的DNS请求,然后将Payload隐藏在响应中的指定记录请求中,比如说“AAAA”记录或“TXT”记录,而且DNSStager还会使用各种不同的算法来对Payload进行编码。
DNSStager能够生成基于C或Golang的自定义代理,主要负责解析一系列域名、获取Payload、解码Payload,并将其注入至内存中。
我们也可以根据自己的需要编辑DNSStager代理的代码。并使用自定义执行技术来构建代码。
DNSStager的主要目标就是帮助红队人员或渗透测试人员使用DNS作为隐蔽信道来传输Payload。

运行机制
根据你的DNS解析选项,DNSStager会对你的Payload进行分块,并将每一块以子域名响应的形式进行存储。
比如说,你选择使用IPv6选项来获取Payload,那么DNS响应将如下所示:
cloud-srv-1.test.mydnsserver.live. 300 IN AAAA 5648:31d2:6548:8b52:6048:8b52:1848:8b52
其中的“5648:31d2:6548:8b52:6048:8b52:1848:8b52”就是Payload的一部分。
因此,代理将会解析某些域名来获取Payload,然后对其进行解码,最终将其注入至内存中。
当前版本的DNSStager仅支持两种记录,即“AAAA”记录和“TXT”记录,你可以使用异或计算来对Payload进行编码(AAAA记录),如果你选择的是TXT记录的话,默认会使用Base64来进行编码。
DNSStager核心功能
在IPv6记录中隐藏和解析Payload;
在TXT记录中隐藏和解析Payload;
使用异或编码器编码Payload;
使用Base64编码器编码Payload;
纯C开发的代理,支持自定义配置;
纯Golang开发的代理,支持自定义配置;
支持在每个DNS请求间隔一定休眠时间;
更多功能即将上线…

工具要求
我们可以使用下列命令来安装DNSStager所需的Python依赖:
pip3 install -r requirements.txt
我们还需要安装Golang v1.16.3环境,并确保安装好了下列Golang包:
golang.org/x/sys
github.com/miekg/dns
除此之外,还需要安装好ming-w64:
apt install mingw-w64

工具安装
广大研究人员可以使用下列命令将该项目源码克隆至本地:
git clone https://github.com/mhaskar/DNSStager
接下来,我们还需要使用下列命令安装所需的依赖组件:
pip3 install -r requirements.txt

项目地址
DNSStager:https://github.com/mhaskar/DNSStager

使用DNSStager在DNS中隐藏Payload相关推荐

  1. VB在XP/2K 任务管理器的进程列表中隐藏当前进程

    新建一个模块,把以下代码复制进去,然后在load中调用即可实现隐藏当前进程的目的. Option Explicit '----------------------------------------- ...

  2. mysql隐藏密码_MySQL在Linux系统中隐藏命令行中的密码的方法

    在命令行中输入命令并不是一个好主意,会造成安全问题.但是如果你决定去写一个应用,而这个应用需要在命令行中使用密码或者其他敏感信息.那么,你能通过以下方法禁止系统的其他用户轻易的看到这些敏感数据 呢?, ...

  3. java 隐藏地址栏参数_要想在浏览器的地址栏上的URL中隐藏传输的参数,需要将form标签的method属性值设置为( )。 (5.0分)_学小易找答案...

    [填空题]若在JSP页面的不同作用域中有相同名称的对象,且EL表达式中又省略了相应的作用域类型名,则系统将会按照 . . . 的先后顺序查找相应对象. (20.0分) [简答题]AJAX异步请求过程中 ...

  4. 显示mac电脑中隐藏的文件和文件夹

    显示mac电脑中隐藏的文件和文件夹的办法:打开电脑,cd到相应的文件夹,输入以下命令,为显示隐藏的文件和文件夹 defaults write com.apple.finder AppleShowAll ...

  5. Paper:《Hidden Technical Debt in Machine Learning Systems—机器学习系统中隐藏的技术债》翻译与解读

    Paper:<Hidden Technical Debt in Machine Learning Systems-机器学习系统中隐藏的技术债>翻译与解读 导读:机器学习系统中,隐藏多少技术 ...

  6. 在控制台程序中隐藏控制台窗口

    在控制台程序中隐藏控制台窗口 大家都知道,当编写一个win32 console application时,当运行此类程序的时候 默认情况下会有一个类似DOS窗口的console窗口,但是有的时候我们只 ...

  7. Tips6:用[HideInInspector]在Inspector中隐藏变量

    你曾想要把某些公有变量在Inspetor面板中隐藏起来吗,这样很简单就能做到. 让我们来看以下代码: 1 using UnityEngine; 2 3 public class HidingScrip ...

  8. python 神经网络中隐藏层的作用是什么?

    引用文章1: hidden layer隐藏层的自我理解 https://blog.csdn.net/c45449210/article/details/82957455 引用文章2: 对隐藏层的简单理 ...

  9. DNS中实现父子域,以及授权和转发

    DNS中实现父子域,以及授权和转发 1:搭建实验环境 根据上面的实验环境来做这个实验 2:还是用上面实验192.168.100.60(在北京)创建的abc.com这个服务器做主DNS服务器和父域,新找 ...

  10. 隐藏在计算机网卡怎样删除,如何卸载电脑中隐藏的虚拟网卡设备

    虚拟网卡主要是建立远程计算机间的局域网,在此虚拟的局域网上能进行所有物理存在的局域网的操作,可以互相访问,可以联网玩游戏.当需要卸载电脑系统中的虚拟网卡时,在设备管理器中无法查看到虚拟网卡设备,那么怎 ...

最新文章

  1. js正则表达式/replace替换变量方法
  2. (如何从一个列表中随机抽样)np.random.choice(),random.sample()
  3. [转]symbian基本类型转换
  4. scala 学习笔记(07) 一等公民的函数
  5. The IEEE 802.15.4 MAC layer
  6. 2019年暑假慈溪集训(更新ing)
  7. 模块间接口设计的原则
  8. 数据库原理及应用【六】数据库设计
  9. ComponentOne FlexGrid for WinForms 中文版快速入门(4)--设置单元格格式
  10. 从 4 个月到 7 天:Netflix 开源自家框架 Metaflow,性能像坐上了火箭
  11. mysql 统计本月的_MySql查询当天、本周、本月、本季度、本年的数据
  12. 一套5A数据中心机房建设方案(143页),可作投标技术方案模板
  13. Kylin多维分析引擎(四):Kylin Cude构建流程详解
  14. 川希:哪些网站百度收录快排名好,高权重网站必收藏!
  15. uni-app学习笔记--浏览vue-cli创建uni-app模板的文件结构
  16. 使用 STM32 测量频率和占空比的几种方法
  17. 面试时被问“你的缺点是什么?”,这么答就对了
  18. Spring/SpringBoot学习中遇到的问题记录(2):java.lang.ClassNotFoundException:org.apache.jsp.WEB_002dINF.views.xx
  19. 大一期末程序课程设计 C/C++实现简单学生学籍管理系统
  20. 微信小程序商城高并发解决方案

热门文章

  1. python制作查询工具发给别人使用_Python 制作查询商品历史价格的小工具
  2. OpenCV-图像处理(21、霍夫圆变换)
  3. 高效能人士的七个习惯_如何成为高效能人士?——《高效能人士的七个习惯》读后感...
  4. html添加变量参数吗,动态CSS与变量参数? (可能吗?)
  5. c语言的程序扩展,C语言符号扩展
  6. sigmoid函数求导_吴恩达老师课程笔记系列第 28节 - 逻辑回归之代价函数 (4)
  7. imageio.write页面怎么显示_微信吃喝玩乐怎么没有了?微信支付页面吃喝玩乐在哪里...
  8. 鸿蒙系统在哪里,“安卓系统”和“鸿蒙系统”区别在哪里?网友:根本就是一个天上一个地下...
  9. 【CDOJ1330】柱爷与远古法阵(高斯消元+卡精度+概率dp?)
  10. spring 配置项 随机_Spring Boot--从配置文件中获取随机数