agentsclimarketplace

Extracting iocs from analysis output

Skill meltedinhex/analyst-ai-pack/skills/extracting-iocs-from-analysis-output

Extracts indicators of compromise from raw analysis artifacts: parsing strings dumps, sandbox reports, PCAP summaries, and logs for URLs, domains, IPs, hashes, mutexes, and file paths, then deduplicating and typing them. Activates for requests to extract IOCs from analysis output, pull indicators from a report, or harvest atomic indicators.From its SKILL.md

Install
npx -y skills add meltedinhex/analyst-ai-pack --skill extracting-iocs-from-analysis-output

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 19 stars19 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as Apache-2.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

2.8 KB, 442 tokens by cl100k_base, as published. Nobody here has run it

Extracting IOCs from Analysis Output

When to Use

  • You have raw analysis output (strings, sandbox JSON, PCAP notes, logs) and need the atomic indicators out of it.
  • You want a deduplicated, typed indicator set to feed enrichment, defanging, or detection.
  • You are building the indicator section of a report from analysis artifacts.

Do not use naive substring matching that produces noise — validate indicator shapes and filter obvious false positives (version strings that look like IPs, library domains).

Prerequisites

  • The analysis artifacts as text/JSON; the defanging skill for safe output.

Workflow

Step 1: Gather the artifacts

Collect strings output, sandbox report fields, network summaries, and relevant log excerpts into text the extractor can scan.

Step 2: Extract by pattern

Pull URLs, domains, IPv4 addresses, email addresses, and hashes (MD5/SHA-1/SHA-256) with validated patterns; also capture host artifacts (mutexes, registry keys, file paths) where the format allows.

python scripts/analyst.py extract analysis.txt

Step 3: Filter and deduplicate

Drop benign noise (Microsoft/CDN domains, localhost, RFC1918 where irrelevant) and deduplicate; keep a record of what was filtered and why.

Step 4: Type and hand off

Tag each indicator with its type and pass the set to enrichment/defanging for reporting.

Validation

  • Extracted indicators match valid shapes (no malformed IPs/hashes).
  • The set is deduplicated and obvious benign noise is filtered with a rationale.
  • Each indicator is typed and ready for enrichment/defanging.

Pitfalls

  • Capturing version numbers as IPs or library hostnames as C2.
  • Missing indicators split across lines or encoded (base64) in the artifacts.
  • Not recording what was filtered, losing analyst auditability.

References

What ships with it: 3 files

4.0 KB alongside SKILL.md, 1 of them executable

references/

scripts/

Keep looking

Skills are one crate of 326,970. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.