概述
目录
- 一、准备工作
- 二、域名设置
- 三、cs上线
- 四、DNS over Https
Dns Over Https
一、准备工作
1)域名
2)vps(53端口打开)
3)cobalt strike 4.0
二、域名设置
1)设置解析
记录类型:
A:用来指定域名的IPv4地址(如:8.8.8.8),如果需要将域名指向一个IP地址,就需要添加A记录。
NS:域名服务器记录,如果需要把子域名交给其他DNS服务商解析,就需要添加NS记录。
A记录设置成vps的ip,cs也配置在vps上
域名是suxxxat.site,绑定vps的ip
配置几个ns记录
配置完成之后ping www.suxxxcat.site 可以ping通
防火墙(安全组)开放DUP端口53
停掉vps的53端口服务
lsof -i:53查看53端口占用
出现的进程全部kill掉
2)设置cs
cs设置监听
改用cs4.0尝试
生成监听器
3)nslookup查看
自己测试的时候没有显示address:0.0.0.0
三、cs上线
生成cs的上线马,执行上线
上线之后是黑框,需要执行checkin,过一会正常
执行whoami命令成功
【捕捉到流量数据】
四、DNS over Https
1、安装工具TitanLdr
项目地址:https://github.com/kyleavery/TitanLdr
TitanLdr工具使用C编写,需要编译才能使用(一般步骤,没有成功)
下载TitanLdr工具
$apt-get install gcc-mingw-w64 【不成功请科学上网】
$cd TitanLdr-master
$make
2、编译(实际操作过程-踩坑记录)
1)gcc-mingw-w64和gcc安装
2)NASM安装
3)python3.8安装
4)make编译
1)gcc-mingw-w64安装失败,使用aws主机可以安装成功(香港主机自带翻墙属性)
$sudo apt install gcc-mingw-w64
$sudo apt insatll gcc
2)安装NASM(汇编环境搭建)
https://www.nasm.us/pub/nasm/releasebuilds/2.14.02/nasm-2.14.02.tar.gz
下载nasm
$./configure
$make
$sudo make install
安装完成之后
$nasm --version
3)安装python3.8并且配置好pip
4)make编译
进入TitanLdr目录下make【过程报错python缺少的库文件pip挨个下载补上】
3、CS上线
1)cs安装TitanLdr插件
编译好的TitanLdr工具放在客户端,在cs上script manager安装TitanLdr.cna
2)创建监听器
53端口不能被占用
3)生成木马上线
4、流量分析
Beacon运行之后,看到只进行了DNS请求用来解析DOH服务器,之后的所有的通信流量都使用HTTPS进行了加密。该流量情况和单纯地dns隧道流量有明显的区别,DNS隧道建立的通信主要使用DNS协议,没有TLS的流量。
这里出现了国外的ip通信,考虑可能是两方面原因,一是我使用的腾讯云服务器进行的操作,不排除腾讯云本身有使用cdn的功能,二是由于工具编译环境安装限制,我在aws的vps上进行的编译,然后下载到本地使用,TitanLdr工具是否会绑定和服务器相关联的属性尚不得知。
思考:
1.即使是使用HTTPS加密通信,但是仍然需要和DOH服务器建立通信,检测手段可以从这几个DNS包着手,静态特征匹配黑域名或者黑ip。
2.或者根据连接建立之后的行为进行判断,只是这个方法会相对较难。
3.传统检测DNS隧道的一个重要手段是判断是否有大量的DNS协议交互,从这点考虑DOH可以很好的避免。
4.同时时间是一个明显的短板,由于DNS TXT最多只能放置255个字符,所有通讯时间相对较长,实验时等待时间较长。
参考:https://www.blackhillsinfosec.com/dns-over-https-for-cobalt-strike/
参考:https://www.freebuf.com/articles/web/256032.html
参考:https://www.cnblogs.com/Feii/p/13080324.html
久违
2022.2.10
最后
以上就是拼搏水蜜桃为你收集整理的【渗透测试】CS DNS上线(DoH隧道技术实践浅析)的全部内容,希望文章能够帮你解决【渗透测试】CS DNS上线(DoH隧道技术实践浅析)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复