agentleFS
Liberty91LTDLiberty91LTD/cti-skills/skills/malware-analysis/SKILL.md

malware-analysis

Skill35 starsChanged 44 days agoMITView on GitHub

Use when characterising a malware sample, the user asks "what does this binary do?" / "analyse this hash deeply", or `/hash-investigation` flags a novel sample warranting deeper review. Static + dynamic methodology, behavioural indicators, sandbox interpretation.

14 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use attack-chain, binary-diff and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • DorianGalloSkill

    attack-chain

    Also in 6 projects that use this

  • DorianGalloSkill

    binary-diff

    跨版本符号迁移与二进制差分。当你有旧版本的符号/逆向结果,需要快速迁移到新版本时使用。 适用场景:内核缺 PDB 用旧版符号推导、程序更新后批量迁移函数名、应用更新后快速定位新偏移。 核心方法:用 LLM 做结构化差异比对,程序化输入输出,成本极低(200 函数 ~1 元)。 触发关键词:符号迁移、bindiff、跨版本、PDB 缺失、函数偏移迁移、symbol migration、binary diff、版本对比。

    Also in 6 projects that use this

  • Roshu18Skill

    pentest-tools

    Tool selection policy for BearStrike based on target type, scan risk, and signal strength.

    Also in 6 projects that use this

  • hardw00tSkill

    llm-security

    LLM and AI application security testing skill for prompt injection (direct, indirect, multimodal), system-prompt extraction, RAG poisoning, memory poisoning, MCP server injection, skill-file injection, agentic tool misuse, computer-use UI injection, and excessive agency. Authorization required — this skill tests AI systems you are explicitly permitted to assess. Triggers on requests to test LLM / AI-agent / RAG / MCP / computer-use security, perform prompt injection, extract system prompts, poison RAG or memory, audit agent tool use, or evaluate AI guardrails.

    Also in 6 projects that use this

  • +8 more from DorianGallo

The file

We split this skill into the rules it gives an agent

2 rules. 0 are common, 2 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 6 edited versions we read keep these.

  • 2

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Compilation timestamp: When was it compiled? Anomalous dates suggest timestomping.

    line 16
  2. Distinctive:

    Run/RunOnce keys (persistence)

    line 59

“Common” is measured: kept by at least 6 in 10 of the 6 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Malware Analysis Guide

This skill provides analytical guidance for understanding malware samples. It does NOT execute malware — it tells you what to look for in analysis reports, sandbox results, and VirusTotal data.

Static Analysis

PE Header Analysis

  • Compilation timestamp: When was it compiled? Anomalous dates suggest timestomping.
  • Sections: Unusual section names (not .text/.data/.rss/.reloc) suggest packing or custom builders.
  • Entropy: High entropy (>7.0) in sections suggests encryption or compression (packed).
  • Imports: Key suspicious imports indicate behavior:
ImportIndicates
VirtualAlloc, VirtualProtectMemory manipulation (injection, unpacking)
CreateRemoteThread, WriteProcessMemoryProcess injection (T1055)
RegSetValueEx, RegCreateKeyExRegistry persistence (T1547)
InternetOpenUrl, HttpSendRequestNetwork communication (T1071)
CryptEncrypt, CryptDecryptEncryption (ransomware or C2 encryption)
CreateService, StartServiceService persistence (T1543)
AdjustTokenPrivilegesPrivilege escalation (T1134)
IsDebuggerPresent, CheckRemoteDebuggerPresentAnti-analysis (T1622)

String Analysis

Look for:

  • URLs, IP addresses, domain names (C2 infrastructure)
  • File paths (drop locations, persistence targets)
  • Registry keys (persistence mechanisms)
  • User-Agent strings (C2 communication patterns)
  • Encryption keys or encoded data
  • Error messages or debug strings (developer artifacts)
  • Mutex names (used to prevent multiple instances)

Packer Identification

Common packers: UPX, Themida, VMProtect, ASPack, MPRESS. Packed samples need unpacking before full static analysis. High entropy + few meaningful strings = likely packed.

Dynamic Analysis (Sandbox Interpretation)

Process Behavior

  • Child processes spawned (especially cmd.exe, powershell.exe, wscript.exe)
  • Process injection into legitimate processes (svchost, explorer, lsass)
  • Privilege escalation attempts
  • Anti-analysis checks (VM detection, sandbox detection, timing checks)

