SFX-SQLi (Select For XML SQL injection)

WWW.KACHAKIL.COM
View in english

¿Qué es SFX-SQLi?

SFX-SQLi (Select For XML SQL injection) es una nueva técnica de inyección SQL que permite extraer toda la información de una base de datos de Microsoft SQL Server 2005/2008 de una forma extremadamente rápida y eficiente.

Esta técnica se basa en el uso de la cláusula FOR XML, capaz de convertir el contenido de una tabla en una única cadena de texto, de forma que se pueda anexar su contenido en algún campo inyectando una subconsulta en una entrada vulnerable de una aplicación web.

Documento en PDFSFX-SQLi Paper Descripción detallada de los fundamentos de la técnica y de su funcionamiento

Prueba de concepto: SFX-SQLi Tool

Para demostrar la potencia de esta técnica en la práctica, se ha desarrollado una herramienta que la implementa. Esta herramienta puede descargarse desde aquí, al igual que su código fuente, para fines exclusivamente académicos.

ACTUALIZACIÓN (28/03/2010): Además de una aplicación web para pruebas, se publica una nueva revisón de la herramienta que corrige algunos errores, permite acceder a otras bases de datos del servidor y ejecutar consultas personalizadas, entre otras pequeñas mejoras:

Descarga de la herramientaSFX-SQLi Tool (ejecutable) Herramienta que automatiza el proceso (requiere Microsoft .NET Framework 2.0) - v1.1
Descarga del código fuenteSFX-SQLi Tool (código fuente) Código fuente de la herramienta (en VB.NET para Visual Studio 2008) - v1.1
Descarga de un ejemplo de aplicación web vulnerableWebVulnerableSql (ASP.NET) Aplicación web vulnerable para pruebas (incluye ejecutable y código fuente)

AVISO: El uso de este software implica la aceptación de este acuerdo de licencia. Este software está destinado exclusivamente para su uso personal. No está permitida su modificación ni su uso comercial. El software se proporciona "tal cual", sin garantías de ningún tipo, expresas ni implícitas, incluidas, sin limitarse a ellas, las garantías de comerciabilidad, de adecuación para un fin determinado y de no infracción de derechos de terceros. En ningún caso será el autor de esta obra responsable de ninguna reclamación ni de ningún daño indirecto ni consecuente, ni de ningún otro daño que resulte de la pérdida de capacidad de uso, de datos o de beneficios, ya sea en una acción contractual, negligencia u otra acción malintencionada, que surja del uso o rendimiento de este software o que esté relacionado con ello.

Contactar con el autor

Ante cualquier duda, sugerencia o propuesta relacionada con este tema, puedes ponerte en contacto conmigo por correo electrónico:

Daniel Kachakil (dani@kachakil.com)

© 2009 · Daniel Kachakil - Contenidos bajo licencia de Creative Commons Creative Commons License

Última actualización: 28/03/2010