Nuevas NORMAS para el foro

Curso Hacker
Bienvenido(a), Visitante. Favor de ingresar o registrarse.
¿Perdiste tu email de activación? - Agosto 07, 2008, 05:12:02
Boton Buscar
Inicio Ayuda Ingresar Registrarse
Visita: Articulos - Juegos Gratis - Da Foros

Comunidad Underground Hispana  |  Programacion  |  Programación  |  ASM (Moderador: The Shadow (Vacaciones))  |  Tema: [W] Manual de como Usar el comando "DEBUG" para debuggear un .COM 0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: [W] Manual de como Usar el comando "DEBUG" para debuggear un .COM  (Leído 661 veces)
ven0m
Colaborador
*****
Desconectado Desconectado

Mensajes: 782


Christina...Eat me, drink me...

x_0@hotmail.de
Ver Perfil Email
« en: Abril 27, 2007, 11:23:53 »

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


« Última modificación: Marzo 31, 2008, 08:55:15 por The Shadow » En línea

R-E-S-P-E-C-T, find out what it means to me


Christina..Christina..Brak mi ciebie moj EMO-Princesa..BARDZO CIE KOCHAM!!!
Páginas: [1] Ir Arriba Imprimir 
Comunidad Underground Hispana  |  Programacion  |  Programación  |  ASM (Moderador: The Shadow (Vacaciones))  |  Tema: [W] Manual de como Usar el comando "DEBUG" para debuggear un .COM « anterior próximo »
Ir a:  


Ranking-Hits
Powered by SMF 1.1.5 | SMF © 2006-2007, Simple Machines LLC