Sqlmap falla al habilitar el procedimiento xp_cmdshell

2

He estado navegando en la web en busca de ayuda con respecto al siguiente problema. Actualmente estoy realizando una prueba de penetración de aplicaciones web, y me había cruzado con una hermosa inyección ciega de SQL.

Utilizando sqlmap, puedo recuperar toda la base de datos. Me gustaría saltar al nivel de SO, usando la funcionalidad xp_cmdshell, que actualmente está deshabilitada en la base de datos. La aplicación se ejecuta con la cuenta "sa", por lo que debería ser técnicamente posible. Sin embargo, cuando recibo el siguiente mensaje cuando intento habilitarlo utilizando sql map:

[12:14:22] [INFO] checking if xp_cmdshell extended procedure is available, please wait..
xp_cmdshell extended procedure does not seem to be available. Do you want sqlmap to try to re-enable it? [Y/n] 
[12:14:23] [WARNING] xp_cmdshell re-enabling failed
[12:14:23] [INFO] creating xp_cmdshell with sp_OACreate
[12:14:23] [WARNING] xp_cmdshell creation failed, probably because sp_OACreate is disabled
[12:14:23] [CRITICAL] unable to proceed without xp_cmdshell

Información del sistema:

web server operating system: Windows 2012 
web application technology: ASP.NET 4.0.30319, ASP.NET, Microsoft IIS 8.0
back-end DBMS: Microsoft SQL Server 2008

¿Alguien sabe cómo puedo resolver esto?

    
pregunta AnonZed 23.06.2013 - 13:14
fuente

2 respuestas

1

Puedes intentar pasar --priv-esc a sqlmap, y esto puede aumentar tus privilegios, pero esto nunca me ha funcionado. Las funciones de acceso al sistema de archivos de sqlmap podrían llevar a un mayor compromiso.

SQLNinja es mejor en la escalada de privilegios. Un ataque que soporta es simplemente la aplicación de la contraseña de SA mediante el uso de inyección SQL y he encontrado que esto es bastante efectivo. SQLNinja también contiene otras vulnerabilidades conocidas de escalamiento de privilegios, como CVE-2010-0232.

    
respondido por el rook 23.06.2013 - 18:36
fuente
1

No sé las herramientas que estás usando. Pero para habilitar xp_cmdshell, haga esto: Con

EXEC sp_configure

puede listar todos los valores configurados actualmente. En primer lugar, ejecute

EXEC sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO

para ver todos los valores. Luego ejecuta

EXEC sp_configure 'xp_cmdshell', 1
GO
RECONFIGURE
GO

para habilitarlo. Acabo de intentar esto con mi servidor SQL 2008. No estoy seguro de si hay alguna otra limitación en las versiones más nuevas, pero no conozco ninguna.

También tenga en cuenta que, si está configurado correctamente, ejecuta los comandos CMD con la cuenta SQL, que generalmente es una cuenta restringida y no tiene derechos de administrador en la máquina. En realidad, solo debería tener acceso a las carpetas de la base de datos y nada más.

    
respondido por el http 23.06.2013 - 23:20
fuente

Lea otras preguntas en las etiquetas