Back to skill

Security audit

bg-remover

Security checks for vulnerabilities and agentic risk

Overview

This skill is a local image background tool whose behavior matches its stated purpose, with install-time dependency risk users should manage.

Install it in a dedicated virtual environment if possible, review the Python dependencies before use, and expect the first model run to require a network download. Users who do not read Chinese may need translated command help.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T08 · Insecure Dependencies

Warning
Location
scripts/install.sh:16
Finding

Unpinned Third-Party Dependencies Installed from a Mutable Package Index

Content
View full analysis
/dev/null; then PIP=pip3 elif command -v pip &>/dev/null; then PIP=pip else echo "pip was not found; install Python 3 first" exit 1 fi $PIP install rembg Pillow numpy onnxruntime --quiet ``` The corresponding manual installation instruction is: ```bash pip install rembg Pillow numpy onnxruntime ``` ### Technical Analysis The installation script requests `rembg`, `Pillow`, `numpy`, and `onnxruntime` without pinning reviewed versions or validating package hashes. Pip therefore resolves the package versions and their transitive dependencies from the configured package index at installation time. The effective installed code can change after this Skill has been reviewed. Python packages may execute build or installation logic during installation. If an upstream package or transitive dependency is compromised, a malicious release is published, or the configured package index is untrusted, installation can execute attacker-controlled code. No evidence indicates that the package names in this project are typosquatted or currently malicious; the risk arises from the mutable and unverified dependency resolution process. The script also selects the first `pip3` or `pip` executable found through `PATH` and does not create an isolated virtual environment. This can cause dependencies to be installed into an unintended Python environment and may permit a spoofed local pip executable to be invoked when the caller's `PATH` is already compromised. ### Attack Path 1. An attacker compromises a direct or transitive dependency, publishes a malicious version through an accepted package source, or controls a package index configured in the use ...[truncated 1215 chars]
Remediation
View remediation
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (3)

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The visible skill title and operational instructions are written in Chinese, and the file does not offer an alternative language or state that the skill is region-specific. This creates a language/locale policy issue because it effectively constrains use to a specific language without explicit user opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

This code file contains natural-language descriptions and CLI help text in Chinese, starting with the module docstring, and continues to present the tool as Chinese-only. Under the policy rule, forcing a specific language without user opt-in is a natural-language policy concern unless the locale constraint is explicitly justified.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The script's user-facing comments and echo messages are written only in Chinese, including installation status and error output. This imposes a specific language on users without opt-in or justification, which matches the locale-policy violation criteria for natural-language content.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.