Back to skill

Security audit

Brazil Kyb

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed paid lookup helper for Brazilian company verification and does not show hidden code, persistence, or unrelated behavior.

Before installing, be aware that lookups disclose the queried Brazilian company identifier or name to api.brazilayer.com and paid routes can spend small amounts of USDC through x402/agentcash. Use it for intended KYB checks and confirm paid calls when the query or business relationship is sensitive.

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 (8)

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 5)May include surrounding context.

md
name: brazil-kyb
description: Verify any Brazilian company (CNPJ) with official data: registry status, partners, sanctions, bank licence, contracts, funds. Pay per call via x402.
version: 1.0.0
homepage: https://api.brazilayer.com/docs
metadata:
  openclaw:
    emoji: "🇧🇷"

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 31)May include surrounding context.

md
name: brazil-kyb
description: Verify any Brazilian company (CNPJ) with official data: registry status, partners, sanctions, bank licence, contracts, funds. Pay per call via x402.
version: 1.0.0
homepage: https://api.brazilayer.com/docs
metadata:
  openclaw:
    emoji: "🇧🇷"

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 33)May include surrounding context.

md
name: brazil-kyb
description: Verify any Brazilian company (CNPJ) with official data: registry status, partners, sanctions, bank licence, contracts, funds. Pay per call via x402.
version: 1.0.0
homepage: https://api.brazilayer.com/docs
metadata:
  openclaw:
    emoji: "🇧🇷"

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% 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 76)May include surrounding context.

md
name: brazil-kyb
description: Verify any Brazilian company (CNPJ) with official data: registry status, partners, sanctions, bank licence, contracts, funds. Pay per call via x402.
version: 1.0.0
homepage: https://api.brazilayer.com/docs
metadata:
  openclaw:
    emoji: "🇧🇷"

External Transmission

Medium
Category
Data Exfiltration
Confidence
88% confidence
Finding

This line instructs sending a CNPJ to a third-party API for validation. Even though a CNPJ is a company identifier rather than highly sensitive personal data, using the skill causes externally supplied user/business data to be transmitted off-platform to api.brazilayer.com, creating privacy, compliance, and trust-boundary risks if done without clear consent.

Content

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

md
## Inputs

- **CNPJ**: 14 digits, with or without punctuation (`00.000.000/0001-91` = `00000000000191`).
  Validate the check digits for free before paying: `GET https://api.brazilayer.com/v1/ferramentas/cnpj/<cnpj>`.
- If you only have a name, search first (paid, US$ 0.01):
  `GET https://api.brazilayer.com/v1/cnpj/busca?q=<name>`.

External Transmission

Medium
Category
Data Exfiltration
Confidence
92% confidence
Finding

This route sends a company name query to an external API. Names may reveal confidential supplier, customer, acquisition, or due-diligence targets, so this can expose business-sensitive information to a third party and trigger paid requests without sufficiently strong consent or data-classification guidance.

Content

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

md
- **CNPJ**: 14 digits, with or without punctuation (`00.000.000/0001-91` = `00000000000191`).
  Validate the check digits for free before paying: `GET https://api.brazilayer.com/v1/ferramentas/cnpj/<cnpj>`.
- If you only have a name, search first (paid, US$ 0.01):
  `GET https://api.brazilayer.com/v1/cnpj/busca?q=<name>`.

## Free, no payment

External Transmission

Medium
Category
Data Exfiltration
Confidence
88% confidence
Finding

This line again directs sending a CNPJ to an external service for validation. The context reduces severity somewhat because it recommends a free pre-check before paid calls, but it still normalizes sending user-supplied organizational data to a third party without discussing consent, retention, or jurisdictional/privacy implications.

Content

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

md
## Free, no payment

- `GET https://api.brazilayer.com/v1/cnpj/amostra` and `/v1/integridade/amostra`: sample responses to see the shape.
- `GET https://api.brazilayer.com/v1/ferramentas/cnpj/<cnpj>`: check-digit validation only (does not say whether the company exists).
- `GET https://api.brazilayer.com/.well-known/x402`: every paid route with price.

## Paid routes (USDC on Base, via x402)

External Transmission

Medium
Category
Data Exfiltration
Confidence
94% confidence
Finding

The example explicitly tells the agent to fetch a paid external endpoint, which can cause both external data disclosure and automatic payment side effects. The skill states payment is automatic with agentcash, so following this pattern without explicit authorization could leak business identifiers and spend funds, making the external transmission more dangerous than a normal read-only API example.

Content

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

Base URL: https://api.brazilayer.com. Example:

text
fetch https://api.brazilayer.com/v1/empresa/enriquecer/00000000000191

How to answer

Static analysis

No suspicious patterns detected.