Back to skill

Security audit

Files

Security checks for vulnerabilities and agentic risk

Overview

This is a straightforward Tencent Cloud CLI helper with disclosed credential use and install steps, though users should treat its cloud authority and unpinned CLI installation carefully.

Before installing, use a least-privileged Tencent Cloud account, avoid printing or sharing credentials, and consider installing a pinned tccli version in an isolated environment before authenticating. Expect the skill to be able to perform whatever Tencent Cloud actions your authenticated account permits.

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
references/install.md:8
Finding

Unpinned Tencent Cloud CLI installation permits mutable upstream code execution

Content
View full analysis

Vulnerability Details

File Location: references/install.md, lines 8–20
Vulnerability Type: Unpinned third-party dependencies and source installation without integrity verification
Risk Level: Medium

sh
# Method 1: pip (recommended for Windows / Mac / Linux)
pip install tccli

# When upgrading from a version earlier than 3.0.252.3:
# pip uninstall tccli jmespath && pip install tccli

# Method 2: macOS Homebrew
brew tap tencentcloud/tccli
brew install tccli
# Update: brew upgrade tccli

# Method 3: source installation
# git clone https://github.com/TencentCloud/tencentcloud-cli.git && cd tencentcloud-cli && python setup.py install

Technical Analysis

The installation instructions retrieve and install mutable upstream content without pinning a reviewed package version, Git commit, or artifact digest. No checksum or signature verification is required.

The source installation method is particularly sensitive because python setup.py install executes installation-time Python code from the repository's current default branch. The pip and Homebrew methods can likewise install a future package or formula version that was not reviewed with this Skill.

The referenced GitHub repository is under the named TencentCloud organization rather than an obvious pastebin or bare-IP source. Nevertheless, relying only on a recognizable repository name does not provide artifact immutability or integrity. A compromised upstream account, package registry, repository, release process, or maintainer credential could alter the content executed by users.

Installation of tccli is consistent with the Skill's declared Tencent Cloud management functionality. However, accepting an arbitrary future version is not necessary for that functionality and exceeds the minimum supply-chain trust required.

Attack Path

  1. An attacker compromises an upstream package, formula, repository, maintainer ...[truncated 1537 chars]
Remediation
View remediation

Remediation Suggestions

  1. Pin tccli to a specific version that has been reviewed and tested:
    sh
    python -m pip install "tccli==<reviewed-version>"
    
  2. Require package hash verification through a locked requirements file:
    text
    tccli==<reviewed-version> --hash=sha256:<verified-digest>
    
    Install it with:
    sh
    python -m pip install --require-hashes -r requirements.txt
    
  3. If source installation is necessary, check out a specific full commit SHA rather than the mutable default branch, and verify the commit or signed release before executing installation code.
  4. Replace direct python setup.py install usage with a modern, pinned package installation workflow.
  5. Pin or otherwise constrain the Homebrew formula version and document how users can verify its source and integrity.
  6. Perform installation in an isolated virtual environment under a non-privileged account. Do not install with sudo unless there is a documented operational requirement.
  7. Install dependencies before authenticating where practical, reducing the chance that installation-time code can access existing cloud credentials.
  8. Use a least-privileged Tencent Cloud identity so that compromise of local credentials cannot grant broader cloud access than the intended task requires.
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
Findings (3)

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The operational instructions from L008 onward are written entirely in Chinese, which imposes a specific language on users. The file does not offer an alternative language, opt-in, or explain that the skill is intentionally region- or language-specific for compliance or audience reasons.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
91% confidence
Finding

This markdown file presents all user-facing installation instructions exclusively in Chinese. Under the policy, forcing a specific language without user opt-in can be a natural-language policy violation when no alternative language option or justification is provided.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
88% confidence
Finding

The document is written entirely in Chinese and does not indicate that other languages are available or that Chinese is required for a specific regional/compliance reason. Under the policy rule for language or locale constraints, this can be considered a natural-language policy violation because it imposes a locale on users without opt-in.

Content

No source excerpt is available for this finding.