Back to skill

Security audit

X Brand Operator

Security checks for vulnerabilities and agentic risk

Overview

This skill is a coherent social-media automation tool, but it can create recurring public account actions and use a logged-in browser profile without enough explicit controls.

Install only if you intend to run unattended X/Twitter brand automation. Before enabling it, use a dedicated xurl app and browser profile for the correct account, review each cron schedule, confirm the Telegram recipient, prefer dry-run or manual approval for posts and engagement, and ensure dynamic command arguments are passed safely rather than through shell interpolation.

Vulnerability Patterns
  • 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
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T09 · Insecure Skill Coding Practices

Error
Location
SKILL.md:25
Finding

Shell Command Injection Through Unsafely Interpolated Content

Content
View full analysis
post "" ``` `references/cron-config.md:28`: ```text Primary: exec → xurl --app post "" ``` `references/cron-config.md:55`: ```text 1. Search each keyword: xurl --app search "" -n 5 ``` `references/engagement-playbook.md:51-53`: ```text 1. `xurl like ` 2. Write reply (personalised, quality-checked) 3. `xurl reply ""` → fallback to browser if fails ``` ### Technical Analysis The Skill constructs shell-style commands by inserting values such as ``, ``, ``, ``, and `` directly into command strings. Several of these values are generated from brand configuration, model output, user input, or content retrieved from X/Twitter. Wrapping a value in double quotes does not make it safe for shell execution. If the underlying `exec` implementation invokes a command shell, characters such as double quotes, command substitutions, backticks, variable expansions, redirection operators, and command separators may still alter the intended command. For example, generated text containing a closing quote followed by shell syntax could terminate the expected argument and introduce another command. The risk is particularly relevant because reply and posting content may be influenced by external social-media posts. Quality scoring and personalization requirements do not constitute syntactic validation or shell escaping. ### Attack Path 1. An attacker supplies malicious brand configuration, asks the operator to use crafted tweet text, or publishes an X/Twitter post designed to influence a generat ...[truncated 1622 chars]
Remediation
View remediation
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Rogue AgentSelf-Modification, Session Persistence
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (7)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger list is broad enough to match common social-media requests and can invoke a skill that performs real external actions on X/Twitter. Because the skill can post, reply, follow, and schedule recurring jobs, accidental invocation could cause unintended account activity or automation setup without sufficiently explicit user intent.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The skill explicitly uses a browser fallback with a user profile, which means actions may be taken through an already logged-in X account. Without a prominent warning and confirmation, users may not realize the skill can bypass API-only behavior and directly act as them in the browser, increasing the risk of unauthorized posting or engagement from the wrong account.

Content

No source excerpt is available for this finding.

Session Persistence

Medium
Category
Rogue Agent
Confidence
83% confidence
Finding

The skill is designed to create recurring cron-based automation for posting, engagement, and reporting, which persists beyond the initiating session. Persistent scheduled actions increase risk because a mistaken setup, compromised prompt, or wrong account context can continue causing repeated external actions without fresh user review.

Content

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

md
- `xurl --app <app>` — Post, reply, like, follow, search via X API v2
- `browser` — Fallback for posting/replying when xurl fails (profile: user)
- `cron` — Schedule recurring tasks (post, engage, report)
- `message` — Send Telegram alerts on failures or completions

## Posting a Tweet

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The failure path instructs the agent to send Telegram alerts that include draft text, but there is no privacy notice or sensitivity check. Draft posts may contain unpublished marketing copy, internal links, embargoed announcements, or personal data, so forwarding them to another channel can create an unnecessary data exposure risk.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The skill explicitly automates external social account actions including posting, replying, liking, and following, but provides no user-facing warning, consent checkpoint, or policy guardrail around automated third-party account activity. In a cron-driven configuration, this increases the chance of unattended actions that could violate platform rules, damage account reputation, or perform unintended engagement at scale.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The weekly report is configured to send follower metrics, engagement results, and operational activity summaries to Telegram without any privacy notice or handling guidance. That creates a data-leakage risk because analytics, account activity, and potentially sensitive business performance information are automatically transmitted to an external messaging channel on a schedule.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The instruction "Write an English tweet" imposes a specific language requirement in natural language. Under SQP-3, forcing a language without user opt-in or documented justification is a policy concern.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.