Back to skill

Security audit

Claw Me Maybe - Beeper Desktop API & Multi-Platform Messaging

Security checks for vulnerabilities and agentic risk

Overview

This skill is a coherent Beeper messaging integration, but it asks for broad chat access and persistent token storage while giving weak guardrails for sending or changing messages.

Review this carefully before installing if your Beeper account includes sensitive personal or work chats. Use the minimum accounts you need, avoid storing the token in plaintext when possible, revoke or rotate the token if you stop using the skill, and require the agent to confirm before it sends, reacts, archives, marks read, downloads attachments, or creates chats/reminders.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Rogue AgentSelf-Modification, Session Persistence
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (8)

Missing User Warnings

High
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill markets cross-platform search, inbox summarization, attachment access, and contact/message retrieval without prominently warning that it exposes highly sensitive communications and social graph data. Users may authorize or invoke the skill without understanding that it can access private content across multiple services from a single interface.

Content

No source excerpt is available for this finding.

Credential Access

High
Category
Privilege Escalation
Confidence
91% confidence
Finding

The skill instructs users to generate a long-lived Beeper access token for automation, which grants broad access to unified messaging data and actions across many platforms. If mishandled, leaked, or reused by other local tools, the token could enable reading messages, contacts, attachments, and sending or modifying communications.

Content

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

md
### 3. (Optional) Add Your Beeper Token

For smoother automation, grab an access token:

1. Beeper Desktop → Settings → Developers
2. Click "Create Access Token"

Credential Access

High
Category
Privilege Escalation
Confidence
94% confidence
Finding

The documentation tells users to place the access token in a local configuration file, creating persistent plaintext credential storage for a highly sensitive messaging integration. This raises the risk of token theft via local compromise, backups, accidental sharing, or other tools that read the config file.

Content

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

For smoother automation, grab an access token:

  1. Beeper Desktop → Settings → Developers
  2. Click "Create Access Token"
  3. Add to ~/.clawdbot/clawdbot.json:
json

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill advertises state-changing capabilities such as sending messages, reacting, setting reminders, and marking chats as read, but it does not include an explicit caution that these actions modify user communications and account state. That omission increases the risk of accidental or unauthorized actions, especially when driven by natural-language requests.

Content

No source excerpt is available for this finding.

Session Persistence

Medium
Category
Rogue Agent
Confidence
90% confidence
Finding

Storing the Beeper access token in ~/.clawdbot/clawdbot.json creates session persistence beyond the immediate interactive flow. Persistent credentials increase the blast radius of any local compromise and make unintended future access to messaging accounts more likely.

Content

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

For smoother automation, grab an access token:

  1. Beeper Desktop → Settings → Developers
  2. Click "Create Access Token"
  3. Add to ~/.clawdbot/clawdbot.json:
json

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill encourages broad natural-language commands for searching, summarizing, and sending messages across many platforms without requiring clear confirmation boundaries. In a high-impact messaging context, ambiguous prompts can cause unintended disclosure of private message history or accidental outbound communications on the user's behalf.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

See all connected platforms in your Beeper:

bash
curl -s "${BEEPER_API_URL}/v1/accounts" \
  -H "Authorization: Bearer ${BEEPER_ACCESS_TOKEN}"

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
-H "Authorization: Bearer ${BEEPER_ACCESS_TOKEN}" | jq -r '.[0].id')

# React with thumbs up
curl -X POST "${BEEPER_API_URL}/v1/chats/{chatID}/messages/${LAST_MSG}/reactions" \
  -H "Authorization: Bearer ${BEEPER_ACCESS_TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{"emoji": "👍"}'

Static analysis

No suspicious patterns detected.