La base de datos es la mina de oro, por eso filtrar los datos significa todas las cosas malas. El código fuente de la aplicación es importante en algunos casos, pero si observa la arquitectura de las aplicaciones modernas, la mayoría de los datos provienen de la base de datos back-end. Credenciales, PII, números de tarjetas de crédito, datos financieros y comerciales, casi todo lo que desea proteger está en la base de datos.
Comprometer al servidor (como obtener el shell) solo importa en caso de ataques de bot para que la red de bot se expanda. Los ataques dirigidos son siempre para los datos. Por lo tanto, comprometer la base de datos significa lograr el objetivo.
En lo que respecta a sus "ataques de comando", la mayoría de los sitios web están comprometidos a través de la inyección de SQL que ejecuta directamente las consultas de los atacantes en la base de datos. La base de datos de solo lectura es lo mínimo que se obtiene en la inyección de SQL. SQLi también puede comprometer totalmente la máquina al cargar el código de shell a través de la directiva "INTO DUMPFILE" y estos llaman al shell a través de la aplicación web, lo que da como resultado un shell interactivo completo a través del navegador.
Por lo tanto, la pérdida de datos la mayoría de las veces alcanza el objetivo, por eso los atacantes se detienen allí. De lo contrario, la inyección de SQL también ofrece muchas otras vías de ataque.