si, tengo una duda, quiero crear una sección virtual en el address 160000 en donde luego pueda introducirle datos, pero no he podido lograrlo no sé que parámetros tengo que pushear. Sí investigué la API pero EAX siempre me devuelve 0000 por lo que la sección no se ha creado, como puedo hacer eso?
Saludos
En memoria aparece lo siguiente:
........
......
...
.
Memory map, item 5
Address=00140000
Size=00009000 (36864.)
Owner= 00140000 (itself)
Section=
Type=Priv 00021004
Access=RW
Initial access=RW
Memory map, item 6
Address=00240000
Size=00006000 (24576.)
Owner= 00240000 (itself)
Section=
Type=Priv 00021004
Access=RW
Initial access=RW
.....
..
.
.
Mi duda es como crear la dirección 160000, ya que un programa por método antidump la crea, me gustaría realizar lo mismo, con pupe logré volcarla, pero tengo problemas para colocarla con LordPE:
en pupe me aparece:
....
..
140000
16A000
......
.....
..
necesito 160000, por eso volco 140000 una vez volcado, abro LordPe y agrego la sección, luego de eso modifico el virtual offset de la sección agregada
0400000-0140000 esto me da 2C0000 introduzco el resultado en virtual offset, pero no funciona ya que al dirigirme a 160000 no existe, pero si busco en la sección añadida,está lo que quiero pero en otra address
Por eso buscada una de las dos opciones pero ninguna funciona
si alguien me pudiera ayudar, Muchas gracias :D
0044A181 68 00400000 PUSH 4000
0044A186 68 00800200 PUSH 28000
0044A18B 68 00001400 PUSH 140000
0044A190 E8 DFF93B7C CALL kernel32.VirtualFree
0044A195 6A 04 PUSH 4
0044A197 68 00200000 PUSH 2000
0044A19C 68 00C00300 PUSH 3C000
0044A1A1 68 00001400 PUSH 140000
0044A1A6 E8 36F93B7C CALL kernel32.VirtualAlloc
0044A1AB 6A 04 PUSH 4
0044A1AD 68 00100000 PUSH 1000
0044A1B2 68 00C00300 PUSH 3C000
0044A1B7 68 00001400 PUSH 140000
0044A1BC E8 20F93B7C CALL kernel32.VirtualAlloc
te acuerdas de pelock? busca toda la informacion de ese packer (de los tutoriales) y veras bastante apuntes,
marciano, hizo un tutorial bueno, entre otros
virtualalloc reserva un espacio de memoria y virtual free lo libera..
el tema delicado aveces es re-calcularlo para que caiga en la sección , o bien usar el mismo puede llevar muchos lios..revisa como lo hizo ricardo en ese mismo tipo
yo hace no mucho preferi parcharlo manualmente una redireccion porque tenia tiempo, pero no se tu, pero es complejo un poco llegar agregar la api, agregar la importacion, luego colocar el injerto y probar en mas de un s.o.
versus agregar la sección , calcular los rva ,luego parchar en los errores.
saludos Apuromafo
Cita de: apuromafo en 1 Septiembre 2011, 15:57 PM
te acuerdas de pelock? busca toda la informacion de ese packer (de los tutoriales) y veras bastante apuntes,
marciano, hizo un tutorial bueno, entre otros
virtualalloc reserva un espacio de memoria y virtual free lo libera..
el tema delicado aveces es re-calcularlo para que caiga en la sección , o bien usar el mismo puede llevar muchos lios..revisa como lo hizo ricardo en ese mismo tipo
yo hace no mucho preferi parcharlo manualmente una redireccion porque tenia tiempo, pero no se tu, pero es complejo un poco llegar agregar la api, agregar la importacion, luego colocar el injerto y probar en mas de un s.o.
versus agregar la sección , calcular los rva ,luego parchar en los errores.
saludos Apuromafo
si tienes razón de hecho no he podido lograrlo, por ende es mejor hacer injerto y parchear los saltos para que se dirijan a la nueva sección creada
Saludos
emm mira un poco:
http://ricardonarvaja.info/WEB/CURSO%20NUEVO/TEORIAS%20NUMERADAS/1301-1400/1374-complemento%20introduccion_41_coderedirection%20pelock%20by%20Apuromafo.pdf.7zo
se renombra a 7z..yo por ejemplo use el ollyscript, mira un poco porque esta un poco hardcoded por que ya algo aprendi..