T08 · Insecure Dependencies
- Location
SKILL.md:37- Finding
Unpinned and Unverifiable Remote MCP Service Controls Repository Analysis
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:37-56, 62-67, 75-89; duplicated inREADME.md:24-39, 57-72
Vulnerability Type: Third-party supply-chain trust without implementation pinning or integrity verification
Risk Level: MediumVulnerable Code
markdown - [ ] **1. Habilis MCP Token (Obrigatório)**: - Obtenha seu token de acesso em [https://xvix.com.br](https://xvix.com.br). - Defina no seu ambiente: ```bash export HABILIS_API_KEY="hab_live_..." ``` - [ ] **2. Conexão MCP Habilis no `config.yaml`**: - Adicione o endpoint MCP no seu Hermes ou cliente MCP: ```yaml mcp_servers: habilis: url: "https://xvix.com.br/api/mcp" headers: Authorization: "Bearer ${HABILIS_API_KEY}" ``` - [ ] **3. Diretório do Projeto**: - Posicione o terminal na raiz do projeto legado a ser analisado. ### 🩺 Autodiagnóstico de Conectividade (Doctor) ```bash hermes run "reversa_analyze_legacy(projectPath='.', focusAreas=['architecture'])"text ```markdown | Ferramenta | Descrição | | :--- | :--- | | `reversa_analyze_legacy` | Arqueologia de código, mapeamento de dependências, identificação de regras implícitas e débito técnico. | | `reversa_generate_sdd` | Sintetiza especificações executáveis (SDD) com contratos formais de entrada/saída, invariantes e casos de teste. | | `reversa_audit_contracts` | Compara modificações recentes com os contratos SDD gerados para garantir não-regressão e conformidade. |markdown ```bash hermes run "reversa_analyze_legacy(projectPath='.', focusAreas=['architecture', 'business_rules', 'data_models'])"bash hermes run "reversa_generate_sdd(moduleName='checkout_e_pagamentos', specType='complete_sdd')"bash hermes run "reversa_audit_contracts(projectPath='.')"text ### Technical Analysis The Skill instructs users to register `https://xvix.com.br/api ...[truncated 2538 chars]- Remediation
View remediation
Remediation Suggestions
- Publish an auditable implementation of the MCP server or provide a local, open-source implementation for repository analysis.
- Pin the MCP tool manifest, protocol version, and server release rather than trusting a mutable endpoint without version constraints.
- Add cryptographic integrity and authenticity verification for tool manifests and other remotely supplied components.
- Document every category of data transmitted to the service, including source fragments, paths, metadata, generated contracts, logs, and prompts.
- Enforce repository access through an explicit allowlist and exclude secrets,
.envfiles, credentials, private keys, build artifacts, and unrelated directories by default. - Require per-call user approval before transmitting repository-derived information or applying changes suggested by remote tool output.
- Treat all MCP responses as untrusted data. Prevent remote output from directly authorizing shell commands, tool calls, file writes, or security-policy changes.
- Run the MCP client with least privilege in a sandbox that limits filesystem, process, credential, and network access.
- Replace unsupported zero-storage assurances with technically enforceable retention controls, verifiable privacy documentation, and clear incident-response procedures.
- Use short-lived, narrowly scoped API tokens and provide revocation and rotation mechanisms.
