Back to skill

Security audit

MERCATOR Address Evidence

Security checks for vulnerabilities and agentic risk

Overview

This skill is a clearly disclosed paid API helper for checking whether an entity published a specific blockchain contract address, with no hidden local code or persistence.

Before installing, understand that contract lookup requests are sent to a remote service and the paid endpoint charges $0.25 USDC via x402. Keep MERCATOR_BASE_URL pointed at the intended Mercator host when using X_PAYMENT, and do not treat a PASS result as proof that a contract is audited or financially safe.

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
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • 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
Findings (3)

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 25)May include surrounding context.

md
homepage: https://mercator-entity-evidence.fly.dev
    requires:
      bins:
        - curl
        - jq
credentials:
  - name: MERCATOR_BASE_URL

External Transmission

Medium
Category
Data Exfiltration
Confidence
89% confidence
Finding

The paid example sends a user-controlled X-PAYMENT header to a configurable MERCATOR_BASE_URL. Because the base URL can be overridden from the environment, a misconfigured or malicious setting could exfiltrate the pre-signed payment artifact to an attacker-controlled server, enabling unauthorized billing or reuse depending on x402 semantics.

Content

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

md
# Paid answer — $0.25 USDC on Base, x402. Unpaid, this returns 402 with
# the payment requirements; your x402 signer retries it with X-PAYMENT.
curl -sS -X POST "$BASE/v1/address-evidence" \
  -H 'content-type: application/json' \
  -H "X-PAYMENT: $X_PAYMENT" \
  -d '{"domain":"lido.fi","chain":"ethereum",

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 106)May include surrounding context.

"purpose":"emergency multisig"}' | jq .

See the payment requirements without paying:

curl -sS -X POST "$BASE/v1/address-evidence"
-H 'content-type: application/json'
-d '{"domain":"lido.fi","chain":"ethereum"}' | jq '.accepts'

text