Foro de elhacker.net

Programación => ASM => Mensaje iniciado por: braulio-- en 10 Agosto 2009, 14:12 pm



Título: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: braulio-- en 10 Agosto 2009, 14:12 pm
Estoy en linux, usando nasm y estoy haciendo este código.
Código
  1. section .data:
  2.  fichero: db 'programa'; Nombre que tendra el programa
  3. section .bss:
  4.  texto: resb 16000
  5. section .text:
  6. global _start
  7. _start:
  8.  mov eax,5 ; sys_open()
  9.  pop ebx
  10.  pop ebx ; El nombre de este programa
  11.  pop ebx; Primer argumento
  12.  mov ecx,0 ; Para leer
  13.  int 80h
  14.  ; Ya está en eax
  15.  mov ebx,eax; Ya no(bueno , aun si)
  16.  mov eax,3 ; sys_read
  17.  mov ecx,texto
  18.  mov edx,16000
  19.  int 80h;
  20.  ;El contenido del fichero este está en texto.
  21.  ;Ahora voy a abrir otro fichero
  22.  mov eax,4
  23.  mov ebx,1
  24.  mov ecx,texto
  25.  mov edx,16000
  26.  int 80h
  27.  
  28.  
  29.  mov eax,1
  30.  mov ebx,0
  31.  int 80h
  32.  
  33.  
  34.  
Cuando lo ejecuto (le he dado todos los permisos necesarios y eso) no hace nada.
Creo que lo he hecho bien, alguien sabe cuál es el problema?
Gracias


Título: Re: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: Yurix en 10 Agosto 2009, 18:37 pm
\
Hola braulio , lo que pasa *((eso creo yo tal ves este equivocado)) es que tienes que abrir la consola y entonces ejecutar el programa , si lo ensamblaste y no da error entonces debe de hacer algo , trata de abrir la consola y arrastrale el ejecutable .elf .

Saludos


Título: Re: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: Eternal Idol en 10 Agosto 2009, 19:14 pm
Depuralo con gdb.


Título: Re: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: braulio-- en 10 Agosto 2009, 22:41 pm
Lo hice desde la consola pasándole un argumento de un fichero.
Ahora lo depuro .
¿Pero que se supone que debería buscar? El código lo tengo ahí mismo y en asm , para que el debugger?


Título: Re: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: Eternal Idol en 10 Agosto 2009, 22:51 pm
Para ver el comportamiento, que resultado devuelve cada interrupcion ... si esta escribiendo en el buffer que esta escribiendo, etc.


Título: Re: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: braulio-- en 10 Agosto 2009, 23:12 pm
He compilado con la opción -g para que genere información de depuración pero cuando uso el gdb me dice .
Symbols not Found
Asi que creo que no puedo poner ningún bp.


Título: Re: [?][Linux/Nasm]No funciona programa similar a cat.
Publicado por: Eternal Idol en 10 Agosto 2009, 23:19 pm
Ya tenes el codigo en assembly y es bastante corto, no necesitas los simbolos, pone un int 3 al principio y listo.