Back to skill

Security audit

Ai Intelligent Feedback Collection

Security checks for vulnerabilities and agentic risk

Overview

The skill describes a plausible feedback-analysis app, but its install steps run unreviewed mutable remote code and it lacks privacy guidance for potentially sensitive feedback data.

Review the remote GitHub repository and its dependencies before installing, prefer a pinned commit or signed release, and run it in a restricted environment. Do not feed customer, employee, or other sensitive feedback into the system unless you have consent and clear rules for redaction, storage, access, and retention.

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

Error
Location
SKILL.md:43
Finding
Unpinned Remote Payload Retrieval and Execution## Vulnerability Details **File Location**: `SKILL.md`, lines 43-46 **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: High ### Vulnerable Code ```bash git clone https://github.com/openclaw-skills/ai-intelligent-feedback-collection cd ai-intelligent-feedback-collection pip install -r requirements.txt python app.py ``` ### Technical Analysis The documented installation procedure clones a mutable remote repository without pinning a reviewed commit, tag, or cryptographically verified release. It then installs dependencies from the remotely supplied `requirements.txt` and directly executes the remotely supplied `app.py`. Consequently, the effective payload is not contained in the audited Skill package and can change after this Skill has been reviewed. Neither the remote application nor its dependency manifest was present in the audited artifact, so their behavior, integrity, and dependency constraints could not be verified. HTTPS protects data in transit but does not ensure that the repository continues to contain the same code that was originally reviewed. A compromised repository owner account, malicious maintainer update, repository transfer, or compromised dependency could therefore introduce arbitrary executable code into this workflow. ### Attack Path 1. An attacker gains control of the referenced repository, contributes a malicious update that is accepted, or compromises a dependency selected by its `requirements.txt`. 2. The attacker adds malicious behavior to `app.py`, package installation hooks, or a dependency imported by the application. 3. A user follows the installation commands in `SKILL.md`. 4. `git clone` retrieves the attacker-controlled revision because no immutable commit is specified. 5. `pip install -r requirements.txt` may execute package build or installation logic supplied through the remote dependency chain. 6. `python app.py` directly executes the retrieved appli ...[truncated 845 chars]
Remediation
## Remediation Suggestions 1. Include the reviewed application source and dependency lock files directly in the Skill package so the executable implementation is covered by the audit. 2. If remote retrieval is unavoidable, pin the repository to an immutable, reviewed commit hash rather than cloning the current default branch. 3. Distribute signed releases and verify the release signature or a trusted cryptographic checksum before installation or execution. 4. Pin every Python dependency and transitive dependency to an reviewed version using a lock file. 5. Require dependency hashes, such as with `pip install --require-hashes`, to prevent substitution of unexpected artifacts. 6. Audit dependency source names and indexes and use a controlled package registry where appropriate. 7. Avoid automatically executing the application immediately after retrieval. Provide a review and verification step before installation and startup. 8. Run the application as a dedicated, unprivileged account in a sandbox or container with narrowly scoped filesystem, credential, and network access. 9. Add release provenance and software bill of materials information so users can verify exactly which source revision and dependencies are being installed.
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 (3)

Vague Triggers

Medium
Confidence
91% confidence
Finding
The skill description and feature list are broad and do not define clear activation boundaries, permitted data sources, or constraints on when the skill should engage. In an agent setting, this can cause over-collection or unintended handling of user data because the skill presents itself as generally applicable to feedback, surveys, analysis, and sentiment processing without guardrails.

Missing User Warnings

Medium
Confidence
96% confidence
Finding
The skill advertises collection, questionnaire design, analysis, and sentiment analysis of user feedback, which commonly includes personal, sensitive, or confidential information, but it provides no warning about privacy, consent, retention, or secure handling. This omission is dangerous because users or downstream agents may submit sensitive data without understanding the collection and analysis risks, increasing the chance of privacy violations and improper processing.

Natural-Language Policy Violations

Low
Confidence
89% confidence
Finding
The description and operational sections are presented only in Chinese, which can amount to a language policy violation if the skill implicitly forces a specific language without user opt-in. There is no indication that the skill is intentionally region-specific or that users may choose another language.

Static analysis

No suspicious patterns detected.