Back to skill

Security audit

beauty-offer-auditor

Security checks for vulnerabilities and agentic risk

Overview

This skill is a bounded beauty-offer comparison aid, with no packaged code that logs in, purchases, persists data, or accesses private account information.

Install is reasonable for offer comparison, but do not provide private account, order, address, phone, payment, or login/session details. If you choose to run the README's local validation commands, pin and inspect the repository revision first or run it in a disposable sandbox because Python test discovery executes code from the cloned repository.

Vulnerability Patterns
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • 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
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Findings (1)

T03 · Remote Payload Retrieval and Execution

Warning
Location
README.md:31
Finding
Unpinned Remote Repository Retrieval and Python Test Execution## Vulnerability Details **File Location**: `README.md`, lines 31–35 **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: Medium **Vulnerable Code**: ```bash git clone https://github.com/bonniegeng-max/price-gap-map.git cd price-gap-map python3 -m unittest discover -s tests -v ``` ### Technical Analysis The documented validation procedure clones the current default branch of an external GitHub repository and then runs Python test discovery against its `tests/` directory. The repository is not pinned to a reviewed commit, tag digest, or signed release, and no checksum or signature verification is required. Python test discovery imports test modules. Imported modules can execute arbitrary top-level Python code, in addition to code invoked through test cases and imported project modules. Consequently, the effective payload is controlled by the remote repository at execution time and may differ from the content reviewed in this audit. The tests are not included in the audited archive, so their behavior cannot be verified from this project. The instructions are presented as an optional local-validation procedure rather than an automatic Skill action, and no malicious payload was identified in the audited files. ### Attack Path 1. An attacker compromises the external repository, its maintainer account, or the repository’s default branch. 2. The attacker adds malicious code to a discovered test module, test dependency, or module imported during test execution. 3. A user follows the validation instructions in `README.md`. 4. `git clone` downloads the attacker-controlled current repository state. 5. `python3 -m unittest discover -s tests -v` imports and executes the modified Python modules. 6. The payload runs with the operating-system permissions and environment access of the user who invoked the command. ### Impact Assessment Successful exploitation permits arbitrary code execution under the ...[truncated 651 chars]
Remediation
## Remediation Suggestions 1. Include the validation tests in the reviewed and distributed Skill archive so that users do not need to retrieve executable code separately. 2. If remote retrieval remains necessary, pin the checkout to a specific reviewed commit hash rather than executing the default branch. 3. Publish and verify a cryptographic checksum or signed release artifact before execution. 4. Separate retrieval from execution and instruct users to inspect the exact commit and file changes before running tests. 5. Run validation inside an isolated, disposable container or virtual machine with no mounted secrets, credentials, SSH agents, or sensitive host directories. 6. Disable outbound network access during test execution unless it is explicitly required. 7. Execute tests as an unprivileged user and avoid `sudo`, administrator shells, or broadly writable host mounts. 8. Document the trusted commit identifier and update it only after a fresh security review.
Vulnerability Patterns
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • 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
Findings (1)

Vague Triggers

Medium
Confidence
92% confidence
Finding
The trigger section is intentionally permissive and includes broad phrases such as 'which is a better deal,' 'which should I buy,' and 'is it worth it' tied to general shopping conversations. This can cause the skill to activate outside a tightly bounded audit workflow, leading to over-collection of shopping context, user confusion about the skill's scope, and recommendations based on incomplete evidence. In this skill's context, the downstream impact is limited because the workflow contains several safety constraints, but the broad triggers still expand the activation surface unnecessarily.

Static analysis

No suspicious patterns detected.