Back to skill

Security audit

Ai Intelligent Backup Automation

Security checks for vulnerabilities and agentic risk

Overview

This backup skill is review-worthy because it asks users to run unreviewed remote code for high-impact backup and restore operations without clear safeguards.

Install only if you are comfortable reviewing the cloned repository and dependencies yourself first. Run it in an isolated, non-privileged environment, avoid production restore tests unless explicitly configured and backed up, and require clear confirmation before any restore or overwrite action.

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
SKILL.md:39
Finding
Unpinned Remote Repository Retrieval and Execution<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 39–42 **Vulnerability Type**: Mutable remote payload retrieval followed by dependency installation and application execution **Risk Level**: Medium ### Vulnerable Code ```bash git clone https://github.com/openclaw-skills/ai-intelligent-backup-automation cd ai-intelligent-backup-automation pip install -r requirements.txt python app.py ``` ### Technical Analysis The documented installation procedure clones the mutable default branch of a remote Git repository without pinning it to a reviewed commit or verifying its integrity. It then installs dependencies from an unaudited `requirements.txt` file and executes an unaudited `app.py`. The executable application and dependency manifest are not included in the audited artifact, which contains only `SKILL.md` and `skill.json`. Consequently, the behavior of the remotely retrieved payload cannot be established from the reviewed package. The effective payload may change after this skill has been reviewed. The HTTPS transport protects data in transit but does not protect against compromise of the repository, maintainer account, dependency sources, or future malicious upstream changes. The subsequent `pip install` also creates a supply-chain exposure because Python package installation can execute package build logic. The instructions do not automatically execute the commands; exploitation requires a user or agent to follow the documented installation procedure. ### Attack Path 1. An attacker compromises the referenced repository, a maintainer account, or a dependency resolved by its `requirements.txt`. 2. The attacker modifies the default branch, `app.py`, the dependency manifest, or a referenced package so that malicious code executes during installation or startup. 3. A user or agent follows the installation commands in `SKILL.md`. 4. `git clone` retrieves the attacker-controlled content without selecting a previously reviewed commit. 5. `p ...[truncated 826 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Include the reviewed application source and dependency manifest directly in the distributed skill package. 2. If remote retrieval is necessary, check out an immutable, reviewed commit hash rather than the repository's mutable default branch. 3. Verify downloaded content using a trusted cryptographic digest or a verified signed commit or release. 4. Pin every Python dependency to an exact version and use a hash-locked requirements file, such as one installed with `pip install --require-hashes`. 5. Review both direct and transitive dependencies and use an approved package index rather than permitting arbitrary package sources. 6. Perform installation and initial execution in an isolated, non-privileged environment with minimal filesystem, credential, and network access. 7. Separate retrieval, verification, dependency installation, and execution into distinct steps so users can inspect the content before running it. 8. Avoid running the installation procedure as `root` or through `sudo`. ]]>
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)

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The skill advertises automated backup and restore testing, which are operations that can modify, overwrite, delete, or stress real data and systems, yet it provides no user-facing warnings, safeguards, or scope limitations. In this context, the omission can mislead users into running destructive operations without understanding risks to data integrity, retention, or production availability.

Vague Triggers

Medium
Confidence
95% confidence
Finding
The skill description is overly vague and does not clearly define what the backup automation skill will do, when it should activate, or what systems and data it is allowed to access. For a skill involving backup and restore operations, unclear scope increases the risk of unintended invocation, excessive permissions, or unsafe handling of sensitive data during automation.

Natural-Language Policy Violations

Low
Confidence
95% confidence
Finding
The description and headings are entirely in Chinese, which imposes a language choice on users without any opt-in or explanation that the skill is intended only for a Chinese-speaking or region-specific audience. This can violate language/locale policy when no user choice or documented constraint is provided.

Static analysis

No suspicious patterns detected.