Detectar una vulnerabilidad de error-based sql injection, es sencillo, tenemos que introducir algún caracter que rompa la query sql que este usando por detras algún campo de entrada de usuario, como un panel de autenticación, y usando de caracter una comilla simple (’)

404f6a1bc21e7f0b3807c6fc9be8ccc8-auth_bypass3.png

En este momento, es cuando podemos probar a autenticarnos pasándole una query que sea verdad seguido de un comentario para dejarla colgando:

8f7aa17e60e859478db1bf0d4ef8da85-auth_bypass4.png

fedd816d60b52f8582632f9eeec99ec0-auth_bypass2.png

Por otro lado, podemos aprovechar esta error-based, para extraer información de la base de datos, aparte de autenticarnos, como pasarle los siguientes payloads:

' or 1=1 in (**select @@version**) -- //

Para identificar la versión.

' or 1=1 in (**SELECT password FROM users WHERE username = 'admin'**) -- //

O como este, para extraer la password del user admin, y obtenerla en MD5

3d719b7d388ba7d7c9db027421cbe23e-error3.png