Come @ThoriumBR ha già detto, gli sviluppatori commettono errori, a causa di scadenze o, a volte, persino della mancanza di conoscenza. Pertanto, il software dovrebbe essere testato dal punto di vista della sicurezza durante lo sviluppo, prima della fase di produzione e anche dopo la produzione. Sebbene ci siano molti framework per diversi linguaggi di programmazione che hanno un meccanismo per prevenire attacchi di SQL injection (es: Microsoft Entity Framework), l'iniezione SQL è ancora una cosa.
Puoi controllare le vulnerabilità di SQL injection trovate di recente su Exploit DB se si cerca la parola 'SQL Injection'. Nell'elenco, è possibile scoprire che anche i framework e le applicazioni più diffusi e ampiamente utilizzati presentano vulnerabilità di SQL injection.