交叉链式寄生C2绕过流量检测&&白名单
Bat-Hibara 发表于 甘肃 安全工具 514浏览 · 2025-05-31 04:02

本文章仅供学习、研究、教育或合法用途。开发者明确声明其无意将该代码用于任何违法、犯罪或违反道德规范的行为。任何个人或组织在使用本代码时,需自行确保其行为符合所在国家或地区的法律法规。

开发者对任何因直接或间接使用该代码而导致的法律责任、经济损失或其他后果概不负责。使用者需自行承担因使用本代码产生的全部风险和责任。请勿将本代码用于任何违反法律、侵犯他人权益或破坏公共秩序的活动。本文章仅供学习、研究、教育或合法用途。开发者明确声明其无意将该代码用于任何违法、犯罪或违反道德规范的行为。任何个人或组织在使用本代码时,需自行确保其行为符合所在国家或地区的法律法规。

开发者对任何因直接或间接使用该代码而导致的法律责任、经济损失或其他后果概不负责。使用者需自行承担因使用本代码产生的全部风险和责任。请勿将本代码用于任何违反法律、侵犯他人权益或破坏公共秩序的活动。

开发目的

在红队攻防权限维持中,流量问题是一个无法被忽视的问题,作为红队的你肯定有过被白名单拦截,IP被抓到溯源的痛苦,本文通过链式寄生C2技术绕过流量检测达到防溯源,防白名单的效果,在EDR对抗中颇有成效。

关于传统C2

基础定义

C2(Command and Control)是网络攻击中的核心控制系统,攻击者通过该架构远程操纵被入侵设备。其本质是通过加密信道建立的 双向通信管道,允许攻击者发送指令并接收数据。

阶段一:基础设施搭建

图片加载失败


阶段二:载荷分发

图片加载失败


阶段三:通信建立

图片加载失败


技术演进(2018-2025)

阶段
技术特征
传统C2
HTTP明文通信,固定IP
隐蔽C2
DNS隧道+TLS加密,动态域名
云原生C2
滥用AWS Lambda/Azure Functions
无服务器C2
利用Telegram Bot/WebSocket通信

关于链式寄生C2

何为链式

链式,顾名思义,就是由多个转发节点构成一条C2传输链,层层传递,类似与多层代理,溯源难度几何倍数增长

何为寄生

寄生,是我形象的一种说法,具体利用原理为通过挂载在正常服务器(如gov edu 企业)等白名单IP下实现绕过白名单或流量检测,设想一下,安服zai在一天的流量分析中,看到了一条阿里的域名和IP的外联..

具体利用

a.单层评论区

总运行原理为:控制端给一个白名单评论区发送指令,被控端心跳检测这个评论区,获取发送的指令内容,然后执行,将回显发送到这个评论区,控制端进行查看

图下:

基于白名单评论区指令中转

图片加载失败


关键技术实现说明

1控制端与被控端无直连

使用白评论区做中间临时转接站,防止IP被直接抓到

心跳检测内容有没有更新,评论区内容可控,可删除,无痕操作

2心跳检测机制

模仿Chrome浏览器的HTTP请求头(包含Cookies和User-Agent)

随机化请求间隔(15-60秒)规避流量分析

1 指令执行可以用地狱之门HellsGate Antivirus Evasion

b.双层评论区-交叉链式

现在有两个评论区,分别为A和B,交叉,控制端给A评论区发送待执行指令,被控端检测A,执行读取的结果,被控端将执行后的返回结果发送给B评论区,控制端从B评论区读取信息

图下:

图片加载失败


C.web层漏洞

sql注入漏洞:

一个易于打SQL注入的站,找好点,控制端创一个新库或者在旧库进行修改,被控端sql查询即可。

优点是更加隐蔽

xss漏洞(略)

具体实现

壹·语雀文库--实现评论区A,即读取指令

t1·新建一个文档并且发布公开

图片加载失败


t2·测试评论区功能是否OK

图片加载失败


t3·C++实现读取评论区指令内容



a.开burp扫结构

图片加载失败
图片加载失败


图片加载失败


图片加载失败


b.读取网页(code by AI)

图片加载失败


c.提取内容(python)

d.进行整合

python'

图片加载失败


e.执行指令

初代:

图片加载失败


f.发送,看大贰板块

贰·微步X社区--实现评论区B,即发送回显

https://x.threatbook.com/v5/node/user/article/queryComments?shortThreatId=160183

t1·发布一个文章

在实战中,使用者应确保文章提前一段时间发送,避免吸引别人注意,并且要确保账号是空且干净的,你也不想被溯源到吧..

可以借鉴参考链接

t2·burp看token保存发包

图片加载失败


修改{"comment":"hi"重放测测效果
图片加载失败
图片加载失败


t3·融入代码,加入发包的内容

效果如下

图片加载失败


图片加载失败


至此,我们的项目完整雏形已经完成,接下来的大叄板块将解决一些细节问题,完善这个项目

叄·完善

1.心跳检测

图片加载失败
图片加载失败


2.定时删除,不留痕迹(微步)

先拦删除包,这个操作比较简单,心跳60发一次包即可

图片加载失败


然后加入代码,60秒发一次。

问题来了,评论ID是变的,我们抓到规律,它是一种计次的ID,那么我们可以第一次发送n,n+1,n+2,第二次发送n+1,n+2,n+3.

作者在这里并没有实验成功,有能力的大佬做出来更好方案的可以联系我,谢谢!Thanks♪(・ω・)ノ

3.传参加密

这个不赘余,不是本文核心

4.执行指令行为对抗

在语雀评论区发指令时直接发经过指令绕过的

在代码执行指令的时候用syscal什么玩意的给他过了

5.封包,静默,不赘余

0 条评论
某人
表情
可输入 255

没有评论