Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - MCKSys Argentina

#3371
De esta forma.

Saludos!
#3372
Te recomiendo leer esto.

Saludos!
#3373
Cita de: harry_the_blogger en 26 Agosto 2014, 03:31 AM
Como dije, en la primera generacion, el virus se ejecuta sin errores. Pero en la segunda generacion (el virus insertado dentro del archivo infectado), el virus falla. El virus en su primera ejecucion como ejecutable indepiendente corre normalmente.

Las preguntas anteriores, fueron acerca de lo que llamas la segunda generacion. Osea, imagino que una vez infectado un ejecutable, lo haz corrido bajo Olly (o el debugger que prefieras) para ver qué parte es la que está crasheando... no?

Cita de: harry_the_blogger en 26 Agosto 2014, 03:31 AM
Quisiera que me dijeras un metodo para añadir una nueva sección, pues pienso que eso sería más factible que simplemente sobreescribir la sección de codigo.

Hay demasiados ejemplos en Google sobre eso:

ejemplo 1
ejemplo2
ejemplo3
...
...
...
ejemploN

Saludos!
#3374
Cita de: harry_the_blogger en 25 Agosto 2014, 23:29 PM
Use OllyDbg para ver si había inyectado el codigo dentro del ejecutable, y si lo hizo. Pero cuando ejecuto el archivo infectado, el virus crashea.

Y en qué parte crashea? En el codigo de tu virus o en el del programa original? O el programa original deja de funcionar?
#3375
Well, I need to practice my english, so:

1) I recommend you to use Olly 1.10 and StrongOD plugin. Also, always tray to unpack using Windows XP SP3 (a Virtual Machine is pretty handy for this).
2) In this case, OEP is at 702742h. To get to the OEP:
- At the EP (C1F400) put a BPM in the .text section and hit F9. When Olly stops, you'll be at C33C95:


00C33C95    281F                    SUB BYTE PTR DS:[EDI],BL
00C33C97    50                      PUSH EAX
00C33C98    8B85 F3D24200           MOV EAX,DWORD PTR SS:[EBP+0x42D2F3]
00C33C9E    3207                    XOR AL,BYTE PTR DS:[EDI]
00C33CA0    D1C0                    ROL EAX,1
00C33CA2    8985 F3D24200           MOV DWORD PTR SS:[EBP+0x42D2F3],EAX
00C33CA8    58                      POP EAX
00C33CA9    47                      INC EDI
00C33CAA    59                      POP ECX
00C33CAB    E2 02                   LOOPD SHORT 3DSimED3.00C33CAF
00C33CAD    EB 05                   JMP SHORT 3DSimED3.00C33CB4
00C33CAF  ^ E9 21FFFFFF             JMP 3DSimED3.00C33BD5
00C33CB4    C3                      RETN

If you watch the code, you'll see that the LOOP at 00C33CAB goes to the JMP at 00C33CAF and that JMP goes up. BUT the JMP between both (00C33CAD) goes to the RETN.
Now, Put a BP on that RETN (00C33CB4) and hit F9. When Olly stops, put a BPM in the .text section and hit F9. When Olly stops, you'll be at OEP:

00702742   .  E8 26410100           CALL 3DSimED3.0071686D

Now you can dump and rebuild IAT with ImpRec. You'll have 4 bad entries in the IAT. The first is ExitProcess (the same as the tutorial).
The other 3 are used by the program to comunicate with the packer. You'll have to wach what happens in each of those 3 (what registers are modified and what is modified in the stack).
In fact, only 2 functions are important. Both MUST return 0 in EAX, but they also return data in the stack, so be careful with that.

And that should be enough to remove the packer... :)

Cheers!

EDIT:

I forgot to tell you to check all the exceptions, so they are passed to the packer!
#3376
Hola!

Te recomiendo leer este tutorial.

Saludos!

PD: El OEP sale sencillo!  ;)
#3377
Cita de: harry_the_blogger en 24 Agosto 2014, 04:35 AM
Puedes decirme en que parte del PE Header modifico el tamaño?

Si podría, pero creo que es mejor que lo descubras por ti mismo. No obstante, te dejo una ayuda.

Cita de: harry_the_blogger en 24 Agosto 2014, 04:35 AM
Esa pagina llamada vxheavens ya la habia visitado antes, y tambien estoy leyendo unos cuantos sources de virus para ver que es lo que modifican en el PE Header. Vxheavens aparentemente está algo antigua, porque he encontrado tutorialez del año 1998, y algunoz cuantos del 2004.

Si, tiene fuentes antiguos y otros no tanto. De todas formas, si revisas varios de los codigos, veras cosas "viejas" que aún están muy vigentes...

Saludos!
#3378
Dudas Generales / Re: Por donde empiezo?
24 Agosto 2014, 01:45 AM
Hola!

Fíjate que el foro tiene posts que están fijos. Los mismos están al principio siempre (por eso están "fijos"  :P )

Te recomiendo comenzar por éste: click

Saludos!

Cita de: CRackEmWillie en 24 Agosto 2014, 00:02 AM
Por que apenas se que un kilobite contiene 8 bits...si no me equivoco,y que la palabra hola es igual a 4bits..si no me equivoco tambien

1 Kilobyte = 1024 bytes
1 byte = 8 bit
1 caracter = 1 ó 2 bytes normalmente (depende de cómo se codifique). En tu caso, "hola" son 4 bytes an ASCII/ANSI y 8 en UNICODE.

Saludos!
#3379
Cita de: harry_the_blogger en 23 Agosto 2014, 18:18 PM
El virus se añade al final de la ultima sección del ejecutable, (.text).

Normalmente, la sección .text es la primera sección luego del PE Header, no la ultima.
Fijate en la siguiente captura de CFF explorer sobre calc.exe de un XP SP3:


La sección .text es la primera despues del header. En el archivo, está en el offset 0x400 (Raw Address) y tiene un size de 0x12800.

Si tu virus se inserta al final, deberás asegurarte de que no sobreescriba nada. Ahora, si quieres hacer mas grande la sección .text, ahi hay otro problema pues deberas agrandar la sección, escribirla con los datos actualizados, correr todas las otras secciones, y corregir todo los demás campos que están relacionados a un offset específico. Esto ultimo es muy complejo, por lo que se opta por agregar una nueva sección o buscar algun codecave para insertar tu virus.

En google hay muchos samples sobre inline-patching. Y sobre virus, el mejor lugar es este.

Cita de: harry_the_blogger en 22 Agosto 2014, 17:32 PM
La próxima vez tendré más cuidado antes de preguntar.

Si, ya veo...  :P  ;)

Saludos!
#3380

Haz hecho el curso de intro a Olly de Ricardo Narvaja? Porque lo que preguntas es MUY basico...

Saludos!