drawio-diagrams

Pass

Audited by Gen Agent Trust Hub on Aug 31, 2026

Risk Level: SAFECOMMAND_EXECUTIONEXTERNAL_DOWNLOADSINDIRECT_PROMPT_INJECTIONDYNAMIC_EXECUTION
Full Analysis
  • [COMMAND_EXECUTION]: The skill facilitates the execution of various local tools to support its primary function. This includes running the drawio desktop CLI for rendering diagrams, executing Node.js helper scripts for capability probing and path management, and invoking system browsers (Chrome/Chromium/Edge) for themed SVG rasterization.
  • [EXTERNAL_DOWNLOADS]: The skill provides documentation and scripts for fetching external resources from trusted services. It includes a command to download a shape index from a public GitHub repository (jgraph/drawio-mcp) and describes looking up architecture icons from well-known registries like Lobe Icons and Simple Icons. These actions are documented as requiring explicit user approval and are scoped to the skill's functional requirements.
  • [INDIRECT_PROMPT_INJECTION]: The skill processes untrusted user-supplied or repository-resident .drawio XML files. To mitigate injection attacks, it employs a multi-stage validation pipeline (preflight-drawio-xml.mjs and validate_drawio.py) that strictly rejects dangerous XML constructs such as XXE-prone DOCTYPE declarations, comments, and processing instructions. Additionally, the SVG rasterizer (rasterize-themed-svg.mjs) performs a deep recursive inspection of embedded SVG content, disabling JavaScript and rejecting remote assets before rendering.
  • [DYNAMIC_EXECUTION]: The probe-drawio-toolset.mjs script dynamically locates and executes version-check commands for various binaries (Python, Node.js, draw.io, browsers) to generate a capability receipt. The render-drawio.mjs script uses a descriptor-anchored "transactional rendering" approach on Linux to ensure that the files being committed are the exact ones that were validated, effectively mitigating filesystem race condition attacks.
  • [SAFE]: The skill demonstrates a high level of security maturity by implementing defense-in-depth measures, including input sanitization, isolated browser environments for rendering, and strict adherence to official logo preservation policies to prevent brand-based phishing or misinformation.
Audit Metadata
Risk Level
SAFE
Analyzed
Aug 31, 2026, 09:51 AM
Security Audit — agent-trust-hub — drawio-diagrams