Buenas antes de todo mis saludos a la gente de el foro y espero que entiendan mi tutorial...
( mi gramatica castellana va mal ya que vivo en alemania y no hablo casi el espaniol.. )
Y aqui Va:
#######################################################################################################
Bueno Aqui te dejo este Pequenio tutorial de Como hacerle un Debug al EICAR.COM ( ya te explique que era el eicar )
Tu podrias bajarte Eicar.com desde la pagina
www.eicar.com o tambien podrias crearlo por ti mismo ( que seria la mejor opcion ).
Para crearlo tu mismo Abre el Editor de Texto y pega lo siguiente :
X5O!P% @AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
Guarda el texto con el siguiente Nombrey extension :
eicar.txt
Ahora entras a la consola haces un copy a eicar.txt
copy c:\eicar.txt c:\eicar.com
Al hacer eso tu antivirus saltara.. es normal ya que el eicar.com es un Test para comprobar si los antivirus funcionan o no.
Ahora Entras a la consola ( MSDOS ) de la siguiente manera :
Suponiendo que guardaste el eicar.com en el disco C:\ pones
cd \
debug eicar.com
Como puedes ver no pasa nada.. solo aparece la linea " - " a tu lado izquierdo de la pantalla
eso es la linea de comandos de " DEBUG ". AHora piensa que estamos en la linea de comandos de Debug y escribe lo siguiente :
-d <-------- Ese es el comando DUMP y te muestra la salida de la memoria donde nos encontramos.
Si no me equivoco Estas en la entrada 0CD2:0100 ( Segmento:OffSet ) y te aparecen los siguientes Numeros:
58 35 4F 21 50 25 40 41-50 5B 34 5C 50 5A 58 35 X50!P%AP[4\PZX5
Bueno ahi es donde empieza la funcion de el programa eicar.com.
Si te diste cuenta el Debug cargo el eicar.con directo en la direccion de memoria
0100h ( la h esta por hexa, no necesitas ponerla ), por que tu puedes leer
"EICAR-STANDARD-ANTIVIRUS-TEST-FILE" .
ahora haremos un (R)egister en debug. para eso pones lo Siguiente en linea de comando
de debug:
-r
Con (R)egister El debug te manda una actualizacion de el Registro de Procesadores ( todo esto es tu hardware.Este comando lo necesitaremos mas tarde ahora siguamos con lo nuestro.
Ahora vamos a empezar a Desamblar nuestro eicar.com.
Con el Comando (U)nassemble, puedes desamblar el eicar.com. Lo que ves a continuacion
Son los primeros 16 byte que mediante el Comando (U) llamaste.
Ahi es donde se encuentran las lineas que hacen saltar el antivirus: ( X5O!P% @AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H* )
Traducidas a codigo ASM.
Bueno eso de el comando (U)nassemble Manualmente lo dejaremos ya que es mejor
crear archivos de entrada y salida que creen e por ti ( para eso somos Flojos xD ).
Bueno dejemonos de tonterias y te ensenio de como se hace esto :
Abre la consola y escribe ( suponiendo qu esta en el disco C:\ que es lo mejor )
C:\>debug eicar.com
-u 0100 0143
-q
Como debes de ver te aparece el siguiente codigo ( no en todas las PC's es igual )
-u 0100 0143
0CD2:0100 58 POP AX
0CD2:0101 354F21 XOR AX,214F
0CD2:0104 50 PUSH AX
0CD2:0105 254041 AND AX,4140
0CD2:0108 50 PUSH AX
0CD2:0109 5B POP BX
0CD2:010A 345C XOR AL,5C
0CD2:010C 50 PUSH AX
0CD2:010D 5A POP DX
0CD2:010E 58 POP AX
0CD2:010F 353428 XOR AX,2834
0CD2:0112 50 PUSH AX
0CD2:0113 5E POP SI
0CD2:0114 2937 SUB [BX],SI
0CD2:0116 43 INC BX
0CD2:0117 43 INC BX
0CD2:0118 2937 SUB [BX],SI
0CD2:011A 7D24 JGE 0140
0CD2:011C 45 INC BP
0CD2:011D 49 DEC CX
0CD2:011E 43 INC BX
0CD2:011F 41 INC CX
0CD2:0120 52 PUSH DX
0CD2:0121 2D5354 SUB AX,5453
0CD2:0124 41 INC CX
0CD2:0125 4E DEC SI
0CD2:0126 44 INC SP
0CD2:0127 41 INC CX
0CD2:0128 52 PUSH DX
0CD2:0129 44 INC SP
0CD2:012A 2D414E SUB AX,4E41
0CD2:012D 54 PUSH SP
0CD2:012E 49 DEC CX
0CD2:012F 56 PUSH SI
0CD2:0130 49 DEC CX
0CD2:0131 52 PUSH DX
0CD2:0132 55 PUSH BP
0CD2:0133 53 PUSH BX
0CD2:0134 2D5445 SUB AX,4554
0CD2:0137 53 PUSH BX
0CD2:0138 54 PUSH SP
0CD2:0139 2D4649 SUB AX,4946
0CD2:013C 4C DEC SP
0CD2:013D 45 INC BP
0CD2:013E 2124 AND [SI],SP
0CD2:0140 48 DEC AX
0CD2:0141 2B482A SUB CX,[BX+SI+2A]
-q
Ok pero espera.. te explico por que entramos a la entrada de Memoria 0100 0143
Como te dije la parte que hace saltar nuestro AV empieza en la entrada
de memoria 0100 y termina en la entrada 0143.. Lo que acabamos de hacer con
(U)nassamble es decirle al Debugger que nos muestre la Parte ASM que necesitamos
ok. Explicado.. ahora para que complicarse la vida si podemos hacer textos que nos
facilitan el trabajo haciendo " PIPES " para diseamblar?.
Ahora Creas un archivo Llamado ( escribelo tal como yo lo hago :
dissas.bla.txt en la misma carpeta donde se encuentra el eicar.com ( siempre
suponiendo que lo guardas en C:\ que es lo mejor )
y escribes lo siguiente dentro de dissas.bla.txt :
u 0100 0143 <----- Esto lo escribes tal como esta.. sin la linea " - "
q
Ahora Creas un batch llamado dissas.bat y le escribes las siguientes lineas :
debug eicar.com < dissas.bla.txt > eicar.dis
Te explico lo que hacen esas lineas..
Debug empieza a correr y carga a eicar.com y espera a los Parametros ( osea a los
comandos. Esos comandos se los escribimos al archivo dissas.bla.txt. Por supuesto
el Debugger no te muestra lo que hemos echo.. ya que los comandos que le pasamos a
eicar.com desde dissas.bla.txt se guardaran en el archiv eicar.dis que hemos creado.
Osea eicar.com < dissas.bla.txt le manda los comandos antes dados mediante el parametro
" < " para robar el codigo ASM de la entrada de memoria 0100 0143 y finalmente
entregarselo a eicar.dis con el parametro de salida " > " ( no se si entendiste bien esta parte pero me cuesta escribir y expresarme bien al espanio.. tengo la gramatica alemana xD ).
Al haber terminado este proceso con exito deberias de ir a donde se guardo el eicar.dis
( normalmente en C:\ ) y abrilo con un editor de texto. las Siguientes Lineas te deberian de aparecer :
-u 0100 0143
0CD2:0100 58 POP AX
0CD2:0101 354F21 XOR AX,214F
0CD2:0104 50 PUSH AX
0CD2:0105 254041 AND AX,4140
0CD2:0108 50 PUSH AX
0CD2:0109 5B POP BX
0CD2:010A 345C XOR AL,5C
0CD2:010C 50 PUSH AX
0CD2:010D 5A POP DX
0CD2:010E 58 POP AX
0CD2:010F 353428 XOR AX,2834
0CD2:0112 50 PUSH AX
0CD2:0113 5E POP SI
0CD2:0114 2937 SUB [BX],SI
0CD2:0116 43 INC BX
0CD2:0117 43 INC BX
0CD2:0118 2937 SUB [BX],SI
0CD2:011A 7D24 JGE 0140
0CD2:011C 45 INC BP
0CD2:011D 49 DEC CX
0CD2:011E 43 INC BX
0CD2:011F 41 INC CX
0CD2:0120 52 PUSH DX
0CD2:0121 2D5354 SUB AX,5453
0CD2:0124 41 INC CX
0CD2:0125 4E DEC SI
0CD2:0126 44 INC SP
0CD2:0127 41 INC CX
0CD2:0128 52 PUSH DX
0CD2:0129 44 INC SP
0CD2:012A 2D414E SUB AX,4E41
0CD2:012D 54 PUSH SP
0CD2:012E 49 DEC CX
0CD2:012F 56 PUSH SI
0CD2:0130 49 DEC CX
0CD2:0131 52 PUSH DX
0CD2:0132 55 PUSH BP
0CD2:0133 53 PUSH BX
0CD2:0134 2D5445 SUB AX,4554
0CD2:0137 53 PUSH BX
0CD2:0138 54 PUSH SP
0CD2:0139 2D4649 SUB AX,4946
0CD2:013C 4C DEC SP
0CD2:013D 45 INC BP
0CD2:013E 2124 AND [SI],SP
0CD2:0140 48 DEC AX
0CD2:0141 2B482A SUB CX,[BX+SI+2A]
-q
Bueno ahora viene la parte de el trabajo Manual ( es un poquito xD )
tienes que borrar las Entradas de Memoria y la Secuencia de Bytes que aparecen a la
izquierda de el codigo ASM : Ejemplo :
-u 0100 0143 <--------- esta linea se la borrar por completo ya que no Disamblear otra vez
0CD2:0100 58 POP AX
0CD2:0101 354F21 XOR AX,214F
Esto de arriba tendria que quedar asi Borrandola Entradas de memoria y secuencia de bytes
POP AX
XOR AX,214F
Bueno espero que te haya quedado claro eso ahora cuando todo el codigo este limpio de entradas de memorias y secuencias de bytes le agregas estas Lineas al Principio y al final
de el codigo. Ejemplo :
N MYEICAR.COM <---- con esto creamos el archivo Final que correra con codigo ASM
A 100 <---- con esto nos vamos a la direccion de memoria 0100
POP AX <-------- y aqui copias el codigo limpio de ASM que acabaste de Hacer.
XOR AX,214F
........
.......
......
.....
....
...
..
.
INC BP <--- Estas son as ultimas lineas de codigo
AND [SI],SP <--- ""
DEC AX <--- ""
SUB CX,[BX+SI+2A] <--- ""
int 21 <--- Este es un interruptor de DOS
R CX <--- Con esto alargamos el registro CX en 44=68 byte+1
44 <--- 44 ( son 68 byte mas 1 )
W <--- Con esto le escribimos los cambios a myeicar.com
Q <--- Con esto salimos de el Programa
Y listo eso es todo...
sorry por darme muchas vueltas con las explicaciones pero como sabes mi gramatica esta acostumbrada al Aleman
espero que hayas entendido y si no me avisas
salud0s
c0d34
PS: no olvides de abrir el MYEICAR.COM que creamos
##########################
#Tutorial cread0 p0r k0ukl0S.... #
# #
# x_0 @hotmail.de #
# #
#######################################################################################################
salud0s
k0ukl0s