Back to skill

Security audit

Hologres Schema Generator

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly a coherent Hologres schema helper, but it includes write-capable database setup and copy-pastable destructive partition-drop examples without enough safety gating.

Install only in an isolated environment, pin and review hologres-cli before use, and do not run the DROP TABLE partition examples or automation against production until targets, retention policy, backups, and a dry-run review are confirmed.

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
SKILL.md:16
Finding
Unpinned Third-Party CLI Installed for Database Write Operations## Vulnerability Details **File Location**: `SKILL.md`, lines 16-22 **Vulnerability Type**: Unpinned third-party dependency with privileged database functionality **Risk Level**: Medium **Affected Code**: ```bash This skill requires **hologres-cli** to be installed first: pip install hologres-cli export HOLOGRES_SKILL=hologres-schema-generator ``` ```text All SQL execution depends on `hologres-cli` commands (`hologres sql run --write`, `hologres table create`). ``` ### Technical Analysis The Skill directs users to install `hologres-cli` without specifying an exact version, package hash, dependency lock file, or verified package repository. Consequently, the package and its transitive dependencies are resolved dynamically from the Python package index configured in the user's environment. Because the installed CLI is subsequently trusted to execute database write operations, compromise of the package source, a future malicious release, dependency confusion, or compromise of a transitive dependency could introduce attacker-controlled code after this Skill has been audited. Python package installation may also execute package build or installation logic with the permissions of the invoking user. No evidence demonstrates that the current `hologres-cli` package is malicious. The vulnerability is the mutable and insufficiently verified dependency installation process. ### Attack Path 1. An attacker compromises the package, one of its transitive dependencies, or the package source used by the victim. 2. The attacker publishes a malicious version that remains compatible with the unpinned installation command. 3. A user follows the Skill prerequisite and runs `pip install hologres-cli`. 4. The package manager resolves and installs the attacker-controlled release or dependency. 5. Malicious installation or runtime code executes with the local permissions of the user. 6. When the CLI is used, it may access database co ...[truncated 772 chars]
Remediation
## Remediation Suggestions 1. Pin `hologres-cli` to a specifically reviewed version rather than installing the latest available release. 2. Pin all transitive dependencies through a reviewed lock file. 3. Require cryptographic hashes during installation, for example with a generated requirements file and `pip install --require-hashes -r requirements.txt`. 4. Document and enforce the authoritative package repository instead of relying on the user's unspecified Python package-index configuration. 5. Install the CLI in an isolated virtual environment or container under a non-privileged operating-system account. 6. Grant the database identity only the minimum permissions necessary for the requested schema operation. 7. Require explicit user confirmation before invoking write-capable commands such as `hologres sql run --write` or `hologres table create`. 8. Periodically review the pinned package, its publisher, provenance, signatures where available, and its complete transitive dependency tree before updating.
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 (4)

Missing User Warnings

Medium
Confidence
90% confidence
Finding
The skill includes `DROP TABLE IF EXISTS ...` as a recommended partition-retention example without a prominent safety warning or strong guidance to parameterize and verify targets before execution. In a skill whose stated prerequisites include write-capable CLI execution (`hologres sql run --write`), users may copy and run the example against production objects, causing unintended data deletion.

Vague Triggers

Medium
Confidence
83% confidence
Finding
The manifest description lists generic triggers such as "hologres schema", "hologres DDL", and especially standalone terms like "distribution_key" and "表设计" without clarifying activation scope or exclusions. In a manifest file, this can cause unintended invocation during routine conversation about Hologres concepts because there are no negative examples or context limits.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The example shows `DROP TABLE IF EXISTS logs_20251201;`, which irreversibly deletes a partition and its data while providing only a brief inline comment. In a schema-generation skill, users may copy examples directly into production workflows, so the lack of an explicit safety warning increases the risk of accidental destructive data loss.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The automation block dynamically drops partitions based on date-derived names and executes irreversible deletion in a loop, but it lacks a clear safety gate, dry-run mode, confirmation step, or backup guidance. Because this skill is meant to help users automate Hologres administration, such copy-pastable destructive automation is especially dangerous and could cause large-scale unintended data loss if naming assumptions or retention logic are wrong.

Static analysis

No suspicious patterns detected.