T09 · Insecure Skill Coding Practices
- Location
literature_search.py:228- Finding
CSV Formula Injection Through Untrusted Publication Metadata
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is a straightforward psychology literature search helper, with expected network calls to academic APIs and user-directed CSV/text exports.
Install only if you are comfortable sending search terms, and optionally an email address, to Semantic Scholar, OpenAlex, and CrossRef. Treat exported CSV files as untrusted when opening them in spreadsheet software; disable external content/macros and be cautious with suspicious links or formulas in metadata.
literature_search.py:228CSV Formula Injection Through Untrusted Publication Metadata
This code file contains natural-language descriptions and user-facing fields entirely in Chinese, including explicit emphasis on Chinese literature search and Chinese-formatted exports, without indicating that users can opt into another language. Under the policy rule, forcing a specific language or locale without user choice is a natural-language policy violation.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
class LiteratureSearch:
"""心理学文献检索器"""
SEMANTIC_SCHOLAR_API = "https://api.semanticscholar.org/graph/v1"
CROSSREF_API = "https://api.crossref.org/works"
OPENALEX_API = "https://api.openalex.org/works"
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
"""心理学文献检索器"""
SEMANTIC_SCHOLAR_API = "https://api.semanticscholar.org/graph/v1"
CROSSREF_API = "https://api.crossref.org/works"
OPENALEX_API = "https://api.openalex.org/works"
def __init__(self, email: Optional[str] = None):
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
SEMANTIC_SCHOLAR_API = "https://api.semanticscholar.org/graph/v1"
CROSSREF_API = "https://api.crossref.org/works"
OPENALEX_API = "https://api.openalex.org/works"
def __init__(self, email: Optional[str] = None):
"""
The entire skill documentation is written in Chinese and does not mention any language choice, opt-in, or region-specific constraint. Under the stated policy, forcing a specific language without user opt-in is a natural-language locale policy issue.
The natural-language content of the skill is presented exclusively in Chinese, including headings, instructions, and usage guidance. Under the stated policy, forcing a specific language without user opt-in can be a locale/language policy violation unless the regional constraint is explicitly documented and justified.
The manifest uses a Chinese-only title and description, which signals the skill is presented in a specific language without any opt-in or alternative locale indicated in the file. Under the policy rule for natural-language violations, this can be considered a language/locale restriction unless the skill explicitly offers a choice or documents a justified region-specific scope.
No suspicious patterns detected.