T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:90- Finding
Mutable Remote Documentation Is Used to Generate and Execute Invocation Code
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 90–125
Vulnerability Type: Remote payload retrieval and execution
Risk Level: HighVulnerable Code Snippet
markdown ## Authoritative tool-doc source (required) The published Markdown files under `https://sciminer.tech/tool_api_files/` are the single source of truth for `provider_name`, `tool_name`, allowed `parameters`, file-upload behavior, request encoding, and the example submission flow for this skill's included tools. Use these SciMiner Markdown docs: - `ANARCI` -> `ANARCI_api_doc.md` - `BioPhi` -> `BioPhi_api_doc.md` - `IgFold` -> `IgFold_api_doc.md` - `FoldX` -> `FoldX_api_doc.md` - `Rosetta FastRelax` -> `Rosetta FastRelax_api_doc.md` - `Rosetta SAP Score` -> `Rosetta SAP Score_api_doc.md` - `Rosetta FastDesign` -> `Rosetta FastDesign_api_doc.md` - `Rosetta InterfaceAnalyzer` -> `Rosetta InterfaceAnalyzer_api_doc.md` The agent MUST: 1. Resolve the selected tool's Markdown file and read it before every invocation. 2. Never invent `provider_name`, `tool_name`, parameter names, enum values, upload-field names, content type, or submission flow from memory. 3. Extract and follow the selected doc section's exact: - Base URL - API endpoint - Content-Type - Authentication header - Tool Name - Method - Parameter table, including required fields and enum values - File-upload instructions and example code 4. Choose the correct section if the selected doc contains multiple tool variants, such as sequence input vs structure upload. 5. Cite the selected Markdown doc as the payload source in summaries. If a user-provided parameter is not present in the selected Markdown doc section, ask for correction or drop it with an explanation. ## Required workflow 1. Determine which included tool or tool sequence matches the user's request. 2. Read the corresponding Markdown file or files from `https://sciminer.tech/tool_api_files/`. 3. Choose the doc sectio ...[truncated 3210 chars]- Remediation
View remediation
Remediation Suggestions
- Replace remote-generated invocation code with locally stored, reviewed implementation code.
- Treat remote documentation strictly as untrusted reference data and never execute or reproduce code from its examples automatically.
- Pin each document to an immutable version and verify a cryptographic hash before using it.
- Hard-code and validate the permitted HTTPS origin, API endpoints, authentication-header name, upload fields, and request schemas in audited local code.
- Reject redirects, especially cross-origin redirects, and never forward authentication headers across origins.
- Parse remote content through a strict data schema that cannot express executable instructions, shell commands, arbitrary imports, or alternate destinations.
- Run invocation logic in a restricted sandbox with minimal filesystem access, no shell access, and outbound network access limited to approved SciMiner endpoints.
- Require explicit user confirmation before uploading sequence, structure, or other potentially proprietary scientific data.
- Add integrity monitoring and security review requirements for any future changes to the pinned API specifications.
