Firmas en la cabecera un gran reto!

Iniciado por lucasluks1004, 14 Septiembre 2011, 21:58 PM

0 Miembros y 1 Visitante están viendo este tema.

lucasluks1004

Bien como dice el titulo estoy intentando sacar una firma q se encuentra en la cabecera y para mi sorpresa (era de esperar) me deja inservible el stub probe con el offset locator y sus 256 combinacion y nda me lo deja indetecable pero a la vez inservible ,,tengo bien posicionado el offset detectado es el 68 ,,ahora mi pregunta es si hay otra forma de limpiar esa firma sin cambiar el valor del offset con un hex ,,desde gracias por leer.saludos

2Fac3R

Es muy complicado cuando suceda eso, en ciertos casos el av te confunde y en realidad no se encuentro ahi la firma, o quizas si pero hay otras bastantes escondidas, tanto en la cabecera como en el cuerpo, si sabes programacion o tienes el codigo de fuente podrias empezar jugando con las APIs a ver si en una de ellas esta.
Nos cuentas como te fue...
Escuela de Hackers & Programación. http://ihackndev.blogspot.com/

Karcrack

Primero de todo tienes que saber que parte de la cabecera te detecta... tal vez tengas dos secciones ejecutables o ese tipo de cosas que a los AVs no les gusta :xD

The Swash

No os gusta casos como por ejemplo
en VB:
- Bound Import a 0
- Secciones distintas a las de código demasiado grandes  :silbar:
- Archivos desalineados (SizeOfInitializedData y compañia).
- Tamaños no alineados (SizeOfImage, SizeOfHeaders, etc).

y varias cosas más, no te vendría nada mal leerte el Formato PE.

Un saludo.

lucasluks1004

Gracias por el apoyo gente !!!!,,realmente soy bastante nuevo en este foro pero veo q se ayudan mucho ,,espero subir mi crypt cuando sea fud 100% en este gran foro!!

2Fac3r : estoy 100% seguro q la firma se encuentra en la cabecera ya q al modificar ese offset me lo deja indetectable (tmb debo decir q antes habia firmas en el cuerpo las cuales las movi con el olly y ya no son detectadas) ,tmb tengo el codigo fuente ya q lo hice yo va en parte lei  me base en muchos codigos de la red para hacerlo,,el cual uso las apis de forma dinamica ,,obvio siempre alguna hay q declarar o por lo menos asi lo hice yo.

Karcrack subo una imgahen del hex donde marco los offset los cuales al modificar me lo deja indetecable pero tmb lo rompe

The Swash eres un grande!! hace tiempo lei y intente entender tu codigo de como realiner las secciones en C te felicito por eso ,,logre hacerlo en vb6 usando tu codigo y otros mas q encontre por la red ,pero el tuyo fue el primero q lei,,asi q al crear el encryptado realineo de forma automtica y agrego todos los datos a la ultima sección,el bound import no esta en 0 ya q lei varios tutoriales de como pasar el hermoso avira los cuales no me dieron resultado.


imagen en rojo los detectados,los valores de los offset son los orginales



Uploaded with ImageShack.us


,,saludos

The Swash

@lukaz
Creo que lo que "crees" o en tu concepto son los offsets detectados, no son otra cosa que el famoso campo del IMAGE_DOS_HEADER, l_fanew el cual tiene el valor que apunta a la firma PE/x0/x0.
Si Avira (juraría que es éste) o cualquier otro te detecta eso, es porque generalmente está emulando tu código y al no funcionar al cambiar eso la firma se va.

Te recomiendo poner todo el cuerpo del ejecutable a 0, generalmente en Visual Basic a valor 4096d, o lo puedes mirar con un editor PE el cual te proporcione el valor del SizeOfHeraders.

Con eso sabrás realmente si está en la cabecera.

Un saludo.

Karcrack

La parte que te detecta como bien dice TheSwash es la estructura más básica del PE... Lo que ocurre es que si modificas eso el Avira ya no detecta el fichero como un ejecutable válido y ya no lo analiza...

Cual es el nombre de la detección?

2Fac3R

Cita de: The Swash en 16 Septiembre 2011, 04:07 AM
@lukaz
Creo que lo que "crees" o en tu concepto son los offsets detectados, no son otra cosa que el famoso campo del IMAGE_DOS_HEADER, l_fanew el cual tiene el valor que apunta a la firma PE/x0/x0.
Si Avira (juraría que es éste) o cualquier otro te detecta eso, es porque generalmente está emulando tu código y al no funcionar al cambiar eso la firma se va.

Te recomiendo poner todo el cuerpo del ejecutable a 0, generalmente en Visual Basic a valor 4096d, o lo puedes mirar con un editor PE el cual te proporcione el valor del SizeOfHeraders.

Con eso sabrás realmente si está en la cabecera.

Un saludo.

Exactamente a eso me referia con que estes seguro de si esta o no en la cabeera, relee lo que te dice TheSwash y veras a lo que me refiero...
Escuela de Hackers & Programación. http://ihackndev.blogspot.com/

lucasluks1004

Gracias realmente agradezco q el avira me lo detecte ya q estoy aprendiendo bastante ,,gracias de nuevo por seguir contestando con este problema ,,del lordpe tomo el sizeofheaders el cual esta en 00001000 tomo el hex workshop y pongo ese valor en hex todo lo q esta depues lo pongo en 00 lo guardo y aun asi es detectado por lo q sigue estando en la cabecera la firma o eso parace,al hacer esto me tira el avira TR/Crypt.XPACK.Gen mientras q el original me sale TR/Crypt.XPACK.Gen3

The Swash

El cambio de firmas, es porque además de las firmas en la cabecera tiene firmas en el cuerpo del archivo, te recomiendo que pruebes el famoso método de reemplazar valores de los distintos offsets, identificar la firma y el sitio donde esté, pero trabaja con el archivo que tenga el cuerpo en 00. Luego identificas con un editor PE sobre que campo recae la firma y vemos que se puede hacer.

Un saludo.