Back to skill

Security audit

billboardbug-deal-creator

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent BillboardBug publishing helper that clearly uses the user's API key to create public deals and chirps, with some account-action caveats to handle carefully.

Install only if you are comfortable letting an agent publish and manage public BillboardBug content under your account. Keep the API key in the environment only, review the final create/update/delete summary before approving, and avoid putting confidential business details into generated-image prompts or public chirps.

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
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (3)

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
84% confidence
Finding

The skill exposes destructive API capability (DELETE /posts/{id}) and mutable update operations without clearly constraining which post IDs may be acted on or requiring ownership verification tied to the current workflow. In an agent setting, an attacker could socially engineer the agent into deleting or modifying arbitrary posts accessible under the account, causing unauthorized content tampering or loss.

Content

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

-> {"id":"", ...}

text

Edit: `PUT /posts/{id}`. Delete: `DELETE /posts/{id}`. Comment: include `parentPostId`.

Chirp fields (`PostRequest`): `isActive` (required), `text`, `imageId`, `videoId`, `videoUrl`,
`parentPostId`, `isMature`. Supply at least one of text/imageId/videoId. Read back with

External Transmission

Medium
Category
Data Exfiltration
Confidence
88% confidence
Finding

The skill directs the agent to transmit user-supplied or generated promotional content to an external AI image endpoint using an authenticated API key. Even though this is part of the intended workflow, it creates a real data-transfer boundary where sensitive business details, prompts, or operational metadata may be sent off-platform without minimization or explicit consent handling.

Content

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

Generate (optional):

bash
curl -s https://east-us-api.billboardbug.com/ai/image \
  -H "X-Api-Key: $BILLBOARDBUG_API_KEY" -H "X-Version: 1" -H "Content-Type: application/json" \
  -d '{"prompt":"Realistic photo of a cozy neighborhood coffee shop storefront, morning light","aiProvider":5,"width":640,"height":373}' \
  > ai.json

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
90% confidence
Finding

The receipt template says the feed entry should be 'the one post you made naming the deal ID', but earlier documentation explicitly states that the post schema has no billboard/deal ID field and instructs the agent instead to name the exact business and record the billboardId in the receipt. That is an active documentation contradiction that could mislead an agent into claiming linkage the API cannot represent in the post itself.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.