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:
var AUX
VAR TIPO
var KIUSER
var ZWCONT
var HBP
gpa "KiUserExceptionDispatcher", "ntdll.dll"
mov KIUSER, $RESULT
bp KIUSER
gpa "ZwContinue", "ntdll.dll"
mov ZWCONT, $RESULT
bp ZWCONT
ADDRESS:
ask "Dirección del HBP"
cmp $RESULT, 0
je ERROR
mov HBP, $RESULT
PREGUNTA:
ASK "Tipo de HBP,r-w-x"
MOV TIPO,$RESULT
CMP TIPO, "r"
JE INICIO
CMP TIPO, "w"
JE INICIO
CMP TIPO, "x"
JE INICIO
JMP ERROR2
INICIO:
EVAL "{TIPO}"
bphws HBP, $RESULT
TRABAJO:
eob COMPROBAR
run
COMPROBAR:
cmp eip,KIUSER
je QUITAR
cmp eip,ZWCONT
je BREAKPOINT
cmp eip,AUX
je RESTAURAR
jmp SALIR
QUITAR:
bphwc HBP
jmp TRABAJO
BREAKPOINT:
mov AUX,esp
add AUX,4
mov AUX,[AUX]
add AUX,0b8
mov AUX,[AUX]
bp AUX
jmp TRABAJO
RESTAURAR:
bc AUX
jmp INICIO
ERROR:
msg "Dirección incorrecta"
jmp ADDRESS
SALIR:
msgyn "HBP encontrado,intentar nuevamente?"
cmp $RESULT,1
je INICIO
ret
ERROR2:
MSG "Tipo de HBP incorrecto"
JMP PREGUNTA
Es muy básico por lo que si a alguien se le ocurre alguna idea la integramos de inmediato, Saludos
Hola .:UND3R:.
Tienes algun crackme en que hayas aplicado el script para ver como funciona?
Saludos
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
Ok, .:UND3R:. lo pruebo y te comento.
Saludos
Ok, Muchas gracias. Saludos
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
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
Ok UND3R, problema solucionado.
Saludos
Excelente :D
Es justo lo que iba hacer... en fin... haber como lo hago yop =/.
Nox.
Cita de: Иōҳ en 29 Septiembre 2011, 21:10 PM
Es justo lo que iba hacer... en fin... haber como lo hago yop =/.
Nox.
Esperamos con ansias tu script
Saludos
Disculpa el ACProtect el OEP es 4271B5
Saludos Tinkipinki
Ok UND3R, gracias por la correccion.
Saludos
Jejejeje, de nada, Saludos
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...