Security Audit
jnMetaCode/superpowers-zh:skills/brainstorming
github.com/jnMetaCode/superpowers-zhTrust Assessment
jnMetaCode/superpowers-zh:skills/brainstorming received a trust score of 73/100, placing it in the Caution category. This skill has some security considerations that users should review before deployment.
SkillShield's automated analysis identified 2 findings: 0 critical, 2 high, 0 medium, and 0 low severity. Key findings include Unsanitized LLM-generated HTML leads to Cross-Site Scripting (XSS), Client-side data exfiltration possible via WebSocket after XSS.
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 March 25, 2026 (commit 03baa780). SkillShield performs automated 4-layer security analysis on AI skills and MCP servers.
Layer Breakdown
Behavioral Risk Signals
Security Findings2
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| HIGH | Unsanitized LLM-generated HTML leads to Cross-Site Scripting (XSS) The `pushScreen` function in `scripts/server.cjs` writes HTML content directly to a file (`screen-${Date.now()}.html`) without proper sanitization. This file is then served by the HTTP server and viewed in the user's browser. If the LLM is prompted to generate or inadvertently generates malicious HTML (e.g., `<script>alert(document.cookie)</script>`, `<img src=x onerror=alert(1)>`), this content will be executed in the user's browser, leading to Cross-Site Scripting (XSS). This allows an attacker to steal cookies, session tokens, or perform actions on behalf of the user. Implement robust HTML sanitization (e.g., using a library like `DOMPurify` on the server-side before writing to file) for all `htmlContent` generated by the LLM before it is written to disk and served. Alternatively, ensure the LLM is strictly constrained to generate only safe, declarative UI components that are then rendered by a secure templating engine, rather than raw HTML. | LLM | scripts/server.cjs:229 | |
| HIGH | Client-side data exfiltration possible via WebSocket after XSS The `scripts/helper.js` client-side script exposes a `window.brainstorm.send` function that allows sending arbitrary JSON objects back to the `server.cjs` via WebSocket. The `server.cjs` receives and logs these events. If an XSS vulnerability (as described in the previous finding) is exploited, malicious JavaScript injected into the user's browser can use `window.brainstorm.send` to exfiltrate sensitive client-side data (e.g., cookies, local storage, user-specific information) back to the server, where it is logged and potentially accessible. In addition to preventing XSS, ensure that any data received via `window.brainstorm.send` is strictly validated and sanitized on the server-side. Do not log or process arbitrary data from the client without explicit schema validation and security checks. Consider if `window.brainstorm.send` needs to be exposed for arbitrary data, or if its functionality can be limited to specific, predefined event types and data structures. | LLM | scripts/helper.js:65 |
Scan History
Embed Code
[](https://skillshield.io/report/9a72cadbf153b58b)
Powered by SkillShield