Back to skill

Security audit

X / Twitter Search

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed X/Twitter search helper that uses xAI or X API credentials only for search, with no evidence of hidden local-file access, persistence, or account-modifying behavior.

Install this only if you are comfortable giving the skill an xAI or X API credential for search requests. Prefer the ClawHub install or a pinned reviewed commit over the manual git clone command, and keep API keys out of committed files and shared logs.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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)

T08 · Insecure Dependencies

Warning
Location
README.md:9
Finding

Unpinned Installation from a Mutable Source Repository

Content
View full analysis
Remediation
View remediation
``` 3. Publish a SHA-256 checksum for release archives and document checksum verification before installation. 4. Sign release tags or commits and require users to verify the signature against a documented maintainer key. 5. Ensure automated installation through Clawdhub resolves to immutable, integrity-verified artifacts. 6. Protect the upstream repository using multifactor authentication, branch protection, restricted release permissions, and mandatory review for changes to executable files. ]]>
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (9)

Credential Access

High
Category
Privilege Escalation
Confidence
60% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · .gitignore (reported line 2)May include surrounding context.

text
node_modules/
.env
*.log

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

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

md
Review `scripts/search.js` before first use to verify behavior.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
91% confidence
Finding

The skill declares environment-variable requirements and instructs execution of a Node script, but it does not declare an explicit tool/permission scope such as allowed tools or permissions. That weakens least-privilege guarantees and makes review/enforcement harder, because the runtime may expose env-backed secrets more broadly than the manifest communicates.

Content

No source excerpt is available for this finding.

Shadow Command Trigger

Medium
Category
Trigger Abuse
Confidence
84% confidence
Finding

The trigger "search x" shadows a built-in "search" command family, creating command-resolution ambiguity. In agent systems, this can redirect users from a safer or more expected built-in workflow to a third-party networked skill that uses API credentials and external services.

Content

No source excerpt is available for this finding.

Shadow Command Trigger

Medium
Category
Trigger Abuse
Confidence
84% confidence
Finding

The trigger "search twitter" also overlaps with the built-in "search" command namespace and may be selected instead of the platform's default search behavior. This can cause unintended external API usage, surprise data egress, and confusion about which subsystem handled the request.

Content

No source excerpt is available for this finding.

Shadow Command Trigger

Medium
Category
Trigger Abuse
Confidence
82% confidence
Finding

The trigger "find tweets" conflicts with the built-in "find" command family and is especially risky because it is both broad and action-oriented. This raises the likelihood of accidental skill invocation and unintended transmission of user queries to external endpoints using configured credentials.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The trigger phrase "find tweets" is broad enough to match ordinary user intent rather than an explicit request to invoke this specific skill. That can cause accidental activation, leading the agent to send user queries to external services and consume API-backed capabilities when the user may have expected a generic answer.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The trigger phrase "what's on x about" is ambiguous and can be interpreted in many normal conversational contexts, especially because "X" is overloaded and may not clearly denote the platform. Ambiguous triggers increase the chance of unintended skill routing and external network calls with user-provided content.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

This markdown file instructs users to place an API key in config or an environment variable, but it provides no warning about keeping the credential secret or avoiding committing it to shell history, dotfiles, or shared configs. Because markdown files should disclose behaviors affecting privacy or system integrity, the omission is a user-warning gap.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.