[HACK] Inyección de SQL en Microsoft Access

coder nerv at ono.com
Fri Jun 20 15:20:26 CEST 2003


On Thu, 19 Jun 2003 16:47:37 +0200
BrainSCAN <brainscan at hackuma.com> wrote:

> Buenas.
> 
> Hay muchos documentos de inyección de código en formularios que trabajan
> contra servidores Microsoft SQL Server pero la verdad es que lo más común es
> que te topes con que el formulario trabaja contra una base de datos
> Microsoft Access que una empresita sí se puede permitir en comparación con
> una licencia SQL Server.
> 
> Claro está que Access no da tanto juego como SQL Server... No, si esto es
> como tó, que cuanto más cutre pues más seguro, en cuanto empiezas a darle
> posibilidades al usuario empiezas a provocar bugs XDDDDD si esto no pasaría
> si en vez de emplear ASP fuera HTML XDDDD
> 
> En fin, que en unas pruebecillas me he topado con una de estas bases de
> datos Access y estoy viendo cómo acceder. Se trata de una página de
> autentificación que te pide el nombre de usuario y la contraseña. Si
> introduces estos datos incorrectamente, te los vuelve a pedir, si aciertas
> te pasa a una página privada.
> 
> Tooootal, que meto como usuario:
> a' or user like '%a%' or user='b
> 
> Vale, me he saltado la página de petición de login mediante inyección de
> código SQL siguiendo los consejos del doc de Hispahack ;-)
> 
> Ahora el problema estriba en que la página privada no me muestra los datos
> que debería mostrar ¿porqué? Yo deduzco que se debe a que he saltado la
> autentificación, vale, pero no con un usuario correcto por lo que la página
> privada debe tener algo en plan "si el usuario pertenece al grupo X entonces
> mostrar Y, si pertenece al grupo A mostrar B" y como me he conlado sin
> usuario pues no me muestra una mierda.
> 
> ¿Solución? Añadir un usuario con el que poder autentificarme. Para ello
> primero tengo que adivinar el nombre de la tabla, cosa que resuelvo con:
> 
> a' OR user = (SELECT user FROM users WHERE user = 'a') OR user='c
> 
> Bueno, ya estamos más cerca. Ahora queda el añadir al usuario... Pero aquí
> me quedo, porque si intento:
> 
> a' OR user = (INSERT INTO users (user,pass) VALUES ('hack','hack')) OR
> user='c
> 
> Me devuelve:
> Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
> [Microsoft][Controlador ODBC Microsoft Access] Error de sintaxis (falta
> operador) en la expresión de consulta
> 
> ¿Alguna idea?

Se puede usar UNION en access? igual por ahi...
 
> Lo mismo estoy tratando un imposible, porque el Access está limitadillo,
> pero no me creo que no se pueda concatenar algo ahí.
> 
> Desde ya, muchas gracias.
> 
> 
> _______________________________________________
> Lista - http://mailman.argo.es/listinfo/hacking
> FAQ - http://www.argo.es/~jcea/artic/hack-faq.htm
> "una-al-dia" para estar siempre informado - http://www.hispasec.com/
> 


-- 
atrapado por tu moda
coder es miembro de monojimmy.com y valenciawireless.net
Gentoo Linux running on Pentium4 2 Ghz
#osos y #valenciawireless @ valenciawireless.net
GnuPG key @ pgp.rediris.es
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <https://mailman.jcea.es/pipermail/hacking/attachments/20030620/28e9afb2/attachment.sig>


More information about the hacking mailing list