T05 · Unauthorized Access and Privilege Escalation
- Location
SKILL.md:59- Finding
Overly Broad Feishu Application Permissions Violate Least Privilege
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:59-87
Vulnerability Type: Excessive application permissions
Risk Level: HighVulnerable Code
json { "scopes": { "tenant": [ "aily:file:read", "aily:file:write", "application:application.app_message_stats.overview:readonly", "application:application:self_manage", "application:bot.menu:write", "cardkit:card:write", "contact:user.employee_id:readonly", "corehr:file:download", "docs:document.content:read", "event:ip_list", "im:chat", "im:chat.access_event.bot_p2p_chat:read", "im:chat.members:bot_access", "im:message", "im:message.group_at_msg:readonly", "im:message.group_msg", "im:message.p2p_msg:readonly", "im:message:readonly", "im:message:send_as_bot", "im:resource", "sheets:spreadsheet", "wiki:wiki:readonly" ], "user": [ "aily:file:read", "aily:file:write", "im:chat.access_event.bot_p2p_chat:read" ] } }Technical Analysis
The Skill instructs the Agent to bulk-import a fixed collection of tenant-wide and user-level permissions. These include file reading and writing, HR file downloads, document access, chat and message access, spreadsheet access, wiki access, bot message sending, and application self-management.
The stated purpose is creating a Feishu application for an OpenClaw integration, but the Skill does not associate each permission with a required feature or restrict the permission set according to the user's intended functionality. Automatically requesting the complete set breaks the principle of least privilege.
This issue does not independently bypass Feishu's authorization controls: the requested scopes may still require user or administrator approval. However, the automated workflow encourages approval of a broad per ...[truncated 1455 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace the fixed permission bundle with a minimal baseline containing only scopes required for core functionality.
- Document the feature that requires each scope and remove any scope without a demonstrated operational dependency.
- Make sensitive capabilities, such as HR file downloads, file writes, complete message access, and application self-management, individually optional.
- Present the final scope list and its security implications to the user before importing or submitting it.
- Require explicit confirmation before requesting tenant-wide or write-capable permissions.
- Separate read-only and write-enabled deployment profiles.
- Provide deployment-specific permission manifests so installations do not receive capabilities for disabled features.
- Periodically audit granted permissions and revoke unused scopes.
- Ensure tenant administrators independently review the requested scopes before approval.
