Trust Assessment
pdf-report-generator received a trust score of 66/100, placing it in the Caution category. This skill has some security considerations that users should review before deployment.
SkillShield's automated analysis identified 3 findings: 0 critical, 2 high, 1 medium, and 0 low severity. Key findings include Missing required field: name, Unsanitized user content in HTML generation, Arbitrary file write via Excel export.
The analysis covered 4 layers: Manifest Analysis, Static Code Analysis, Dependency Graph, LLM Behavioral Safety. All layers scored 70 or above, reflecting consistent security practices.
Last analyzed on February 13, 2026 (commit 13146e6a). SkillShield performs automated 4-layer security analysis on AI skills and MCP servers.
Layer Breakdown
Behavioral Risk Signals
Security Findings3
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| HIGH | Unsanitized user content in HTML generation The `to_html` method directly embeds user-provided content (e.g., `section.content` for text and table sections) into the generated HTML string without proper sanitization or escaping. An attacker could inject malicious HTML or JavaScript code into report sections, leading to Cross-Site Scripting (XSS) if the generated HTML is rendered in a web browser. This could allow data exfiltration, session hijacking, or other client-side attacks. If the host LLM is manipulated to provide this malicious content, it constitutes a prompt injection vulnerability. Implement HTML escaping for all user-provided content before embedding it into the HTML string. Use a library like `html.escape` or a templating engine that automatically escapes content to prevent XSS. | LLM | SKILL.md:210 | |
| HIGH | Arbitrary file write via Excel export The `export_to_excel` method accepts an `output_path` argument and writes an Excel file to this location without any path validation or restriction. An attacker, by manipulating the `output_path` argument (e.g., via prompt injection to the LLM calling this skill), could write files to arbitrary locations on the filesystem where the agent has write permissions. This could lead to data exfiltration (writing sensitive data to a public directory), denial of service (filling up disk space or overwriting critical system files), or other unauthorized file system modifications. Implement strict validation for `output_path`. Restrict output to a designated, sandboxed directory. Prevent directory traversal (`../`) and absolute paths. Consider returning the file content as bytes instead of writing to the filesystem directly, or requiring explicit user confirmation for file writes. | LLM | SKILL.md:269 | |
| MEDIUM | Missing required field: name The 'name' field is required for claude_code skills but is missing from frontmatter. Add a 'name' field to the SKILL.md frontmatter. | Static | skills/datadrivenconstruction/pdf-report-generator/SKILL.md:1 |
Scan History
Embed Code
[](https://skillshield.io/report/8c3f2ceccf8f12ff)
Powered by SkillShield