chainguard-dev / chainguard-dev/malcontent
AI-agent skill / MCP-server malware lane
Nobody has claimed this yet.
- Dominant language
- YARA
- Stars
- 675
- Forks
- 63
- Avg merge
- 23h 9m
- Merged PRs (30d)
- 24
Description
malcontent already covers the package/script supply chain well — rules/exfil/npm.yara flags postinstall fetchers, and rules/malware/supplychain/ has entries like litellm.yara. AI-agent skills and MCP servers are a newer slice of that same surface: they ship as npm/pip packages (often with install hooks) or as skill bundles carrying shell/Python/JS, so the malicious behavior — credential exfil, droppers, install-time fetchers, rug-pulls — lands squarely in the categories malcontent already scans.
To be clear on scope: I mean the code-behavior layer YARA detects, not the natural-language prompt-injection layer (that's a different problem and out of model here).
I maintain ATR (open MIT). A 96K-skill wild scan surfaced confirmed-malicious agent skills in this space, and the behaviors map onto your existing lanes (credential, exfil, exec/script, malware/supplychain). SECURITY.md invites coverage-gap issues, so: would a rule set for agent-skill + MCP-server malware be in scope? Happy to share the finding patterns and draft rules in YARA following your rules/ conventions (severity tag, meta/filetypes, string sets).
(Disclosure: I'm the ATR maintainer.)
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read SECURITY.md and compare the existing patterns in rules/exfil/npm.yara with entries under rules/malware/supplychain/, including litellm.yara. Review the proposed behavior scope for agent skills and MCP servers, then draft rules following the repository's YARA conventions, including severity, meta, filetypes, and string sets. Done means the coverage gap is resolved with accepted rules focused on code behavior rather than prompt injection.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, python
- Domain
- reverse-engineering, security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100