Back to skill

Security audit

Bing Webmaster CLI

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward Bing Webmaster CLI usage guide with expected API-key handling and installation guidance, but users should treat the API key and installed package source carefully.

Before installing, verify that bing-webmaster-cli is the package you intend to trust, consider pinning a known version, and use a least-privileged Bing Webmaster API key. Prefer interactive login or a secret manager over pasting keys into commands that may be logged, and clear stored credentials when no longer needed.

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:31
Finding
Unpinned Third-Party Package Installation<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:31-34` **Vulnerability Type**: `T08: Insecure Dependencies` **Risk Level**: Medium ### Vulnerable Code ```bash python3 -m pip install --user pipx python3 -m pipx ensurepath pipx install bing-webmaster-cli bwm --version ``` ### Technical Analysis The installation instructions retrieve `pipx` and `bing-webmaster-cli` from the default Python package registry without pinning reviewed versions or verifying artifact hashes. Consequently, the code installed and executed can change after the skill has been audited. This is particularly sensitive because the installed `bwm` CLI is subsequently instructed to receive a Bing Webmaster API key through an environment variable, command-line option, interactive input, or local credential file. A compromised, malicious, or unexpectedly modified package release could access that credential and perform operations under the permissions granted to the associated Bing Webmaster account. The document does not contain a malicious dependency or demonstrate that the named packages are currently compromised. The vulnerability is the absence of dependency integrity and version controls at a trust boundary where installed code later handles credentials. ### Attack Path 1. An attacker compromises a relevant package, distribution account, registry delivery path, or future package release. 2. A user follows the documented installation commands. 3. `pip` or `pipx` resolves and installs the attacker-controlled package version because no reviewed version or cryptographic hash is required. 4. Installation hooks or runtime package code execute with the privileges of the invoking user. 5. When the user authenticates, the compromised CLI reads the supplied API key from input, environment variables, or its documented credential storage. 6. The attacker can exfiltrate the key or issue unauthorized Bing Webmaster API requests within the key's permissions. ### Impact Assessment Suc ...[truncated 593 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Pin `pipx` and `bing-webmaster-cli` to explicitly reviewed versions rather than installing the latest available releases. 2. Install from a lockfile or requirements file containing cryptographic hashes, using hash enforcement where supported. 3. Publish and document the authoritative package registry, source repository, release-signing process, and expected package identity. 4. Prefer reproducible builds and verify downloaded artifacts against trusted checksums or signatures before installation. 5. Review package metadata and source for each approved release before updating the pinned version. 6. Run the CLI as a non-privileged user and isolate it in a dedicated environment. 7. Grant the Bing API key only the minimum account access needed, rotate it after suspected compromise, and avoid exposing it through command-line arguments where it may enter shell history or process listings. 8. Validate and restrict `BWM_API_BASE_URL` so credentials cannot be redirected to an untrusted endpoint through accidental or malicious configuration. ]]>
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (2)

Credential Access

High
Category
Privilege Escalation
Content
## Config Paths And Overrides

Defaults:
- credentials: `~/.config/bing-webmaster-cli/credentials.json`
- app config: `~/.config/bing-webmaster-cli/config.json`

Env overrides:
Confidence
70% confidence
Finding
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The skill instructs users to provide and persist a Bing Webmaster API key via an environment variable or a locally stored credential file, but it does not warn that the key is sensitive, should not be pasted into shared shells/logs, and may persist on disk or in shell history. In a CLI/authentication skill this is common functionality, but the absence of handling guidance increases the chance of accidental credential exposure during normal use, especially in CI, shared workstations, or recorded terminal sessions.

Static analysis

No suspicious patterns detected.