Back to skill

Security audit

Facebook Analytics

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed Facebook analytics connector that uses a third-party read-only MCP URL, with credential-handling risks users should understand before connecting it.

Install only if you are comfortable connecting your Facebook Page analytics through Boring. Keep the MCP URL private, use it only in trusted connector settings, and revoke or regenerate it if it is shared or exposed. The package documents read-only analytics access, but the remote service implementation and token enforcement are outside this artifact.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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)

T09 · Insecure Skill Coding Practices

Warning
Location
SKILL.md:8
Finding
Authentication Token Embedded in MCP Connector URL## Vulnerability Details **File Location**: `SKILL.md`, lines 8-32 **Vulnerability Type**: Credential exposure through a token-bearing URL **Risk Level**: Medium The Skill requires users to copy a URL containing an embedded authentication token into an external connector. Although this behavior is disclosed and the token is described as read-only, placing credentials in URLs increases the likelihood that they will be exposed through configuration storage, application logs, telemetry, browser history, screenshots, clipboard history, referrer data, or support diagnostics. ### Vulnerable Code Snippet ```markdown homepage: https://boring-doc.aiagent-me.com/getting-started/mcp.html requires: config: - MCP Connector link from boring.aiagent-me.com (contains embedded auth token) --- # Facebook Analytics Track your Facebook Page performance — reach, engagement, video views, and post-level metrics. Powered by [Boring](https://boring-doc.aiagent-me.com). ## Security & Data Handling - **MCP link is a credential**: Your MCP Server URL (`https://boring.aiagent-me.com/mcp/t/xxxxx...`) contains an embedded authentication token. Treat it like a password — do not share it publicly. - **Token scope**: The embedded token is **read-only** for analytics. It can only fetch performance metrics and account metadata. It cannot publish, delete, or modify any content on your social media accounts. - **Token storage**: The token is stored server-side in Boring's database (MongoDB on DigitalOcean). It is never written to your local filesystem. You can regenerate or revoke it anytime at [boring.aiagent-me.com/settings](https://boring.aiagent-me.com/settings). - **Data flow**: Analytics queries are sent from Boring's server (Google Cloud, us-central1) to the platform's API on your behalf. Only performance metrics are retrieved — no content is uploaded or modified. - **No local credentials**: No local API keys, environment ...[truncated 3648 chars]
Remediation
## Remediation Suggestions 1. Replace authentication tokens embedded in URL paths with an `Authorization: Bearer` header or a connector-specific secret field that is never displayed as part of an endpoint URL. 2. Use short-lived access tokens and a refresh or reauthorization flow rather than long-lived reusable URLs. 3. Bind each token to the minimum required read-only analytics permissions, specific Facebook Pages, and explicitly permitted MCP methods. 4. Ensure the connector UI, server access logs, reverse proxies, telemetry, analytics systems, and error reports redact authentication values. 5. Prevent tokens from appearing in browser history, referrer headers, screenshots, copied diagnostic output, and user-visible error messages. 6. Store connector credentials in an encrypted secret store with access controls rather than ordinary configuration or plaintext files. 7. Provide token expiration, immediate revocation, rotation, active-session visibility, and audit logs for token usage. 8. Document where connector credentials are stored and processed, their lifetime and precise authorization scope, and applicable retention and deletion policies. 9. Add server-side authorization checks for every request rather than relying solely on possession of the MCP URL. 10. Alert users to suspicious token use, including access from new locations, unusual request rates, or attempts to call methods outside the permitted scope.
Vulnerability Patterns
  • 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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep

Static analysis

No suspicious patterns detected.