Fallos del tipo CWE-437

4 resultados

Modelo incompleto de recursos do endpoint

O desenvolvedor implementa um endpoint ou interface sem documentar ou considerar todos os seus recursos, capacidades e comportamentos. Isso leva a aplicações cliente que usam apenas parte funcional do endpoint, deixando recursos críticos desprotegidos ou sem controle de acesso adequado, permitindo manipulação não autorizada.

Ejemplo

Uma API REST de pagamento expõe um endpoint /users/{id} que retorna dados públicos, mas o desenvolvedor não documentou que o mesmo endpoint aceita PUT com parâmetros administrativos como 'role' ou 'admin_flag'. Um atacante descobre por force-brute que pode elevar privilégios modificando campos ocultos que ninguém sabia que existiam.

Cómo mitigar

Documente explicitamente todos os recursos, parâmetros e métodos HTTP que cada endpoint suporta. Implemente controle de acesso granular em cada operação, validando não apenas quem acessa, mas o que pode fazer com aquele recurso. Use schema validation e testes de integração que cubram todos os caminhos de código do endpoint.