Back to skill

Security audit

Systematic Review Screener

Security checks for vulnerabilities and agentic risk

Overview

This is a local research-screening helper whose file access and outputs fit its stated purpose, though users should review its defaults before relying on results.

Install only if you are comfortable running a local Python script over your reference files. Before real use, fix or verify the dependencies, edit the YAML criteria to match your protocol, remove or justify English-only filtering, and manually review conflicts and exclusions before reporting results.

Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (5)

Lp3

Medium
Category
MCP Least Privilege
Confidence
89% confidence
Finding
The skill explicitly instructs users to run a Python script that reads input files and writes output files, but the manifest does not declare any corresponding permissions or constraints. This creates a transparency and policy-enforcement gap: operators may trust the skill as lower-risk than it is, and any runtime permission framework cannot accurately gate file access.

Natural-Language Policy Violations

Medium
Confidence
78% confidence
Finding
The example criteria hard-code `allowed: ["English"]`, which can silently exclude non-English studies without explicit user approval or methodological justification. In a systematic review context, this can bias evidence selection, undermine reproducibility, and lead to incomplete or skewed research conclusions.

Natural-Language Policy Violations

Medium
Confidence
92% confidence
Finding
The code automatically excludes records when its heuristic language check falls below a threshold, even though language detection is simplistic and there is no explicit user opt-in or documented justification tied to review protocol. In a systematic-review screening tool, this can silently bias evidence selection and cause wrongful exclusion of relevant studies, undermining research integrity and reproducibility.

Unpinned Dependencies

Low
Category
Supply Chain
Content
dataclasses
yaml
Confidence
97% confidence
Finding
The dependency 'dataclasses' is unpinned, so installs are not reproducible and can pull different package versions over time. In this specific case the risk is somewhat reduced because 'dataclasses' is a standard-library backport primarily needed only on older Python versions, but leaving it unpinned still increases supply-chain uncertainty and can introduce unexpected behavior or malicious package versions if the environment resolves it from PyPI.

Unpinned Dependencies

Low
Category
Supply Chain
Content
dataclasses
yaml
Confidence
99% confidence
Finding
The dependency 'yaml' is unpinned, allowing installs to fetch whatever version currently resolves, which creates a supply-chain risk and makes builds non-reproducible. This is more dangerous here because 'yaml' is not the canonical PyYAML package name, so dependency resolution may fail or unexpectedly pull an unrelated package if one exists.

Static analysis

No suspicious patterns detected.