Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: .:UND3R:. en 23 Septiembre 2011, 07:14 am



Título: [Script]HBP bypass excepciones
Publicado por: .:UND3R:. en 23 Septiembre 2011, 07:14 am
Hola a todos, les dejo un simple script para aquellos que se inician en esto, consiste en un script para colocar HBP tanto como read access execute, la gran ventaja es que estos HBP son borrados si se producen excepciones con el fin de no ser detectados una vez retomada la excepción se vuelven a colocar:

Código
  1. var AUX
  2. VAR TIPO
  3. var KIUSER
  4. var ZWCONT
  5. var HBP
  6. gpa "KiUserExceptionDispatcher", "ntdll.dll"
  7. mov KIUSER, $RESULT
  8. bp KIUSER
  9. gpa "ZwContinue", "ntdll.dll"
  10. mov ZWCONT, $RESULT
  11. bp ZWCONT
  12. ADDRESS:
  13. ask "Dirección del HBP"
  14. cmp $RESULT, 0
  15. je ERROR
  16. mov HBP, $RESULT
  17. PREGUNTA:
  18. ASK "Tipo de HBP,r-w-x"
  19. MOV TIPO,$RESULT
  20. CMP TIPO, "r"
  21. JE INICIO
  22. CMP TIPO, "w"
  23. JE INICIO
  24. CMP TIPO, "x"
  25. JE INICIO
  26. JMP ERROR2
  27. INICIO:
  28. EVAL "{TIPO}"
  29. bphws HBP, $RESULT
  30. TRABAJO:
  31. eob COMPROBAR
  32. run
  33. COMPROBAR:
  34. cmp eip,KIUSER
  35. je QUITAR
  36. cmp eip,ZWCONT
  37. je BREAKPOINT
  38. cmp eip,AUX
  39. je RESTAURAR
  40. jmp SALIR
  41.  
  42. QUITAR:
  43. bphwc HBP
  44. jmp TRABAJO
  45.  
  46. BREAKPOINT:
  47. mov AUX,esp
  48. add AUX,4
  49. mov AUX,[AUX]
  50. add AUX,0b8
  51. mov AUX,[AUX]
  52. bp AUX
  53. jmp TRABAJO
  54. RESTAURAR:
  55. bc AUX
  56. jmp INICIO
  57.  
  58. ERROR:
  59. msg "Dirección incorrecta"
  60. jmp ADDRESS
  61. SALIR:
  62. msgyn "HBP encontrado,intentar nuevamente?"
  63. cmp $RESULT,1
  64. je INICIO
  65. ret
  66. ERROR2:
  67. MSG "Tipo de HBP incorrecto"
  68. JMP PREGUNTA

Es muy básico por lo que si a alguien se le ocurre alguna idea la integramos de inmediato, Saludos


Título: Re: [Script]HBP bypass excepciones
Publicado por: Tinkipinki en 27 Septiembre 2011, 10:58 am
Hola .:UND3R:.
Tienes algun crackme en que hayas aplicado el script para ver como funciona?

Saludos


Título: Re: [Script]HBP bypass excepciones
Publicado por: .:UND3R:. en 27 Septiembre 2011, 17:58 pm
Son Unpackmes, prueba poner execution en 427B0 OEP sin el script no funcionan
 

ACProtect:
http://www.megaupload.com/?d=0BJWO39K

PELock:
http://www.megaupload.com/?d=1AETTA1G


Título: Re: [Script]HBP bypass excepciones
Publicado por: Tinkipinki en 28 Septiembre 2011, 10:46 am
Ok, .:UND3R:.  lo pruebo y te comento.

Saludos


Título: Re: [Script]HBP bypass excepciones
Publicado por: .:UND3R:. en 28 Septiembre 2011, 16:20 pm
Ok, Muchas gracias. Saludos


Título: Re: [Script]HBP bypass excepciones
Publicado por: Tinkipinki en 29 Septiembre 2011, 12:28 pm
Estoy probando el script y creo que no lo se hacer correr correctamente.
Te explico:

1- Cargo el PELock en el Olly
2- Sale la alerta del Entry Point outside....... y le doy Ok.
3- Sale la alerta del Compresed Code ....continue analisis y le doy Ok.
4- Corro el script y le entro la direccion 427B0
5- Entro el tipo de HBP como x sin el guion -x
6 El script va corriendo analizando direcciones hasta que salta una ventana de   
   error Don't know how to bypass command at address 003B33CB ....... y aqui
   se queda parado.

Probando con el ACProtectc solo de ejecutarlo me echa fuera.

Seguro que es problema mio de no saber correrlo pero bueno, ya me comentaras algo... :-[

Saludos


Título: Re: [Script]HBP bypass excepciones
Publicado por: .:UND3R:. en 29 Septiembre 2011, 16:12 pm
Debes tener plugins para ocultarlo, utiliza OllyAdvance con todo habilitado y lo de la excepción debes añadirla en olly intenta pasar con ctrl+f9 las excepciones
(La idea es que primero puedas lanzar el programa sin problemas, eso es trabajo tuyo jeje, después que puedas lanzarla desde olly. Te pones en el EntryPoint e intentas colocar un HadwareBreakpoint y verás que no te funcionarán y ahí es el momento de usar el script(bypass excepciones es un método que utilizan algunos packer para saber si se han puesto hadwarebreakpoint, cuando se genera una excepción se verifica en la estructura CONTEXT si existen o no hadwarebreakpoint, si es así el programa los barra sigue sin problemas para eso es el script).

Salir


Título: Re: [Script]HBP bypass excepciones
Publicado por: Tinkipinki en 29 Septiembre 2011, 18:13 pm
Ok UND3R, problema solucionado.

Saludos


Título: Re: [Script]HBP bypass excepciones
Publicado por: .:UND3R:. en 29 Septiembre 2011, 18:14 pm
Excelente :D


Título: Re: [Script]HBP bypass excepciones
Publicado por: Иōҳ en 29 Septiembre 2011, 21:10 pm
Es justo lo que iba hacer... en fin... haber como lo hago yop =/.

Nox.


Título: Re: [Script]HBP bypass excepciones
Publicado por: .:UND3R:. en 29 Septiembre 2011, 21:16 pm
Es justo lo que iba hacer... en fin... haber como lo hago yop =/.

Nox.

Esperamos con ansias tu script

Saludos


Título: Re: [Script]HBP bypass excepciones
Publicado por: .:UND3R:. en 2 Octubre 2011, 04:56 am
Disculpa el ACProtect el OEP es 4271B5


Saludos Tinkipinki


Título: Re: [Script]HBP bypass excepciones
Publicado por: Tinkipinki en 2 Octubre 2011, 12:48 pm
Ok UND3R, gracias por la correccion.

Saludos




Título: Re: [Script]HBP bypass excepciones
Publicado por: .:UND3R:. en 2 Octubre 2011, 17:44 pm
Jejejeje, de nada, Saludos


Título: Re: [Script]HBP bypass excepciones
Publicado por: apuromafo CLS en 4 Octubre 2011, 20:04 pm
bien hecho, aunque a mi me queda la duda si realmente siempre se almacenara igual
mov AUX,esp
add AUX,4
mov AUX,[AUX]
add AUX,0b8
mov AUX,[AUX]
bp AUX

cuando haya un borrado de context...