Back to skill

Security audit

Baserow CLI

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward Baserow CLI guide with disclosed database access and no evidence of hidden or malicious behavior.

Install only if you intend to let the agent operate on your Baserow data. Use a least-privilege Baserow token, confirm delete operations carefully, and consider pinning or verifying the baserow-cli package before installation.

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:21
Finding
Unpinned Third-Party CLI Installation Creates a Supply-Chain Risk<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 21-23 **Vulnerability Type**: Unpinned and unverified third-party dependency installation **Risk Level**: Medium ### Vulnerable Code ```bash uv tool install baserow-cli # or: pip install baserow-cli baserow config init # interactive setup wizard ``` ### Technical Analysis The setup instructions install `baserow-cli` from the package index without specifying a reviewed version, verifying a cryptographic hash, or documenting an authoritative repository and provenance-verification process. Consequently, the package resolved at installation time may differ from the version that was reviewed when this Skill was published. This is a supply-chain weakness rather than evidence that the current `baserow-cli` package is malicious. Exploitation would require compromise of the upstream package, its publisher account, the package distribution channel, or dependency resolution. A malicious release could execute code during a source-package build where applicable or when the installed `baserow` executable is subsequently invoked. The CLI is expected to handle `BASEROW_TOKEN`, `BASEROW_URL`, and local configuration stored in `~/.config/baserow-cli/config.toml`. Malicious package code running under the user's account could therefore attempt to access these credentials and use the permissions granted to the associated Baserow token. ### Attack Path 1. An attacker compromises the package publisher, package-index account, distribution channel, or a transitive dependency and publishes a malicious version. 2. A user follows the Skill instructions and runs `uv tool install baserow-cli` or `pip install baserow-cli`. 3. Because no version or integrity hash is specified, the package manager resolves the attacker-controlled release. 4. Malicious code executes during package build or installation where supported, or when the user runs `baserow config init` or another installed command. 5. The mal ...[truncated 852 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Pin the dependency to a specifically reviewed release, for example: ```bash uv tool install "baserow-cli==<reviewed-version>" # or pip install "baserow-cli==<reviewed-version>" ``` 2. Publish and verify cryptographic hashes for the selected distribution. For pip-based installation, use a reviewed requirements file with exact versions and `--require-hashes`. 3. Document the authoritative source repository and expected package publisher so users can verify package provenance before installation. 4. Prefer signed releases or package-index provenance attestations where available, and verify them in the installation process. 5. Review and pin relevant transitive dependencies through a lockfile or equivalent reproducible dependency manifest. 6. Run the CLI with a least-privilege Baserow token limited to the required workspace, database, tables, and operations. Avoid exposing unrelated secrets in the installation or execution environment. 7. Re-review and update the pinned release deliberately rather than automatically resolving the newest available package. ]]>
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