Back to skill

Security audit

InStreet Reply Analytics

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed local log analyzer for InStreet auto-reply reports, with minor safety and reliability caveats but no evidence of deception, exfiltration, or automatic persistence.

Install only if you are comfortable with a local script reading /tmp/instreet_reply.log. Prefer moving the log to a private application directory, avoid enabling the crontab unless you need scheduled reports, and review the script before running it on sensitive or multi-user systems.

Vulnerability Patterns
  • System PersistenceInstalls backdoors, hooks, services, or scheduled tasks that survive the run
  • 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
Findings (3)

T06 · System Persistence

Error
Location
README.md:78
Finding

Documented Cron Job Creates Persistent Recurring Execution

Content
View full analysis
report.txt ``` ### Technical Analysis The documentation instructs the user to add a cron entry that executes the Skill every day. Although this is disclosed and functionally related to scheduled reporting, the core report-generation functionality only requires on-demand execution. Registering a scheduled task introduces cross-session persistence beyond that minimum requirement. The cron entry executes a mutable script by path. It does not pin the executed file to a trusted version, verify its integrity, use an explicitly restricted account, or protect the Skill directory from later modification. Consequently, compromise or replacement of `scripts/analyze_replies.py` after installation would turn the existing cron entry into a recurring execution mechanism. The project does not install the cron entry automatically; exploitation depends on a user following the documented instructions. ### Attack Path 1. A user follows the README and registers the supplied cron entry. 2. The cron daemon begins executing `scripts/analyze_replies.py` daily under the privileges of the account that owns the crontab. 3. An attacker, compromised update process, or another process with write access to the Skill directory modifies or replaces the script. 4. At the next scheduled time, cron executes the modified code without further user interaction. 5. The modified code continues to run on each subsequent schedule until the cron entry is removed. ### Impact Assessment The attacker could repeatedly execute arbitrary code with the permissions of the cron-owning account. This does not inherently provide privilege escalation: a user crontab runs as that user, while a system or privileged crontab could increase the impact if configured impro ...[truncated 218 chars]
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Warning
Location
scripts/analyze_replies.py:14
Finding

Predictable Shared Temporary File Is Trusted Without Validation

Content
View full analysis
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Note
Location
scripts/analyze_replies.py:43
Finding

Malformed or Empty Log Data Can Terminate Report Generation

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (6)

Tp4

High
Category
MCP Tool Poisoning
Confidence
95% confidence
Finding

The documented behavior does not fully match the described purpose: it relies on a local log resource that is not declared, claims response-efficiency evaluation without evidence of that metric being implemented, and references a MoltbookAgent log marker while branding itself as InStreet analytics. Such mismatches are dangerous because they can mislead users about what data is processed and what assurance the generated report actually provides, causing inappropriate trust or accidental analysis of the wrong dataset.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The primary skill description is written in Chinese and does not indicate that other languages are supported or that the user can choose a locale. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation.

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
87% confidence
Finding

The skill instructs execution of a local analysis script and documents a default read from /tmp/instreet_reply.log, but it does not declare any explicit tool scope or file access permissions. That creates an undeclared file-read capability boundary, which can lead to unintended access to local data and makes it harder for operators to review what resources the skill is allowed to touch.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The manifest description forces a specific language/locale for users by presenting the skill metadata only in Chinese. Under the policy, language constraints should offer user choice or be clearly justified as region-specific, which is not stated here.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The main SKILL.md instructions and examples are presented in Chinese only, which constitutes a natural-language policy issue when no user opt-in or justification is given. There is no indication that the skill is restricted to a Chinese-language audience or that alternative language support exists.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
94% confidence
Finding

This code presents its title, status messages, and report content entirely in Chinese, which imposes a specific language on users. The file does not provide any opt-in, configuration, or documented justification for the locale constraint.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.