Back to skill

Security audit

weekly-report-framework

Security checks for vulnerabilities and agentic risk

Overview

The skill is for legitimate weekly reporting, but it asks the agent to collect and permanently keep broad workplace group-chat history and attachment-derived information.

Install only if the operator is authorized to process the relevant workplace chats and can control which groups, date ranges, files, and images are collected. Before use, narrow triggers, require explicit approval for each chat and historical range, avoid permanent raw chat archives, and set deletion or redaction rules for retained records.

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
Findings (1)

other

Warning
Location
references/项目周报管理框架V2.5.md:332
Finding

Excessive Collection and Indefinite Retention of Workplace Chat Data

Content
View full analysis
write it directly to a Markdown file. - Image message -> download it to a temporary directory, perform visual recognition, record key information in Markdown, and delete the temporary image. - File message -> download it to a temporary directory, read its contents, record key information in Markdown, and delete the temporary file. Initial collection rules: - Collect messages from the previous 90 days. - Continue pagination until all messages are obtained or the three-month boundary is reached. - Produce a complete Markdown document and last_fetch.json. Chat-message retention policy: - Permanently retain chat collection records without deletion. - Retain records even after project completion or after-sales support. - Do not clean, archive, or delete them. Message filtering: - Do not over-filter; collect everything first and classify it afterward. - Exclude irrelevant conversation, duplicate messages, and non-work content. ``` ### Technical Analysis The Skill's legitimate purpose is to prepare weekly reports, but its documented workflow initially collects up to 90 days of chat history, processes every encountered image and file, and performs filtering only after collection. This creates a data-minimization failure because the collection scope is substantially broader than the current weekly reporting period. Although original attachments are deleted after processing, derived information remains in persistent Markdown records. This may include message text, partic ...[truncated 2731 chars]
Remediation
View remediation
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (17)

Missing User Warnings

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The skill instructs the agent to read project lists, group-chat mappings, and fetch group-chat messages, but it does not present a clear user-facing warning or consent notice that group communications will be accessed and processed. This is especially risky because group chats may contain sensitive business, personal, or third-party data from participants who did not directly request the operation.

Content

No source excerpt is available for this finding.

Missing User Warnings

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

The first-run workflow performs bulk collection of up to 90 days of chat history, yet the skill does not provide a strong up-front warning describing the scale of collection, persistence of records, or privacy implications for all affected participants. Bulk historical ingestion materially increases exposure because it captures far more than the minimum data needed for a single weekly report.

Content

No source excerpt is available for this finding.

Hidden Instructions

High
Category
Prompt Injection
Confidence
60% confidence
Finding

Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.

Content

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

md
# 智能装备研究所:项目周报管理框架

**版本:V2.5    日期:2026-07-08 18:24**

Hidden Instructions

High
Category
Prompt Injection
Confidence
60% confidence
Finding

Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.

Content

Scanner excerpt · references/项目周报管理框架V2.5.md (reported line 1)May include surrounding context.

md
# 智能装备研究所:项目周报管理框架

**版本:V2.5    日期:2026-07-08 18:24**

Ssd 3

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

This section directs comprehensive ingestion of chat content, downloaded files, image-derived information, message IDs, and long-term archived summaries, including a rule that chat records are permanently retained. In a corporate setting, that creates a strong data-leakage and privacy risk because the agent becomes a secondary repository for sensitive communications and document content, potentially bypassing original platform permissions, retention rules, and need-to-know boundaries.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The trigger set includes very broad phrases such as '周报', '生成周报', and '导出周报', which can cause the skill to activate in contexts where the user did not intend the full weekly-report workflow. Because this workflow includes project-data handling, knowledge-base access, and chat-related processing, accidental activation increases the chance of unnecessary data access and unintended report generation.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The scheduled behaviors automatically generating reports and prompting users at fixed times are insufficiently scoped and do not state consent, tenancy boundaries, or safeguards on when data access is allowed. In a skill that can read knowledge-base files and trigger chat collection workflows, ambiguous automation can lead to processing sensitive project information without a fresh user request.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
86% confidence
Finding

The skill requires remembering project names and chat associations and recording them into a knowledge base, creating persistent linkage between people, projects, and communication channels. Persistent storage of these mappings increases the risk of unauthorized reuse, correlation of sensitive internal data, and exposure if the knowledge base is later accessed by other workflows or users.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The workflow explicitly instructs the agent to bulk capture as much as 90 days of group-chat history and create persistent fetch records such as last_fetch.json. This creates a durable archive of communications that may contain sensitive internal discussions, making overcollection and long-term exposure more likely than necessary for the reporting purpose.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

The retention policy states that group-chat capture records are kept permanently, which is disproportionate for weekly-report generation and creates continuing exposure of sensitive communications. Permanent retention increases the consequences of future compromise, misuse, or repurposing of historical chat data well beyond the original business need.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger phrase "生成周报" is generic and appears multiple times as the primary activation phrase, without any namespace, permission check, or contextual qualifier. In an agent environment, such a broad trigger can cause unintended invocation from normal conversation, leading to accidental file creation, knowledge-base initialization, or other side effects tied to the weekly-report workflow.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The framework instructs the agent to build per-department knowledge bases and later populate them with project lists, chat mappings, member attribution, warnings, and report archives, but it does not present any explicit user-facing privacy notice, consent gate, or data-minimization boundary. In this context, the structure is clearly intended to support ongoing collection of internal project and communication data, so the absence of privacy controls increases the risk of silent over-collection and retention of sensitive business information.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

This section defines a persistent knowledge-base architecture that stores project inventories, chat mappings, member affiliations, learning records, warning logs, fetched chat records, draft reports, and archives. Persistently consolidating internal operational data in natural-language files increases exposure because sensitive details become easy to search, copy, and reuse beyond the original purpose, especially if access controls and retention boundaries are not specified.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The document requires recording all fetched group names and detailed source references in the report so data provenance is visible. While traceability is useful, exposing exact internal group names and collaboration structure leaks sensitive organizational metadata and can reveal project scope, counterparties, internal teams, and communication topology to anyone with report access.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

The document gives conflicting security-relevant instructions for group-chat association: one section permits fuzzy matching with manual confirmation, while another later section requires exact matching and forbids fuzzy matching. In an automation workflow that binds internal project IDs to chat sources, this ambiguity can cause the agent to attach the wrong conversation, resulting in data being ingested from or disclosed across unrelated internal groups.

Content

No source excerpt is available for this finding.

Ssd 3

Low
Category
Not specified by scanner
Confidence
81% confidence
Finding

The '铁律' instructs the agent to remember project names and chat associations, encouraging persistent retention of internal mapping data outside a clearly bounded storage and lifecycle policy. Although operationally convenient, this increases the chance that sensitive internal relationship data is retained longer than necessary and reused in later contexts without fresh authorization.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

This code file contains user-facing natural-language content in the module docstring and CLI help text exclusively in Chinese. Under the policy rule, forcing a specific language without user opt-in is a natural-language policy concern unless the locale constraint is explicitly documented and justified.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.