T09 · Insecure Skill Coding Practices
- Location
SKILL.md:64- Finding
Remote Generation of Security-Critical Secret Material
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:64-67,SKILL.md:83,SKILL.md:192-204,SKILL.md:228-229; related schema declarations inschema.md:155-249andschema.md:278-330
Vulnerability Type: Reliance on a remote provider for generation of passwords, tokens, cryptographic seeds, and RSA prime factors
Risk Level: HighVulnerable Code
SKILL.md:62-68:markdown ## Use Cases - Key derivation and encryption seed generation - session tokens and API key creation - secure password generation - unique identifier production for databases and distributed systems - RSA prime pair generation for public/private key creation - cryptographic research and entropy analysisSKILL.md:192-204:markdown Authenticated AgentPMT REST call body: ```json { "name": "quantum-cryptographic-seed-generator", "parameters": { "action": "password", "digits": true, "exclude_ambiguous": true, "length": 32, "lowercase": true, "source": "quantum", "symbols": true, "uppercase": true } }text `SKILL.md:228-229`: ```markdown - AgentPMT main MCP server: https://api.agentpmt.com/mcp/ - AgentPMT REST invoke endpoint: https://api.agentpmt.com/products/purchaseTechnical Analysis
The Skill explicitly delegates generation of passwords, API or session tokens, cryptographic seeds, and complete RSA prime pairs to an AgentPMT-hosted service. Sending generation parameters over HTTPS is necessary for the declared hosted functionality and does not itself disclose an existing local secret. However, the resulting secret material is generated by—and therefore potentially visible to—the remote provider.
Transport encryption only protects communication in transit. It does not prevent the service, its infrastructure, operational logs, administrators, or a compromised backend from retaining, substituting, or later disclosing generated valu ...[truncated 1973 chars]
- Remediation
View remediation
Remediation Suggestions
- Generate production passwords, bearer tokens, cryptographic seeds, and private-key factors locally using an operating-system CSPRNG or reviewed hardware security module.
- Explicitly prohibit direct use of remotely generated passwords, seeds, tokens, and RSA prime pairs as production secrets.
- If remote quantum randomness is required, treat it only as untrusted supplemental entropy. Mix it locally with independently generated CSPRNG entropy using a documented cryptographic extractor or KDF.
- Never request both RSA private prime factors from a remote provider. Generate private keys locally or within an HSM, and export only public-key material.
- Document the provider trust boundary, retention policy, logging policy, incident-response process, and any independent entropy or service audits.
- Ensure responses containing secret material are not written to agent transcripts, telemetry, debug logs, caches, or persistent memory.
- Provide local-generation alternatives and require explicit user confirmation before invoking a remote service for security-sensitive material.
