Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: Mad Antrax en 18 Enero 2013, 21:02 pm



Título: Proyecto: DbgDetections (Testea la dureza de tu OllyDbg)
Publicado por: Mad Antrax en 18 Enero 2013, 21:02 pm
Bueno, tras investigar un poco he decidido recopilar las principales funciones para detectar si un programa está siendo debuggeado. Lo he programado todo bajo VB6 ya que es el único lenguaje que domino para éste tipo de cosas, así que estoy algo limitado, ahí va:

(http://i.imgur.com/tFVHD.png)

Hay programados 17 métodos para detectar a OllyDbg, la idea del proyecto es la siguiente:

  • Ejecutar DbgDetection.exe bajo Windows, sin debugger: Probar todos y cada uno de los botones, deberían detecter que NO hay debugger
  • Ejecutar DbgDetection.exe bajo un debugger OlyDbg sin plugins ni protecciones. Probar todos y cada uno de los botones y ver las funciones que detectan tu OllyDbg
  • Ejecutar DbgDetection.exe bajo un debugger OlyDbg con plugins y protecciones. Probar todos y cada uno de los botones y ver las funciones que detectan tu OllyDbg

La idea es ver como y cada uno de éstos métodos puede llegar a detectar un Debugger, así como comprobar si tu selección de plugins/protecciones mantienen a tu OllyDbg invisible.



Como yo lo he programado, he sido el primero en probarlo :P En un OllyDbg "limpio" he conseguido detectarlo en todas las funciones.
En mi OllyDbg con un par de pluguins he conseguido ocultarlo bastante, pero seguía siendo visible con algunas funciones.

Al final he terminado usando éstos plugins:

(http://i.imgur.com/1j1GY.png)

Con todos esos plugins activos, he conseguido poner invisible a OllyDbg en todas las funciones EXCEPTO en los Timming Methods.

Espero a ver si lo podéis probar para hacer entre todos un report sobre que funciones de detección son más eficaces. Si eso ya publicaré la función de algún método que queráis usar para vuestros crackme's

DOWNLOAD: http://www.mediafire.com/?r6j87t5ddac156m


Título: Re: Proyecto: DbgDetections (Testea la dureza de tu OllyDbg)
Publicado por: Mad Antrax en 18 Enero 2013, 21:05 pm
Ojo, éste proyecto no lo he creado para que lo intentéis debuggear "a mano", no está pensado para eso. Las strings están puestas a pelo, las apis no están ocultas, no hay ningún método para finalizar el debugg (solo detecta), etc...

La idea es añadir alguna función como RaiseException o provocar un BSOD al saltar una de esas funciones en nuestros programas, para protegerlos. El proyecto es solo para testear el nivel de "invisibilidad" con el que trabajas cuando Debuggeas.


Título: Re: Proyecto: DbgDetections (Testea la dureza de tu OllyDbg)
Publicado por: MCKSys Argentina en 18 Enero 2013, 21:09 pm
La idea es añadir alguna función como RaiseException o provocar un BSOD al saltar una de esas funciones en nuestros programas, para protegerlos.

Un BSOD??? No es "algo" extremo???

:xD :xD :xD


Título: Re: Proyecto: DbgDetections (Testea la dureza de tu OllyDbg)
Publicado por: Mad Antrax en 18 Enero 2013, 21:18 pm
Un BSOD??? No es "algo" extremo???

Que va! por el momento las Timming Methods no he conseguido detenerlos con ningún plugin. Así que lanzamos BSOD al saltar el evento y ya verás como al cracker s ele pasan las ganas de seguir debuggeando xD

Por cierto, has probado el proyecto? Alguna de las funciones detecta tu debugger?

RtlSetProcessIsCritical + TerminateProcess / PostMessage WM_CLOSE / End / etc... = BSOD


Título: Re: Proyecto: DbgDetections (Testea la dureza de tu OllyDbg)
Publicado por: apuromafo CLS en 19 Enero 2013, 00:03 am
actualmente en el depurador que uso, me detecta solo en 1 debido al combo
RaiseException , mas otros, no he probado en cambiar ningun codigo a mano, solo ir tildando o destildando opciones...

Código:
---------------------------
DbgDetection
---------------------------
Function: timeGetTime

Return value: 51

Debugger detected: YES
---------------------------
Aceptar  
---------------------------

Es el evo_dbg  con ciertas opciones de poison y otras marcadas.

saludos Apuromafo


Título: Re: Proyecto: DbgDetections (Testea la dureza de tu OllyDbg)
Publicado por: Mad Antrax en 1 Marzo 2013, 23:07 pm
Acabo de actualizar el programa, ahora se pueden testear todos los métodos de golpe, muestra en una ventana si el programa ha detectado un debugger en el entorno.

Y para zanjar este proyecto, dejo el source completo. Solo el plugin Phantom.dll y StrongOD.dll puede poner el OllyDbg invisible, a excepción de los timing methods, que no he logrado hacerles el baypass de forma automatizada. Si alguien conoce algún metodo para evitar la detección por timming, agradeceré que lo comparta.

De todas formas, no viene mal mirar estos metodos y aplicarlos a nuestros crackme's, ya que un cracker novatillo no sabrá saltarselos.

(http://i.imgur.com/lmRhCG1.png)

DOWNLOAD + SOURCE: https://mega.co.nz/#!I0gUARxa!HyYJ42pMteq9lRwgAsqTI0-qIpgH0XP6sPT5mSBmMtE


Título: Re: Proyecto: DbgDetections (Testea la dureza de tu OllyDbg)
Publicado por: EscritoEstáSatanás en 20 Marzo 2013, 23:41 pm
Aunque yo no soy de esto de la ingenieria inversa, me gusta mucho ese proyecto y lo probare.

XD Solo con descargarme ese programa ollydbg 1.10.


Título: Re: Proyecto: DbgDetections (Testea la dureza de tu OllyDbg)
Publicado por: Иōҳ en 6 Abril 2013, 00:47 am
Le de "Run All Test" y me detectó QueryPerformanceCounter, el problema es que era la primera ejecución y ni el olly tenía abierto... ni ningún otro depurador.

Edit:
Lo que se me ocurre ahora, con sueño dolor de cabeza y todo la fiaca del mundo, es hacerle un hook (plugin para olly) a las funciones  de timming y devolver 0 o un valor bajo.

Nox.



Título: Re: Proyecto: DbgDetections (Testea la dureza de tu OllyDbg)
Publicado por: x64core en 26 Octubre 2013, 01:57 am
Un programa derrotando todos esos plugins, testearlo con sus depuradores:
http://www.sendspace.com/file/7csso8

Si ningun depurador es detectado se mostrara un mensaje confirmandolo, de lo contrario no se mostrara nada.

-
Lo intente con todos los plugin publicos que conozco y todos fueron derrotados  :rolleyes:
Dan ganas de hacer un plugin para olly...



Título: Re: Proyecto: DbgDetections (Testea la dureza de tu OllyDbg)
Publicado por: MCKSys Argentina en 26 Octubre 2013, 23:22 pm
No sé qué plugines probaste, pero Olly pelado sólo con StrongOD no es detectado:

(http://i.imgur.com/sfEscsH.jpg)

Quizás no probaste todas las configs?

Saludos!


Título: Re: Proyecto: DbgDetections (Testea la dureza de tu OllyDbg)
Publicado por: x64core en 27 Octubre 2013, 01:22 am
Bueno si se carga un driver ya no hay una solucion segura desde UM.