T09 · Insecure Skill Coding Practices
- Location
scripts/main.py:28- Finding
Fabricated Open-Access Results Presented as Verified Findings
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is not system-invasive, but it substantially overstates what it can do and can present mock publication-access results as real.
Review before installing. This skill does not show evidence of stealing data or persisting on the system, but it should not be relied on for journal legitimacy, publisher-policy, predatory-publisher, licensing, or open-access availability decisions until the mock results are removed, Sci-Hub is removed, and the documented features are actually implemented and verified.
scripts/main.py:28Fabricated Open-Access Results Presented as Verified Findings
scripts/main.py:24Unvalidated DOI Input Embedded in a Displayed URL
SKILL.md:80Documented Capabilities and Entry Points Are Absent from the Package
The skill metadata and examples present this as a journal-vetting tool, but the static finding indicates the actual behavior diverges into locating open copies of papers, including references to Sci-Hub, while failing to perform the promised policy and predatory-publisher checks. That mismatch is dangerous because users may rely on the skill for compliance, legitimacy, or publication-safety decisions while it silently performs a different task and may steer them toward unauthorized or legally risky sources.
The module claims to help find legal open-access versions, yet the advertised source list includes Sci-Hub, a site commonly associated with infringing access to copyrighted papers. This contradiction can mislead users into using an unlawful source under the guise of a compliance-oriented tool, creating legal, policy, and trust risks.
The 'When to Use' section broadens invocation to generic 'evidence insight tasks,' which can cause an orchestrator or human operator to select this skill outside its narrow journal-scout purpose. In the context of an already mismatched skill, overly broad routing language increases the chance of inappropriate execution, misleading outputs, and accidental exposure to unsafe or noncompliant behavior.
The manifest says the skill can find open access journals, check journal policies, and identify predatory publishers. In the code, the implemented behavior is limited to listing hardcoded sources and returning mock results for open access versions of papers based on DOI/title, with no logic for journal policy analysis or predatory-publisher detection.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
"""Find open access versions of papers."""
SOURCES = [
{"name": "Unpaywall", "url": "https://api.unpaywall.org/"},
{"name": "CORE", "url": "https://core.ac.uk/"},
{"name": "PubMed Central", "url": "https://www.ncbi.nlm.nih.gov/pmc/"},
{"name": "arXiv", "url": "https://arxiv.org/"},
Including Sci-Hub as an open-access source is inconsistent with the stated purpose of locating legal open-access copies. In this context, the skill may normalize or facilitate access to pirated content, exposing users or organizations to legal, compliance, and reputational harm.
No suspicious patterns detected.