Back to skill

Security audit

Lingxi

Security checks for vulnerabilities and agentic risk

Overview

The skill is a broad AI orchestration and dashboard system with auto-execution, publishing, remote access, and persistent data features that are not scoped or disclosed safely enough for automatic approval.

Review carefully before installing. Only use this in a controlled environment, keep the dashboard bound to localhost or behind a trusted TLS/VPN/SSH tunnel, avoid putting tokens in URLs, avoid --break-system-packages, inspect and pin dependencies before installation, and disable or constrain memory/task retention unless users explicitly agree to storage. Do not enable social posting, GitHub pushes, bot channels, or public dashboard access until authentication, confirmation, deletion, and audit controls are clearly defined.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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
Findings (3)

T09 · Insecure Skill Coding Practices

Error
Location
README.md:121
Finding

Dashboard Authentication Token Exposed Through Plaintext URLs

Content
View full analysis
/tmp/dashboard.log 2>&1 & # Open the port in the system firewall ufw allow 8765 # or: firewall-cmd --add-port=8765/tcp ``` The authentication token is also placed in an API query string: ```bash curl http://localhost:8765/api/stats?token=YOUR_TOKEN ``` ### Technical Analysis The documentation recommends authenticating to the dashboard by placing its token in a URL query parameter. Query parameters are commonly retained in browser history, copied into screenshots, recorded by web servers and reverse proxies, and exposed through diagnostic logs. Depending on browser and referrer policy, they may also be disclosed through outbound referral metadata. The recommended remote-access configuration binds the dashboard to `0.0.0.0`, opens TCP port 8765, and uses plaintext HTTP. Plaintext transport provides neither confidentiality nor integrity. A network-positioned attacker could observe the token or modify traffic. Binding to all interfaces also exceeds the minimum privileges necessary for the declared local dashboard functionality. The risk is amplified by the dashboard's documented access to memories, task records, skills, user prompts, and generated responses. ### Attack Path ...[truncated 1198 chars]
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Warning
Location
README.md:328
Finding

Sensitive User Prompts and Generated Outputs Persisted Without Documented Privacy Controls

Content
View full analysis
Remediation
View remediation

T08 · Insecure Dependencies

Warning
Location
README.md:68
Finding

Unpinned Dependencies Installed Into the System Python Environment

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (11)

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

This markdown file presents its title and content in Chinese from the outset, with no indication that other languages are supported or that the language choice is optional. Under the policy, forcing a specific language without user opt-in is a natural-language policy concern.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

The README presents the skill as a 'beginner shrimp-farming assistant' while the rest of the document describes a general AI orchestration, dashboard, credential handling, and multi-agent system. This kind of deceptive or materially misleading labeling can cause users and reviewers to underestimate the skill's capabilities and the trust boundary, increasing the chance of unsafe installation or credential exposure.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The title actively contradicts the documented implementation, which is a stronger signal than mere incompleteness because it misrepresents the skill's operational purpose. In security review contexts, contradictory identity information is dangerous because it can be used to disguise a higher-risk orchestration platform as a harmless niche assistant.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The README instructs developers to hard-code Asia/Beijing as the default timezone and use zh-CN locale formatting for date/time display. This is a natural-language policy concern because it imposes a specific language/locale choice rather than offering user selection or documenting a justified region-specific constraint.

Content

No source excerpt is available for this finding.

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
80% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · README.md (reported line 437)May include surrounding context.

md
## 🔐 安全建议

1. **Token 保护**
   - Token 文件权限:`chmod 600 ~/.openclaw/workspace/.lingxi/dashboard_token.txt`
   - 不要在代码中硬编码 Token

2. **防火墙配置**

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The '一句话,全自动' activation model is overly broad and implies the system may autonomously interpret and execute a wide range of user intents with minimal constraint. In an orchestration skill that can route to tools, models, and publishing workflows, vague activation boundaries increase the chance of unintended actions, overreach, or misuse from ambiguous prompts.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

Describing the user entry point as '任何渠道:QQ/微信/Telegram等' suggests the skill may be invoked from many communication channels without clearly specifying trust boundaries, authentication, or per-channel safeguards. That ambiguity is risky because the system also supports automatic task routing and multi-step execution, making unauthorized or context-confused activation more plausible.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The workflow explicitly includes generating a '性感自拍' and publishing to a social platform, yet the documentation does not present a clear user warning, consent model, or confirmation step for account-affecting actions. In context, this is more dangerous because the skill is an orchestrator designed for automatic multi-step execution, so content creation and publication may be chained together and executed with insufficient user review.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill claims it does not collect privacy while also advertising persistent multi-session memory, memory CRUD, and session context retention. That creates a misleading transparency statement that can cause users or operators to underestimate data retention and privacy risk, especially in a multi-agent system that may store prompts, outputs, and task metadata across sessions.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

This markdown file presents all troubleshooting instructions in Chinese, which can amount to a language/locale policy issue when no user opt-in or alternative language option is provided. The policy specifically calls for flagging content that forces a specific language without user choice.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
78% confidence
Finding

The natural-language documentation and usage examples are entirely in Chinese, and the file does not indicate that users may choose another language or that the skill is intentionally limited to a Chinese-speaking or region-specific context. Under the stated policy, forcing a specific language without opt-in can be a locale-policy issue.

Content

No source excerpt is available for this finding.