Falhas do tipo CWE-564
10 resultadosInjeção SQL em Hibernate
Ocorre quando parâmetros de entrada do usuário são concatenados diretamente em consultas Hibernate (HQL, Criteria) sem sanitização ou uso de placeholders. O atacante injeta código SQL/HQL malicioso que é executado no banco de dados com os privilégios da aplicação, permitindo roubo, alteração ou exclusão de dados.
Um sistema de busca monta uma query assim: `session.createQuery("FROM User WHERE name = '" + userInput + "'")`. Se o usuário entrar `' OR '1'='1`, a consulta executa uma lógica não intencional que retorna todos os usuários em vez de fazer a busca legítima.
Use sempre consultas parametrizadas (named parameters em HQL: `setParameter()`) ou Criteria API com restrições tipadas. Nunca concatene strings de entrada diretamente na query. Valide e normalize inputs, mas trate isso como camada adicional, não como defesa primária.