Back to skill

Security audit

Treehole

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly coherent for a PKU Treehole CLI, but it tells agents to use stored credentials and automatic SMS verification without requiring explicit user approval.

Review before installing. This skill is not deceptive or destructive in the inspected artifact, but it can lead an agent to access a PKU account using stored keyring credentials and an SMS code from the environment. Install only if you are comfortable with that automation, and require explicit confirmation before any login, SMS verification, posting, replying, voting, or account-data query.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (4)

Credential Access

High
Category
Privilege Escalation
Confidence
93% confidence
Finding

The skill encourages automatic login by reading credentials from the OS keyring with 'no password needed,' which is highly sensitive behavior in an agent context. Because the skill also broadens when it should be used, an agent may access stored credentials for routine requests such as schedules, increasing the chance of unauthorized secret use and account compromise.

Content

Scanner excerpt · SKILL.md (reported line 54)May include surrounding context.

md
# Check session status
info-auth check

# Auto-login (reads credentials from OS keyring, no password needed)
treehole login -p

# If SMS verification is needed (first login or periodic):

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The skill explicitly instructs agents to perform non-interactive login using stored credentials and to auto-submit SMS verification codes from an environment variable, but it does not require user consent, a warning, or confirmation before using those secrets. In an agent setting, this can cause unauthorized account access or unintended authentication actions, especially because the skill is framed as something to invoke automatically for schedule and forum-related requests.

Content

No source excerpt is available for this finding.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
90% confidence
Finding

The skill states that when PKU_SMS_CODE is set, the tool will automatically confirm sending and submit the code without interactive prompts. This removes an approval checkpoint around a security-sensitive authentication factor, enabling the agent to take account-affecting actions autonomously once it can access the environment variable.

Content

Scanner excerpt · SKILL.md (reported line 61)May include surrounding context.

PKU_SMS_CODE=123456 treehole login -p

text

Treehole may require SMS verification on first login or periodically (~30 days). When `PKU_SMS_CODE` env var is set, it auto-confirms sending and submits the code without interactive prompts.

## Development Conventions

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

The statement "All user-facing strings are in Chinese" imposes a fixed language policy. There is no indication that the user can choose another language or that the Chinese-only requirement is optional or region-justified for all uses.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.