Sunday, October 26, 2008

Como se crea un exploit

Con el release por Microsoft del patch emergencial ms08-067.mspx estamos seguramente a las puertas de la aparicion de varios worns. Esta vulnerabiliad a diferencia de muchas de las habituales corregidas por Microsoft tiene la particularidad de poder ejecutarse en forma remota y sin necesidad del usuario estar logueado.

Segun Microsoft el release del patch fuera de su ciclo se debe a que existia ya un exploit ejecutandose en internet.

Pero como hacen para crear estos exploits ?

En gral mediante ingenieria inversa de los patchs publicados por Microsoft.

Luego de publicarse el patch, lo revisan y ven que se corrigio. Entonces desde alli crean el codigo para aprovechar la vulnerabilidad anterior o como en este caso, encontrar una nueva vulnerbilidad.

Segun lo que se ve en el siguiente blog, donde se muestra en forma muy clara como es el proceso, Microsoft emite el patch ms08-67 como correccion al patch MS06-040.

Por lo tanto haciendo la diferencia entre ambos patchs se encuentra la parte del codigo corregida y por ende el error que existia.


En este link un POC ( prueba de concepto ) con el codigo para explotar este error :

http://www.phreedom.org/blog/2008/decompiling-ms08-067/

No comments: