Back to skill

Security audit

cleans and optimize Xbio cleaner

Security checks for vulnerabilities and agentic risk

Overview

The skill is a small, disclosed wrapper for an X/Twitter CLI, but it asks users to trust an unaudited external binary with browser session cookies and account posting capability.

Install only if you are comfortable granting the `bird` executable access to X/Twitter authentication material and possible posting authority. Prefer a dedicated, revocable API key or isolated browser profile over your main browser cookies, run `bird check` before use, and review the upstream CLI provenance before authorizing account actions.

Vulnerability Patterns
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • 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
Findings (2)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:5
Finding
Unpinned Third-Party CLI Installed from a Mutable Homebrew Tap<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, line 5 **Vulnerability Type**: Unpinned dependency from a third-party package source **Risk Level**: Medium ### Evidence ```yaml metadata: {"clawdbot":{"emoji":"🐦","requires":{"bins":["bird"]},"install":[{"id":"brew","kind":"brew","formula":"steipete/tap/bird","bins":["bird"],"label":"Install bird (brew)"}]}} ``` ### Technical Analysis The skill delegates its functionality to the external `bird` executable and provides an installation definition referencing the third-party Homebrew formula `steipete/tap/bird`. The configuration does not pin an immutable release, commit, artifact digest, or cryptographic checksum. Consequently, the executable installed during a future deployment may differ from the version originally reviewed. The project contains no source code for the executable, so its behavior—including its handling of browser cookies and API credentials—cannot be verified from the audited artifact. This is a supply-chain weakness rather than evidence that the current package is malicious. Exploitation would require compromise or unsafe modification of the Homebrew tap, formula, upstream release process, or distributed artifact. ### Attack Path 1. An attacker compromises an upstream release channel, the third-party Homebrew tap, or an account authorized to update the formula. 2. The attacker changes the formula or referenced artifact so that it installs a malicious `bird` executable. 3. A user installs the dependency using the installation metadata in the skill. 4. The user invokes `bird` for an otherwise legitimate reading, searching, or posting operation. 5. The substituted executable runs with the user's local privileges and may access the authentication material made available to it. 6. The executable can potentially steal credentials, perform unauthorized account actions, or access other data available to the user account. ### Impact Assessment Successful supply-chain compromise ...[truncated 433 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Pin the dependency to a reviewed, immutable release rather than relying on a mutable formula reference. 2. Verify downloaded artifacts with a documented cryptographic checksum or signature. 3. Document the authoritative source repository, release process, and expected artifact provenance. 4. Prefer a trusted package source with reproducible builds and integrity verification. 5. Audit the source code of the exact `bird` release before permitting it to handle browser cookies or API credentials. 6. Revalidate the dependency whenever its pinned version or checksum changes. 7. Avoid silent or automatic upgrades that could replace the reviewed executable without a new security assessment. ]]>

T05 · Unauthorized Access and Privilege Escalation

Error
Location
SKILL.md:22
Finding
Unaudited External Binary Receives Access to Browser Session Cookies<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 22–25 **Vulnerability Type**: Sensitive credential access by an external executable **Risk Level**: High ### Evidence ```markdown Auth sources - Browser cookies (default: Firefox/Chrome) - Sweetistics API: set `SWEETISTICS_API_KEY` or use `--engine sweetistics` - Check sources: `bird check` ``` ### Technical Analysis The documented default authentication method uses cookies from Firefox or Chrome. Browser session cookies are sensitive bearer credentials that may authorize account access without requiring the user's password for every operation. The project contains only the skill documentation and does not include the implementation of `bird`. It is therefore not possible to verify which browser files are accessed, how cookies are selected, whether credentials are logged or persisted, or whether they are transmitted only to intended service endpoints. Cookie-based authentication may be required for the advertised functionality, so the documentation alone does not prove malicious access. However, making browser-cookie access the default delegates high-value credentials to an unaudited third-party executable and lacks an explicit least-privilege boundary. ### Attack Path 1. The user installs the external `bird` executable and invokes a documented command such as `bird whoami`, `bird read`, or `bird tweet`. 2. Under the documented default configuration, the executable locates authentication cookies stored by Firefox or Chrome. 3. A compromised or unsafe implementation extracts a reusable X/Twitter session cookie. 4. The implementation stores, logs, or transmits the cookie to an attacker-controlled destination. 5. The attacker reuses the session credential while it remains valid. 6. Depending on the session's permissions and platform controls, the attacker reads account-accessible information, posts content, sends replies, or performs other authenticated actions. An equivalent exposure ...[truncated 702 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Require explicit user consent before accessing browser-cookie stores; do not make cookie extraction the implicit default. 2. Prefer dedicated, revocable, and least-privilege API credentials where supported. 3. Document precisely which browser profiles, files, cookie domains, and credential fields the executable reads. 4. Use an isolated browser profile containing only the account required for the task. 5. Ensure credentials are never written to logs, command output, crash reports, telemetry, or unprotected temporary files. 6. Keep credentials in memory only for the minimum necessary duration and clear sensitive buffers where practical. 7. Restrict outbound network communication to documented service endpoints and provide a way to verify those destinations. 8. Provide instructions for revoking sessions and rotating API keys after suspected exposure. 9. Audit the exact external executable and its credential-handling implementation before authorizing production use. 10. Preserve the existing requirement to obtain user confirmation before posting tweets or replies, and apply equivalent confirmation controls to other state-changing account actions. ]]>
Vulnerability Patterns
  • YARA SignaturesMalware Match, Webshell Match, Cryptominer Match
  • 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 (1)

YARA rule 'info_stealer': Information stealer patterns (credential harvesting, browser data theft) [malware]

High
Category
YARA Match
Content
{"id":"brew","kind":"brew","formula":"steipete/tap/bird","bins":["bird"],"label":"Install bird (brew)"}]}}
---

# bird

Use `bird` to read/search X and post tweets/replies.

Quick start
- `bird whoami`
- `bird read <url-or-id>`
- `bird thread <url-or-id>`
- `bird search "query" -n 5`

Posting (confirm with user first)
- `bird tweet "text"`
- `bird reply <id-or-url> "text"`

Auth sources
- Browser cookies (default: Firefox/Chrome)
- Sweetistics API: set `SWEETISTICS_API_KEY` or use `--engine sweetistics`
- Check sources: `bird check`
Confidence
75% confidence
Finding
YARA rule matched a known malware signature (reverse shell, backdoor, ransomware, C2 framework, or info stealer).

Static analysis

No suspicious patterns detected.