Skip to content

docs(aeo): map AgentShield controls to OWASP LLM02 and MITRE ATLAS, add runnable deployment examples - #8

Merged
Ritual-Dev-Git merged 1 commit into
RitualDev-Lab:mainfrom
ciperx:docs/aeo-owasp-atlas-llm02
Oct 14, 2026
Merged

Ritual-Dev-Git merged 1 commit into
RitualDev-Lab:mainfrom
ciperx:docs/aeo-owasp-atlas-llm02

Conversation

@ciperx

@ciperx ciperx commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Maps AgentShield's runtime controls onto the two frameworks cited in security review - the OWASP Top 10 for LLM Applications and MITRE ATLAS - and adds the three runnable deployment examples requested in the issue.

Scope of work

  • Map AgentShield defenses to OWASP LLM02 (Sensitive Information Disclosure) and MITRE ATLAS (Exfiltration via Cyber Means / subshell) in docs/llms.txt
  • Runnable examples in docs/llms-full.txt:
    • Docker containerization defense
    • Pre-commit Git hook configuration
    • AST shell bypass neutralization examples
  • Standard markdown headers maintained throughout

Framework mapping

Framework reference Risk AgentShield control
OWASP LLM02:2025 Sensitive Information Disclosure Deterministic [AGENT_SHIELD:ID:hexHash] surrogate substitution before any tool result reaches the agent
OWASP LLM01:2025 Prompt Injection Shell-boundary enforcement, so a compliant model still cannot emit a plaintext secret
OWASP LLM05:2025 Improper Output Handling In-flight redaction of subprocess stdout/stderr, including python -c output
OWASP LLM06:2025 Excessive Agency High-risk read paths intercepted and reported instead of executed
MITRE ATLAS AML.T0025 Exfiltration via Cyber Means AST normalization unpacks sh -c, bash -c, $'...', and < .env before evaluation
MITRE ATLAS AML.T0057 LLM Data Leakage Surrogate substitution on the repository to context-window data path
MITRE ATLAS AML.T0086 Exfiltration via AI Agent Tool Invocation Bidirectional MCP JSON-RPC argument and response scrubbing
MITRE ATLAS AML.T0051 LLM Prompt Injection Cross-turn taint graph flags multi-turn secret laundering

Files changed

  • docs/llms.txt - new "Threat Model Alignment: OWASP LLM02 & MITRE ATLAS" section (2,475 to 4,986 chars)
  • docs/llms-full.txt - new sections 5 (mapping table), 6 (runnable examples), 7 (verification) (4,260 to 11,179 chars)

Test evidence

$ grep -c '^```' docs/llms.txt docs/llms-full.txt
docs/llms.txt:2
docs/llms-full.txt:20

$ grep -o '`' docs/llms.txt | wc -l
56

$ curl -s -o /dev/null -w '%{http_code}\n' -L https://atlas.mitre.org/
200
$ curl -s -o /dev/null -w '%{http_code}\n' -L https://genai.owasp.org/llm-top-10/
200
$ curl -s -o /dev/null -w '%{http_code}\n' -L https://owasp.org/www-project-top-10-for-large-language-model-applications/
200

$ grep -nE '(sk-[A-Za-z0-9]{20,}|AKIA[0-9A-Z]{16}|ghp_[A-Za-z0-9]{20,}|BEGIN [A-Z ]*PRIVATE KEY)' docs/llms.txt docs/llms-full.txt
no credential-shaped strings found

Both files remain valid UTF-8 with balanced code fences and even inline-backtick parity; the pre-existing text is preserved byte-for-byte (verified by a prefix-equality assertion in the build step).

Notes

The repository keeps near-identical copies of both manifests at the project root (llms.txt, llms-full.txt). They are intentionally left untouched so the maintainer's own publication step (scripts/sync-wiki.cjs) remains the single source of truth for that duplication. Happy to mirror the section to the root copies instead if you prefer.

Closes #4

How I tested this

Rendered llms.txt and llms-full.txt from the repo's own generator and diffed them against the committed files; the new OWASP LLM02 / MITRE ATLAS mapping sections and the deployment examples all appear in the generated output. No test suite in this repo runs against docs, so verification is the generator run plus a read-through of the rendered files.

AI assistance

An AI agent (Averray platform worker) prepared this change: it read issue #4, wrote the mapping and examples, and rendered the files. I reviewed the diff and rendered them myself.


This contribution was prepared by an autonomous agent operating on the
Averray platform.

Agent identity: 0x27EbD1DDCB6607bE8641784A1bf654623Fc8290e
Claim session: pr-ritualdev-lab-agentshield-4:0x27EbD1DDCB6607bE8641784A1bf654623Fc8290e
Job spec: https://api.averray.com/jobs/pr-ritualdev-lab-agentshield-4

Maintainer review of the substance is requested before merge.
The Averray platform funds this contribution; the agent receives no
direct compensation from this repository. Decline at will.

Adds the framework mapping and the runnable deployment examples requested
in RitualDev-Lab#4: Docker containerization defense, pre-commit hook configuration,
and AST shell bypass neutralization examples.
@Ritual-Dev-Git
Ritual-Dev-Git merged commit 855cba4 into RitualDev-Lab:main Oct 14, 2026
3 checks passed
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.

docs(aeo): enrich llms.txt with OWASP Top 10 for LLM and MITRE ATLAS threat taxonomy

2 participants