File System Activity

  • Files dropped (where? what type?)
  • Files modified (host files, configuration files)
  • Files deleted (covering tracks, removing competitors)

Registry Activity

  • Run/RunOnce keys (persistence)
  • Service creation (persistence)
  • Firewall rule modification (defense evasion)
  • Security tool disabling

Network Activity

  • DNS queries (C2 domains, DGA-generated domains)
  • HTTP/HTTPS connections (C2 communication, data exfiltration)
  • Raw TCP/UDP connections (custom protocol C2)
  • Certificate information (self-signed = suspicious)

Analysis Output Template

## Malware Analysis: [Sample Name/Hash]

### Sample Information
- SHA-256: [hash]
- File type: [PE/ELF/document/script]
- File size: [bytes]
- First seen: [date]
- Detection ratio: [X/Y from VT]
- Family: [if identified]

### Static Analysis Findings
- Compilation: [timestamp, language, compiler]
- Packing: [packer identified or unpacked]
- Key imports: [suspicious APIs]
- Notable strings: [C2, paths, keys, mutexes]

### Dynamic Behavior
- Execution chain: [parent → child processes]
- Persistence: [mechanism and location]
- C2 communication: [protocol, destination, pattern]
- Data collection: [what data is targeted]
- Defense evasion: [anti-analysis, obfuscation]

### MITRE ATT&CK Mapping
| Tactic | Technique | Observed Behavior |
|--------|-----------|-------------------|

### IOCs Extracted
| Type | Value | Context |
|------|-------|---------|

### Assessment
[What is this malware? What does it do? Who might use it? Confidence level.]

Tooling for the sections above

When the sample is available in ReversingLabs Spectra Analyze (A1000), /lookup-reversinglabs report <hash> --detailed is the single richest source for almost everything on this page — it returns vendor-authoritative classification, TitaniumCore static analysis (headers, imports, strings, packer detection), attack (auto-mapped MITRE ATT&CK tactics + techniques from observed behaviour), rl_cloud_sandbox (dynamic analysis output), and networkthreatintelligence (C2 indicators extracted from the sample). Use it to pre-fill the MITRE ATT&CK Mapping and IOCs Extracted tables in the output template before doing your own analysis. Pivot to siblings in the same family with /lookup-reversinglabs search 'threatname:<family> classification:malicious', and to parent/child relationships with containers / extracted.

Related skills

  • Sample triage before deep analysis — /hash-investigation for VT detection ratio, family attribution, behaviour tags, and pre-existing community context. If detection is high and family is known, the lookup may be sufficient.
  • Vendor-authoritative analysis — /lookup-reversinglabs report <hash> --detailed for classification, MITRE ATT&CK mapping, sandbox, and network indicators in a single call. Run this whenever RL credentials are configured — it shortcuts most of the manual static + dynamic interpretation below.
  • C2 and infrastructure extraction — /lookup-virustotal file <hash> --relationships contacted_ips,contacted_domains,contacted_urls,communicating_files,dropped_files,parent_files (VT) and /lookup-reversinglabs report <hash> --fields networkthreatintelligence (RL); pivot each via /indicator-pivoting
  • Vendor actor attribution — /lookup-crowdstrike indicator <hash> for the threat actors and malware family CrowdStrike Falcon Intel links to the sample, plus report references; then /lookup-crowdstrike ttps <actor> to pull that actor's ATT&CK technique set into the MITRE ATT&CK Mapping table. Run whenever CrowdStrike credentials are configured.
  • Community attribution — /lookup-otx file <hash> for pulses and YARA matches
  • First-party correlation — /lookup-liberty91 ioc-lookup <hash> for the platform's own verdict, then library malware --name "<family>" (or --alias for a vendor's name) and entity malware <id> --section techniques|iocs|threat-events for the canonical family record: dated ATT&CK observations, associated indicators, and the occurrences the family has been named in
  • Internal correlation — /lookup-misp search-attributes --value <hash> and/or /lookup-opencti lookup <hash> to surface prior catalogued intel; if the analysis produces new indicators worth keeping, /lookup-misp add-attribute / create-event and/or /lookup-opencti create-indicator
  • Ransomware-family lineage — /lookup-ransomwarelive yara <group> and iocs <group> provide a curated reference set if VT family classification points to a known group
  • Detection authoring — /yara-writing for family/sample rules; /sigma-writing for behavioural detection
  • Apply rigor — /score-source, /apply-tlp, /confidence-language

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.