Back to skill

Security audit

飞书快速集成配置

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent Feishu setup guide, but it asks users to grant and store broad enterprise credentials without enough scoping or safety guidance.

Review this before installing in a real Feishu tenant. Use the narrowest Feishu scopes needed, avoid granting write scopes unless required, store App Secret values with restricted permissions or a secrets manager, keep config files out of source control and backups where possible, and test write-capable workflows in a sandbox first.

Vulnerability Patterns
  • 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
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T09 · Insecure Skill Coding Practices

Warning
Location
SKILL.md:52
Finding

Plaintext Storage of a Broadly Privileged Feishu Application Secret

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 52-60
Vulnerability Type: Plaintext sensitive credential storage
Risk Level: Medium

Vulnerable Code

yaml
appSecret: "xxxxxxxxxxxxxxxx"

The surrounding instructions direct users to place their actual Feishu application secret in ~/.openclaw/config.yml. The application is also granted document and cloud-storage permissions such as docx:document and drive:drive, with optional write access to wikis and Bitable records.

Technical Analysis

The documented configuration stores a long-lived application secret directly in a local YAML file. No instructions are provided to use a secret manager, environment-backed credential reference, encrypted credential store, or restrictive file permissions.

Any local user, compromised process, backup service, diagnostic bundle, or accidental configuration disclosure capable of reading this file could recover the Feishu App ID and App Secret. The exposed credentials could then be used to authenticate as the application and exercise the permissions granted to it.

The recommended permission set also includes broad read/write scopes. This increases the potential consequences of credential exposure and does not clearly enforce least privilege for users who only require read access.

Attack Path

  1. A user follows the Skill instructions and writes the Feishu App Secret to ~/.openclaw/config.yml.
  2. The configuration file is created with permissions that permit another local account or compromised process to read it, or it is copied into an insecure backup or support archive.
  3. An attacker reads the configuration and extracts the App ID and App Secret.
  4. The attacker uses the credentials to authenticate to the Feishu API as the configured application.
  5. The attacker accesses or modifies resources available through the application's approved scopes.

Impact Assessment

Successful exploitation could expose enterprise documents and cl ...[truncated 437 chars]

Remediation
View remediation

Remediation Suggestions

  1. Store the App Secret in a supported secret manager, operating-system credential store, or environment-backed secret facility rather than directly in the YAML configuration.
  2. If file-based storage is unavoidable, place secrets in a separate file restricted to the OpenClaw service account and enforce owner-only permissions such as 0600.
  3. Ensure configuration files and secrets are excluded from source control, logs, diagnostics, support bundles, and unencrypted backups.
  4. Grant only the Feishu scopes required for the intended workflow. Prefer read-only scopes when write access is unnecessary and avoid granting redundant read-only and read/write scopes together.
  5. Use separate application credentials for different tenants and environments to limit the blast radius of one exposed secret.
  6. Document secret rotation and immediate revocation procedures. Rotate credentials after any suspected configuration disclosure.
  7. Run OpenClaw under a dedicated, minimally privileged operating-system account so unrelated local processes cannot access its credentials.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (5)

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The guide instructs users to place App ID and especially App Secret directly into a local configuration file without any secret-handling guidance. This can lead to credential leakage through file disclosure, backups, screenshots, logs, shared home directories, or accidental commits, enabling unauthorized access to the connected Feishu tenant.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The skill encourages creating and updating Feishu documents, wiki pages, and bitable records without clearly warning that these actions modify remote enterprise data. In an agent context, users may issue broad natural-language commands and unintentionally overwrite, create, or alter business content, causing integrity and operational risks.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
86% confidence
Finding

The natural-language instructions, headings, and examples are all in Chinese, and the file does not indicate that the user may choose another language or that the skill is intentionally restricted to a Chinese-language audience. Under SQP-3, forcing a specific language without opt-in can be a locale policy violation.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Low
Category
Not specified by scanner
Confidence
80% confidence
Finding

The manifest frames the skill as a rapid integration for document management, knowledge base access, and automation workflows. The advanced section additionally recommends subscribing to contact.user.created_v3 and im.message.receive_v1, which add user/account-event and messaging capabilities not clearly justified by that stated scope.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
90% confidence
Finding

The manifest names and describes the skill as a Chinese-specific Feishu quickstart, including Chinese-language description text and a "chinese" keyword, but it does not indicate that language choice is optional or that the locale restriction is required. This can violate language/locale policy when a skill implicitly forces a specific language experience without explicit user opt-in or documented regional justification.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.