Back to skill

Security audit

Founder Article

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly a coherent business-article generator, but its optional GitHub Pages publishing and PDF conversion behavior need review before use.

Install only if you are comfortable reviewing every publish action first. Keep sensitive drafts local, require explicit confirmation before GitHub repository or Pages deployment, verify whether the repo/site will be public, and avoid running the PDF converter on untrusted HTML unless it is isolated.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T09 · Insecure Skill Coding Practices

Warning
Location
scripts/html-to-pdf.sh:43
Finding

Chromium Sandbox Disabled While Rendering Potentially Untrusted HTML

Content
View full analysis
/dev/null ``` ### Technical Analysis The PDF conversion script accepts a caller-supplied HTML file and opens it in headless Chrome or Chromium with the `--no-sandbox` option. HTML documents may contain JavaScript, embedded frames, active browser content, and references to remote resources. The Chromium sandbox is a defense-in-depth boundary intended to contain compromised renderer processes. Disabling it does not directly grant code execution, but it substantially increases the impact of a successful Chromium vulnerability. If attacker-controlled HTML exploits a browser rendering or JavaScript-engine vulnerability, the compromised renderer will not be contained by Chromium's normal process sandbox. The script also does not otherwise isolate the browser process or restrict the input document's network access. Therefore, untrusted documents should not be rendered using this configuration. ### Attack Path 1. An attacker creates an HTML document containing content that exploits a vulnerability in the installed Chrome or Chromium version. 2. The attacker persuades a user or automated workflow to process the document with `scripts/html-to-pdf.sh`. 3. The script launches the browser with `--no-sandbox` and loads the attacker-controlled document through a `file://` URL. 4. The malicious content triggers the browser vulnerability. 5. Because Chromium's sandbox is disabled, the resulting compromise is not constrained by the browser's normal renderer sandbox. 6. Attacker code may execute with the operating-system privileges of the account runni ...[truncated 897 chars]
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (15)

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The declared description is about generating business articles and professional visual/document outputs. The actual code does none of that content-generation or layout/rendering work. Instead, it is an operational build/packaging script for creating a distributable .skill file from a directory. This is a materially different primary purpose from the declared functionality, so it should be flagged as a mismatch.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The MRD explicitly describes a workflow that creates or updates a GitHub repository and then deploys it via GitHub Pages, but it does not mention any confirmation step, authorization boundary, or warning that content may be published publicly. In an agent skill context, this can normalize automatic external side effects and lead to unintended repository modification, data exposure, or public publication of sensitive business content if implemented as written.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The README promises automatic publishing by creating a GitHub repository, enabling GitHub Pages, and returning a shareable URL, but it does not clearly warn that these actions can publish content publicly and create persistent external resources under the user's account. In a skill that transforms user-provided business content, this can expose confidential strategy, investment theses, or competitive intelligence if users assume output remains local or private.

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
70% confidence
Finding

Without declared permissions the skill's intent is opaque and cannot be validated.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
82% confidence
Finding

The skill specifies Chinese fonts (Noto Serif SC, Noto Sans SC) and all concrete output examples are in Chinese, suggesting the skill may default to or enforce a specific language. The file does not say that users can choose output language or that the Chinese focus is an intentional documented locale constraint.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill advertises creating a GitHub repository, enabling GitHub Pages, and providing shareable links without clearly requiring explicit informed user consent at the time of publication. This can lead to accidental external disclosure of sensitive drafts, internal business analysis, proprietary market theses, or personally identifying information embedded in the generated article.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The example article structure and component examples prominently prescribe Chinese-language titles and content, but the file does not indicate that language selection is optional or limited to a China-specific use case. This can violate language/locale policy when a skill implicitly constrains output language without user opt-in.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The manifest describes a skill for generating professional business articles with HTML and PDF output, but this guide also claims the skill can publish content via GitHub Pages. Repository creation and web publishing are materially broader than document generation and are not mentioned in the manifest description.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The workflow describes writing local files and potentially creating a public GitHub repository and Pages site without any warning about filesystem changes, network actions, or public exposure. In a content-generation skill, silent publication could leak confidential business analysis, investment theses, or draft material, making this more dangerous because users may provide sensitive founder or market information.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

These lines state that the skill creates a new repository, enables GitHub Pages hosting, and returns a public shareable URL. That goes beyond 'generate professional business articles' and introduces remote publishing capabilities not reflected in the manifest description.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The script renders attacker-controlled local HTML in a headless browser via a file:// URL without disabling network access or script execution. During PDF generation, embedded JavaScript, remote images, fonts, iframes, or fetch/XHR requests can cause outbound network access, potentially leaking local data referenced in the document or enabling SSRF-style requests from the host running the conversion.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The HTML root element sets lang="zh-CN", which forces a specific language/locale in the rendered output. Under the policy, locale constraints should either be user-selectable or clearly justified as region-specific, neither of which is present in this file.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
89% confidence
Finding

The natural-language content consistently assumes Chinese as the required interaction/documentation language, and there is no indication that users can opt into another language. Under the stated policy, forcing a specific language without user choice can be a locale-policy issue unless clearly justified as region-specific.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
78% confidence
Finding

The example title is in Chinese, and the technical details emphasize Chinese-capable fonts, which suggests the skill may be oriented toward a specific language or locale. The README does not explicitly state that users can choose their preferred output language, so there is a potential language-policy concern.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

Several example blocks use Chinese text, which can impose a language expectation in a general usage guide. Because the document does not state that the skill is region-specific or offer alternative language options, this may conflict with the language/locale policy requiring user choice or justified constraints.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.