Back to skill

Security audit

ai-report

Security checks for vulnerabilities and agentic risk

Overview

This reporting skill is coherent, but it can automatically read agent memory and save new report files without clear confirmation, redaction, or retention controls.

Install only if you are comfortable with the skill reading dated agent memory and writing local reports. Prefer using it with automatic generation disabled or with explicit review before saving reports, especially if your memory files may contain private, confidential, or credential-like information.

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
SKILL.md:60
Finding
Automatic Collection and Persistent Duplication of Agent Memory## Vulnerability Details **File Location**: `SKILL.md`, lines 60–74 and 90–100 **Vulnerability Type**: Automatic collection and persistence of conversation-derived Agent data **Risk Level**: Medium ### Vulnerable Code ```text ## 工作原理 ``` 会话结束 ├── 扫描当日日记 memory/YYYY-MM-DD.md ├── 提取关键信息: │ ├── 完成的任务 │ ├── 讨论的主题 │ ├── 做的决策 │ └── 待跟进事项 ├── 生成结构化报告 └── 自动归档到 reports/YYYY-MM-DD.md ``` ## 触发方式 ### 自动触发 会话结束时自动生成日报(可配置开关)。 ``` ```text ## 保存位置 ``` ~/.openclaw/reports/ ├── 日报/ │ └── 2026-05-03.md ├── 周报/ │ └── 2026-W18.md └── 月报/ └── 2026-05.md ``` ``` ### Technical Analysis The Skill directs the Agent to scan `memory/YYYY-MM-DD.md` at the end of a session, extract tasks, discussion topics, decisions, and follow-up items, and automatically write the resulting report to persistent storage under `~/.openclaw/reports/`. This behavior is related to the Skill's stated reporting purpose and is disclosed in its documentation. However, it does not require explicit confirmation for each memory read or report write. It also does not define content filtering, secret redaction, file-access boundaries, output permissions, retention periods, or deletion controls. Consequently, sensitive information already present in Agent memory—including private discussions, credentials accidentally recorded in notes, personal information, internal decisions, or confidential tasks—may be duplicated into an additional long-lived file. This issue is not Agent Memory Poisoning because the Skill does not write attacker-controlled behavioral rules into memory. It is best classified as an unlisted Agent memory and conversation-data collection risk. ### Attack Path 1. A conversation or prior workflow places sensitive information in `memory/YYYY-MM-DD.md`. 2. At session termination, the Skill automatically scans the daily memory file. 3. The extraction process selects conversation-derived tasks, dis ...[truncated 1174 chars]
Remediation
## Remediation Suggestions 1. Require explicit user confirmation before reading a memory file and before saving each generated report. 2. Display the exact source file, requested date range, and destination path before processing. 3. Generate an unsaved preview so the user can review and remove sensitive content. 4. Apply secret and personal-data redaction for credentials, access tokens, private keys, financial information, and other sensitive values. 5. Limit reads to the specific user-selected memory file and reject path traversal, symbolic-link escapes, or broader directory scans. 6. Create report directories and files with restrictive permissions, such as user-only access where supported. 7. Provide configurable retention and secure deletion controls for generated reports. 8. Keep automatic session-end generation disabled by default and document the privacy implications when users enable it. 9. Avoid duplicating raw conversation content; retain only the minimum information necessary for the requested report.
Vulnerability Patterns
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (2)

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The skill describes automatically scanning dated memory files and archiving structured reports, but it does not clearly warn users that prior conversation content will be accessed and that new files will be created on disk. This creates a privacy and transparency risk: sensitive information from memory may be summarized into reports or persisted in predictable locations without sufficiently informed consent.

Vague Triggers

Medium
Confidence
95% confidence
Finding
The manual trigger phrases are broad natural-language requests such as writing a daily or weekly summary, which can easily overlap with ordinary user conversation and cause the skill to activate unintentionally. In this skill’s context, unintended activation could lead to collection of conversation-derived content and generation or storage of reports the user did not explicitly mean to create.

Static analysis

No suspicious patterns detected.