Back to skill

Security audit

War Room — Adversarial Decision Engine

Security checks for vulnerabilities and agentic risk

Overview

The skill’s core war-room evaluation is coherent, but it includes unsafe shell-based temp-file handling and multiple automatic persistence steps for potentially sensitive strategy data.

Install only if you are comfortable with the agent writing proposal material and final reports to local files, spawning subagents that read shared context, and potentially storing decisions in memory or committing reports to Git. Before use, remove or override the shell exec temp-file template, require explicit approval for any file, memory, Git, or log persistence, and avoid submitting confidential strategy data unless retention behavior is controlled.

Vulnerability Patterns
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • 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
  • 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 (3)

T09 · Insecure Skill Coding Practices

Error
Location
references/prompts.md:12
Finding

Shell Command Injection During Temporary Context File Creation

Content
View full analysis
/tmp/rt_{topic}.md << 'DATA'\n{proposal_content}\nDATA") ``` The file-based workflow is also recommended in `SKILL.md:36-41`, making this template part of the Skill's documented execution path. ### Technical Analysis The command constructs a shell script by directly interpolating the untrusted `topic` and `proposal_content` values. The `proposal_content` value is inserted into a shell heredoc. An attacker can include a line containing only `DATA` to terminate the heredoc early and then append arbitrary shell commands. The `topic` value is interpolated into an unquoted pathname and may also introduce shell metacharacters, redirections, substitutions, or additional commands. Because the resulting string is passed to `exec`, injected content is interpreted as shell syntax rather than treated exclusively as file data. The fixed `/tmp/rt_{topic}.md` naming pattern also lacks safe temporary-file creation controls. ### Attack Path 1. An attacker submits a strategic proposal containing a standalone `DATA` line. 2. The attacker places a shell command after that line. 3. The Skill interpolates the proposal into the documented `exec` template. 4. The injected `DATA` line closes the intended heredoc. 5. The shell parses and executes the attacker's subsequent command. 6. The command runs with the same operating-system permissions as the hosting Agent. A malicious `topic` can provide another injection path if shell syntax is inserted into the unquoted temporary-file pathname. ### Impact Assessment Successful exploitation permits arbitrary command execution under the Agent process's account. Depending on that account's permissions, an attacker could: - Read files accessible to the Agent. - Modif ...[truncated 391 chars]
Remediation
View remediation

T02 · Agent Memory Poisoning

Warning
Location
SKILL.md:87
Finding

Uncontrolled Persistence of Proposal-Derived Decisions in Long-Term Memory

Content
View full analysis
Remediation
View remediation

other

Warning
Location
SKILL.md:87
Finding

Automatic Repository and Log Modification Without Explicit Authorization

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (16)

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
95% confidence
Finding

The prompt instructs the agent to git commit the report, which is an unrelated repository-modification action for an analysis skill. This can permanently persist sensitive report contents and alter repositories without clear authorization, potentially triggering data leakage, compliance issues, or unintended operational changes.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill recommends copying full proposal data into /tmp for token optimization without warning that sensitive content will be persisted locally. Temporary directories are not inherently safe; proposal material may be accessible to other processes, survive longer than expected, or be captured in backups and diagnostics.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The skill mandates writing the report to ~/roundtable without warning the user that local files will be created or modified. This is dangerous because strategic evaluations often contain sensitive business information, and silent filesystem writes can leave discoverable artifacts on shared or managed systems.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
75% confidence
Finding

The skill explicitly directs the agent to save the full report to disk and then reply with the report content rather than just a path. In a strategic decision workflow, that report can contain sensitive proposal data, internal analysis, and quotations from subagents; this is a natural-language directive to expose collected information back to the requester without any confidentiality guardrails.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

This section directs persistent retention of user-derived decision data across memory, logs, and version control, creating multiple durable copies of potentially sensitive material. In the context of a strategy-evaluation skill, users may provide confidential plans, financial forecasts, hiring data, or security architecture details, so broad retention materially increases leakage and secondary-use risk.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The instruction to store decisions to long-term memory lacks any disclosure that user data will be retained beyond the current task. This undermines user expectations and can preserve sensitive strategic information in a way that is disproportionate to the stated functionality of producing an evaluation report.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill instructs storing key decisions to long-term memory even though persistent retention is not required to perform a one-shot war-room evaluation. This creates unnecessary data retention of potentially sensitive business, hiring, financial, or architectural content and increases the risk of later disclosure or misuse.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill tells the agent to git commit the generated report if in a managed repo, which extends behavior from analysis into repository modification without user consent. That can permanently record confidential decision materials in version history and may trigger unintended sharing through remotes, CI systems, or collaborator access.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The template tells the agent to pass untrusted proposal content through a shell heredoc via exec and to interpolate a user-controlled topic into a /tmp path. This creates command/file injection risk and can expose sensitive proposal data in a world-accessible temporary location; in this skill context, proposals may include confidential business, hiring, finance, or architecture material, making the practice more dangerous than a generic temp write.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The template instructs writing full proposal data to disk through a shell-based temp-file mechanism without warning the user that their content will be persisted outside the prompt. Even if no injection occurs, this is a transparency and privacy failure, and in this skill the stored data may contain highly sensitive strategic material.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The checklist directs storage of key decisions to long-term memory even though persistence is not part of the skill's stated evaluation purpose. That can retain sensitive strategic, financial, hiring, or product information beyond the user’s expectation and broaden the data exposure surface if memory is later retrieved in unrelated contexts.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The instruction to store decisions to long-term memory lacks any warning that the data will persist and may influence future interactions. For a war-room skill handling business-critical decisions, this hidden persistence materially increases confidentiality and expectation-of-use concerns.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

Committing the report to git without warning hides a major persistence boundary: version control preserves content in history and may replicate it to remotes. Given the likely presence of strategic, financial, or personnel-sensitive analysis, the lack of disclosure is especially risky in this skill context.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
86% confidence
Finding

Updating a daily log file extends the skill beyond evaluation into additional persistence of user-derived content and metadata. In this context, repeated logging of strategic deliberations can accumulate sensitive information over time without user awareness, increasing privacy and confidentiality risk.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Low
Category
Not specified by scanner
Confidence
88% confidence
Finding

Updating a daily log is outside the core purpose of evaluating a proposal and silently creates another persistence channel for user-derived information. While lower impact than memory or git commits, it still broadens the footprint of sensitive data and can leak internal decision details through operational notes.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The manifest says the skill spawns five parallel subagents: Analyst, Guardian, Treasurer, Builder, and Strategist. This file additionally defines a 'Critic (Host role)' applied after collecting all 5 responses, which expands the described evaluation behavior beyond the stated five-agent structure.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.