Back to skill

Security audit

ADHD X Bookmark Analyzer

Security checks for vulnerabilities and agentic risk

Overview

The skill’s bookmark analysis purpose is coherent, but it asks users to install an unpinned global CLI and can process private X bookmark data, stored sessions, local archives, scheduled jobs, and external delivery channels.

Review before installing. Prefer a vetted, pinned, project-local `bird-cli` install instead of the documented global install, avoid browser-cookie access unless you understand the account risk, keep webhook URLs out of files, and use file-only mode if you do not want private bookmark summaries sent to Discord, Slack, Telegram, or email. If you enable cron, remember it will keep running on schedule until removed.

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
SKILL.md:34
Finding

Unpinned Global Installation of a Third-Party CLI

Content
View full analysis
Remediation
View remediation
``` 2. Prefer a project-local installation over `npm install -g` and invoke the binary from the local dependency directory. Run it in a sandbox or container with access limited to the files and network destinations required for bookmark retrieval. 3. Commit a lockfile produced from the reviewed dependency graph and use a reproducible installation command such as: ```bash npm ci --ignore-scripts ``` Only permit lifecycle scripts after reviewing why they are required. 4. Document the expected package publisher, source repository, exact version, and package integrity hash. Verify these values before installation and after version updates. 5. Audit direct and transitive dependencies before upgrading. Use automated dependency monitoring, but require manual security review before accepting new package versions. 6. Limit runtime access to the X authentication directory and bookmark archive. Do not expose unrelated workspace files or unnecessary environment variables to the CLI. 7. Keep optional webhook credentials out of the CLI process environment when they are not required. Require explicit user confirmation before the first external delivery of private bookmark summaries. 8. Document an uninstall and credential-revocation procedure for users who suspect dependency compromise. ]]>
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Rogue AgentSelf-Modification, Session Persistence
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (4)

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The README explicitly instructs users to configure X access using bird CLI or browser cookies and to send automated summaries to Discord, but it provides no warning about sensitive data exposure, credential handling, or third-party sharing. In this context, the skill processes private bookmark data and may rely on session cookies, so omitting privacy and security guidance increases the risk of account compromise or unintended disclosure of personal content.

Content

No source excerpt is available for this finding.

Session Persistence

Medium
Category
Rogue Agent
Confidence
80% confidence
Finding

Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Content

Scanner excerpt · README.md (reported line 11)May include surrounding context.

md
2. **Configure X access** (bird CLI or browser cookies)
3. **Set delivery channel** in `bookmark-rules.md`
4. **Test it:** "Analyze my X bookmarks from this week"
5. **Automate it:** Add cron job for daily summaries

## What You Get

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The skill documents external delivery channels such as Discord/webhooks and provides manual trigger prompts without clearly warning that bookmark text, author data, links, and engagement metadata may be sent off-machine. This creates a privacy and data-handling transparency issue: users may invoke the skill expecting local analysis while unintentionally transmitting potentially sensitive saved content to third-party services.

Content

No source excerpt is available for this finding.

Excessive Permissions

Low
Category
Privilege Escalation
Confidence
80% confidence
Finding

Skill requests more permissions than appear necessary for its stated functionality. Review if elevated access is justified.

Content

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

md
3. **Data Storage:** Bookmark archives are stored locally in your workspace. No data is sent to external services except your configured delivery channel.

4. **Permissions:** The skill only reads your bookmarks and writes to your local archive. It does not post to X, modify bookmarks, or access DMs.

## Troubleshooting

Static analysis

No suspicious patterns detected.