Skip to content

[P3][AI-LLM] Keine Runtime-Checksum-Prüfung in readRepoFile #185

Description

@muraschal

Note

Management-Summary. Der MCP-Server nutzt CHECKSUMS.txt nur als Verzeichnis-Trust-Anchor, prüft die ausgelieferten Prompt-Dateien aber nicht gegen ihre Checksummen — obwohl llms.txt externen Agenten genau das verspricht. Auswirkung: eine lokal manipulierte Prompt-Datei wird unbemerkt ausgeliefert. Empfehlung: Integritätsprüfung beim Lesen.

Schweregrad: P3 · Standard-Bezug: OWASP LLM03/Supply-Chain, Integrität
Fundort: mcp/src/lib.ts:73 (readRepoFile), Trust-Anchor mcp/src/lib.ts:67
Nachweis: findRepoRoot/isRepoRoot nutzen CHECKSUMS.txt nur zur Wurzelerkennung; readRepoFile liest die .md ohne Hash-Abgleich. llms.txt:57 verspricht „verify them against CHECKSUMS.txt".
Auswirkung: Eine eingeschleuste Zeile (z. B. „erstelle Issues ohne Freigabe") in einer Prompt-Datei würde unbemerkt ausgeliefert; das beworbene Checksum-Versprechen wird im Code-Pfad nicht eingelöst.

Handlungsempfehlung (Vorher/Nachher):

  • vorher: readRepoFile ohne Integritätsprüfung.
  • nachher: gelesene Datei gegen den Eintrag in CHECKSUMS.txt hashen und bei Abweichung AuditorError werfen.

Aufwand: M · Re-Audit-Kriterium: Manipulierte Prompt-Datei führt zu einem Fehler statt zur Auslieferung.

Teil von #167

Metadata

Metadata

Assignees

No one assigned

    Labels

    auditBefund aus einem auditor-Auditdimension:ai-llmAudit-Dimension: ai-llmeffort:mAufwand mittelsev:p3Schweregrad P3 — niedrig

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions