Falhas do tipo CWE-407
115 resultadosComplexidade algorítmica ineficiente
É quando um algoritmo consome recursos (CPU, memória) de forma desproporcional à quantidade de dados que processa, geralmente por usar nested loops ou recursão profunda sem otimização. Um atacante explora isso enviando inputs grandes ou estruturados para sobrecarregar o servidor e causar negação de serviço.
Um endpoint de busca que valida entrada usando regex aninhado complexo (ReDoS) para cada caractere, ou uma API que processa uma lista de n itens com dois loops aninhados O(n²). Quando o atacante envia 10 mil registros, o servidor trava ao tentar processar em tempo viável.
Analise a complexidade Big O dos algoritmos críticos durante code review, implemente timeouts e rate limiting, use estruturas de dados adequadas (hash maps em vez de arrays sequenciais), e teste com datasets grandes em homologação. Para regex, prefira engines não-catastróficas ou limite o tamanho de entrada.