Backup Oficial de SeguridadBlanca.Org

jueves, 4 de junio de 2009

PEN-TEST 'OR'1=1

1. INTRODUCCIÓN.

En posteriores artículos, vamos a hablar de SQL-i (sql-injection) y de cómo hackear webs gracias a esta vulnerabilidad en sus distintas variantes. Por lo tanto, como una pequeña introducción al tema, vamos a hablar del caso más fácil de todos: un formulario para administración de una página web que admite inyección de código.

2. EL ATAQUE.

Este es uno de los ataques clásicos-clásicos: el formulario nos pide un usuario y password. Cuando los introducimos, el servidor web consulta una base de datos donde están almacenados y, si ambos son correctos, nos da acceso al menú de administración. La query SQL que se ejecuta sería algo así como esto:

select * from usuarios_db where usuario='$usuario' and password='$password'

Y lo que hacemos nosotros es meter
usuario=admin y password=hola' or '1=1, con lo que la query queda así:

select * from usuarios_db where usuario='admin' and password='hola' or '1=1'

Sentencia que devuelve siempre TRUE, con lo que tenemos acceso al panel de control del admin.

3. NOTA FINAL.

En la práctica, es casi imposible encontrar servidores web que tengan todavía este fallo tan clamoroso de seguridad pero aun asi hay sistemas web no solo en servidores web sino tambien aplicaciones. Sin embargo, nos ha venido muy bien para introducir una nueva forma de ataque: SQL-i (sql-injection), sobre la que hablaremos mucho más ampliamente en el futuro.

Saludos
Dr.White
Fuente: Hacking-Avanzado




No hay comentarios:

Publicar un comentario