elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ... 98
131  Programación / ASM / Re: Duda ensamblador, conversion de x86 a x64 (push y pop) en: 8 Febrero 2017, 21:41 pm
Hay errores, estas sumando 8 a esp en la cuarta instruccion, ademas de otras sumas, si estas en 64 bits, tienes que usar syscall no int 0x80, se me olvido decirtelo. Los parametros no se suben al stack, si no se pasan a los registros.

http://stackoverflow.com/questions/2535989/what-are-the-calling-conventions-for-unix-linux-system-calls-on-x86-64

Mirate eso.

Un saludo.
132  Programación / ASM / Re: Duda ensamblador, conversion de x86 a x64 (push y pop) en: 7 Febrero 2017, 22:04 pm
A la hora de trabajar con ebp, esp lo haces en 32 bits, si tu sistema esta corriendo en 64 bits, recuerda que las direcciones seran un quad, tienes que usar los de 64 bit, rsp, rbp.

Si estas en linux puedes hacer un strace, para saber donde esta la violacion, pero vamos que es por lo que te dije.

Un saludo.
133  Programación / ASM / Re: Shellcode to HEX (BOF) en: 28 Enero 2017, 20:49 pm
¡
Código
  1. s.o:     file format elf32-i386
  2.  
  3.  
  4. Disassembly of section .text:
  5.  
  6. 00000000 <main>:
  7.   0: eb 11                 jmp    13 <__archivo>
  8.  
  9. 00000002 <_salto>:
  10.   2: b8 0a 00 00 00       mov    $0xa,%eax
  11.   7: 5b                   pop    %ebx
  12.   8: cd 80                 int    $0x80
  13.   a: 89 c3                 mov    %eax,%ebx
  14.   c: b8 01 00 00 00       mov    $0x1,%eax
  15.  11: cd 80                 int    $0x80
  16.  
  17. 00000013 <__archivo>:
  18.  13: e8 ea ff ff ff       call   2 <_salto>
  19.  18: 2f                   das    
  20.  19: 68 6f 6d 65 2f       push   $0x2f656d6f
  21.  1e: 68 74 74 70 64       push   $0x64707474
  22.  23: 2f                   das    
  23.  24: 74 65                 je     8b <__archivo+0x78>
  24.  26: 73 74                 jae    9c <__archivo+0x89>
  25. ...
  26.  

Lo que hay debajo del call es la cadena, cuando haces el call hace un push del offset a continuación del call, lo que significa que tienes un offset que apunta al principio de la cadena, los offset no son validos, ya que se toma como cadena, no se ejecutan.

Luego el pop del ebx, carga el offset del call, puedes hacerlo con los push y luego copiar el offset que seria lo mismo, que es lo que haces.

Si copia todo los obcode, nada mas, igual que lo tuya.

Saludos[
134  Programación / ASM / Re: ASM to HEX (BOF) en: 28 Enero 2017, 16:35 pm
Pero sabes el porque del fallo? Si desensamblas el ejecutable que creas con C y mira a que datos apunto el offset que pasas a ebx, ya que ni sera un offset valido.

Por ese motivo las shellcodes pasan path, de esa forma ya que no pueden depender de direcciones como data etc...

Un saludo.
135  Programación / ASM / Re: ASM to HEX (BOF) en: 28 Enero 2017, 01:52 am
Por lo que veo tienes la cadena en la sección data, y estas pasando la direccion en la shellcode. Porque no colocas la misma cadena al final de la sección text:

Código
  1. .section .text
  2. .global main
  3. main:
  4.  
  5. jmp __archivo
  6.  
  7. _salto:
  8.        movl $10, %eax    
  9.        popl %ebx
  10.        int  $0x80
  11.  
  12.        movl %eax, %ebx  
  13.        movl $1, %eax      
  14.        int  $0x80
  15.  
  16. __archivo:
  17.  
  18. call _salto
  19. .asciz "/home/httpd/test"  # Archivo a eliminar.

Miralo con el objdump, y copia los hex.

Un saludo.
136  Sistemas Operativos / GNU/Linux / Re: Lograr comunicar puerto serie con VirtaulBox en: 26 Enero 2017, 16:30 pm
Hola

Cuando ya tienes el sistema listo para emular, tienes e apartado de configuracion en puertos tienes el COM.

Si es un Linux la ruta deberia de ser /dev/ttyS0 o 1, el numero que tengas, mejor miralo con un dmesg y te quitas de dudas.

Un saludo.
137  Sistemas Operativos / GNU/Linux / Re: duda con imagen iso de kali linux en: 10 Enero 2017, 12:26 pm
Con dd puedes hacerlo sin ningun problema.

Citar
dd if="ruta dispositivo cd" of="lo mismo ruta donde quieres crear iso".iso bs=32k

ejemplo:

dd if=/dev/rcd1c of=kali.iso bs=32k

Un saludo.
138  Programación / Programación General / Re: como se traduce la declaración de una variable dentro de una función a asm i386? en: 7 Enero 2017, 20:06 pm
Puedes declarer la variable en su sección correspontidente, e incluso si solo es para leer en el mismo cuerpo del codigo.

Hay muchas formas de pasar esa variable:

Código
  1. .section .data
  2. a: .word 0x01

Código
  1. push $0x1

Código
  1. subl $4, %esp
  2. movl $1, (%esp)
  3.  
  4. ; esta mejor
  5.  
  6. movl $1, -4(%esp)


Libros tienes un monton solo haciendo una busqueda por amazon mira lo que encontre.

https://www.amazon.es/dp/1484200659/ref=pd_sim_14_1?_encoding=UTF8&psc=1&refRID=6BHJXT0J67B4FSRH8QDD

https://www.amazon.es/Introduction-Intel-Assembly-Language-Programming/dp/1478119209

Asi unos cuantos.

Un saludo.
139  Seguridad Informática / Análisis y Diseño de Malware / Re: Algoritmo de cifrado Polimórfico en: 19 Diciembre 2016, 13:26 pm
Me recuerda la primera vez que lei el paper de Phrack sobre las shellcodes polymorphic.

Buen aporte.

Un saludo.
140  Programación / Java / Re: ¿Cómo proteger envíos por sockets? en: 16 Diciembre 2016, 16:26 pm
Tienes que aplicar criptografia, si no quieres usar librerias, tendras que aplicar tus propios algortimos.

Un saludo.
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ... 98
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines