Skip to content

feat: AVE-2026-00069 -- multimodal image-hidden instructions (SkillCamo) - #116

Merged
chaksaray merged 2 commits into
developfrom
feat/AVE-2026-00069-skillcamo-image-hidden-instructions
Aug 3, 2026
Merged

feat: AVE-2026-00069 -- multimodal image-hidden instructions (SkillCamo)#116
chaksaray merged 2 commits into
developfrom
feat/AVE-2026-00069-skillcamo-image-hidden-instructions

Conversation

@chaksaray

Copy link
Copy Markdown
Contributor

Summary

AVE-2026-00069: multimodal image-hidden instructions, "SkillCamo" (MEDIUM, AIVSS 4.8). Fourth of five records from the eight-candidate verification audit's genuine gaps.

Why this is a genuine gap

Instructions concealed in an image file bundled inside a skill package, invisible to text-only scanners (documentation, manifest, source code -- the surface every current skill scanner covers), recovered by a multimodal agent at deployment. Distinct from the 4 records the original keyword sweep surfaced:

  • AVE-2026-00037 (Multimodal Vision) and AVE-2026-00028 (File Content): both entry_class: user_input -- a user supplies the image/file mid-conversation. Here the payload ships inside the skill package itself, present before any user interaction at all.
  • AVE-2026-00039 (Covert Channel) and AVE-2026-00056 (Rendered Content Auto-Fetch): both exfiltration mechanisms, not instruction-hiding.

Sourcing

arXiv 2606.18198, "Seeing Is Not Screening: Multimodal Hidden Instruction Attacks on Agent Skill Scanners." SkillCamo conceals instructions in bundled images while rewriting surrounding documentation to naturally reference them; evaluated against real skill scanners including Cisco, Snyk, and SkillVetter. Also introduces ExecScan, a proposed defense.

Framework mappings, researched not assumed

  • mitre_atlas: ["AML.T0068"] confirmed precisely against MITRE's own ATLAS data repository: LLM Prompt Obfuscation explicitly names hiding instructions "in the pixels of an image" as an in-scope multimodal example.
  • owasp_mcp: ["MCP03"] (Tool Poisoning) and owasp_asi: ["ASI01", "ASI04"] (Agent Goal Hijack; Agentic Supply Chain Vulnerabilities) verified against each framework's own published category list -- ASI01 genuinely fits here, unlike the earlier mistaken use on AVE-2026-00067.
  • nist_ai_rmf: []: researched, no subcategory specific enough to bundled-resource multimodal scanning found with confidence rather than guessed.

Validation

  • python3 scripts/validate_records.py: all 66 records valid.
  • python3 scripts/check_fixtures.py: all 66 records have positive + negative fixtures.
  • pytest tests/ -x -q: 264 passed.
  • No vendor boilerplate, no "AVE Technical Writeup" reference.
  • node scripts/build-records.js: dist regenerated; frozen v1.1.0 snapshot untouched.
  • README badge/stats/index and CHANGELOG updated in this commit.

Scope notes

No detection-rule PR in bawbel/scanner -- separate tracker. One more record from the same audit sweep to follow.

Verified genuine gap: instructions concealed in an image bundled with
a skill package, invisible to text-only scanners (documentation,
manifest, source code), recovered by a multimodal agent at
deployment. Distinct from AVE-2026-00037 (image/vision prompt
injection at chat time, entry_class user_input) and AVE-2026-00028
(user-supplied file content): here the payload is a static resource
shipped inside the skill package itself, present before any user
interaction.

Sourced from arXiv 2606.18198 (SkillCamo / ExecScan), evaluated
against real skill scanners including Cisco, Snyk, and SkillVetter.

mitre_atlas confirmed precisely against MITRE's own ATLAS data
repository: AML.T0068 (LLM Prompt Obfuscation) explicitly names
hiding instructions 'in the pixels of an image' as an in-scope
multimodal example. owasp_mcp/owasp_asi researched against each
framework's primary source (MCP03 Tool Poisoning; ASI01 Agent Goal
Hijack -- genuinely verified this time, not pattern-matched; ASI04
Agentic Supply Chain Vulnerabilities). nist_ai_rmf left as a
researched empty array: no subcategory specific enough to
bundled-resource multimodal scanning found with confidence.
…9-skillcamo-image-hidden-instructions

# Conflicts:
#	CHANGELOG.md
#	README.md
#	dist/ave-records-latest.json
#	dist/ave-records-latest.manifest.json
@chaksaray
chaksaray merged commit 270a263 into develop Aug 3, 2026
6 checks passed
@chaksaray
chaksaray deleted the feat/AVE-2026-00069-skillcamo-image-hidden-instructions branch August 3, 2026 15:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant