New to Claude Skills? Learn how to install them →

mukul975 on GitHub

Analyzing CobaltStrike Profiles

Free

Parse and analyze Cobalt Strike profiles for detection.

Get this skill

Free · Opens the source repo

What Analyzing CobaltStrike Profiles does

The Analyzing CobaltStrike Malleable C2 Profiles skill is designed for security professionals who need to dissect and understand the complex configurations of Cobalt Strike's Malleable C2 profiles. These profiles are crucial for threat actors as they allow for customization of communication between the Beacon and the team server, often masquerading malicious traffic as legitimate service requests. This skill leverages the dissect.cobaltstrike and pyMalleableC2 libraries to facilitate the extraction of key network indicators, such as HTTP headers, URIs, and process injection behaviors, providing a structured approach to analyzing these profiles.

By utilizing this skill, users can effectively reverse-engineer captured Malleable C2 profiles, which is essential when building detection rules or threat-hunting queries. The skill allows for the identification of critical components like sleep intervals, jitter values, and user agent strings, which are vital for developing network detection signatures. The output is a comprehensive JSON report that includes extracted URIs, headers, and generated detection rules compatible with tools like Suricata and Snort, making it easier to implement security measures against potential threats.

This skill is particularly beneficial for SOC analysts and threat hunters who require a systematic method for validating security monitoring coverage and understanding the nuances of Cobalt Strike's communication methods. It provides the necessary tools to analyze and document findings, ensuring that security teams are well-equipped to respond to incidents involving Cobalt Strike traffic.

When to use it

Use this skill when investigating security incidents related to Cobalt Strike or when building detection rules for malicious network traffic.

When not to use it

This skill is not suitable for general-purpose network analysis or for users unfamiliar with Cobalt Strike and HTTP protocols.

What you can build with it

Incident Investigation

Use this skill to analyze Cobalt Strike profiles during security incident investigations, helping to identify malicious network behavior.

Building Detection Rules

Leverage the skill to extract indicators from Malleable C2 profiles, aiding in the creation of effective detection signatures for security tools.

Threat Hunting

Employ this skill in threat hunting scenarios to uncover hidden Cobalt Strike activities by analyzing network traffic patterns.

How to install Analyzing CobaltStrike Profiles

View source

1. Install with the skills CLI

npx skills add mukul975/anthropic-cybersecurity-skills/analyzing-cobaltstrike-malleable-c2-profiles --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by mukul975

Analyzing CobaltStrike Malleable C2 Profiles

Overview

Cobalt Strike Malleable C2 profiles are domain-specific language scripts that customize how Beacon communicates with the team server, defining HTTP request/response transformations, sleep intervals, jitter values, user agents, URI paths, and process injection behavior. Threat actors use malleable profiles to disguise C2 traffic as legitimate services (Amazon, Google, Slack). Analyzing these profiles reveals network indicators for detection: URI patterns, HTTP headers, POST/GET transforms, DNS settings, and process injection techniques. The dissect.cobaltstrike library can parse both profile files and extract configurations from beacon payloads, while pyMalleableC2 provides AST-based parsing using Lark grammar for programmatic profile manipulation and validation.

When to Use

  • When investigating security incidents that require analyzing cobaltstrike malleable c2 profiles
  • When building detection rules or threat hunting queries for this domain
  • When SOC analysts need structured procedures for this analysis type
  • When validating security monitoring coverage for related attack techniques

Prerequisites

  • Python 3.9+ with dissect.cobaltstrike and/or pyMalleableC2
  • Sample Malleable C2 profiles (available from public repositories)
  • Understanding of HTTP protocol and Cobalt Strike beacon communication model
  • Network monitoring tools (Suricata/Snort) for signature deployment
  • PCAP analysis tools for traffic validation

Steps

  1. Install libraries: pip install dissect.cobaltstrike or pip install pyMalleableC2
  2. Parse profile with C2Profile.from_path("profile.profile")
  3. Extract HTTP GET/POST block configurations (URIs, headers, parameters)
  4. Identify user agent strings and spoof targets
  5. Extract sleep time, jitter percentage, and DNS beacon settings
  6. Analyze process injection settings (spawn-to, allocation technique)
  7. Generate Suricata/Snort signatures from extracted network indicators
  8. Compare profile against known threat actor profile collections
  9. Extract staging URIs and payload delivery mechanisms
  10. Produce detection report with IOCs and recommended network signatures

Expected Output

A JSON report containing extracted C2 URIs, HTTP headers, user agents, sleep/jitter settings, process injection config, spawned process paths, DNS settings, and generated Suricata-compatible detection rules.

Frequently asked questions about Analyzing CobaltStrike Profiles

Similar skills