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 - cpu2

#91
Aqui te dejo la respuesta, como dice el compañero para UDP seria il.legal, con lo del 0 de la regla no dejarias paso a los paquetes UDP de entrada con una comprobacion checsum que resultara 0

https://ask.wireshark.org/questions/13962/can-tcp-checksum-be-zero0

Un saludo.
#92
ASM / Re: [DUDA] Pares de registros
6 Marzo 2017, 17:34 PM
Si no tambien podrias moverlos directamente al stack.

Saludos.
#93
GNU/Linux / Re: Gparted no me desmonta usb
6 Marzo 2017, 17:28 PM
Intenta desmontar la particion desde la terminal con un umount -f, mira con un df -h con que nombre reconoce el dispositivo.

Un saludo.
#94
ASM / Re: [DUDA] Pares de registros
6 Marzo 2017, 13:31 PM
Citarentonces como haria para mover el resultado a un registro de 32 bits?

supongamos:

mov AX, 655
mul 321

;digamos que el resultado se torno en una DWORD, como hago para mover ese valor a ECX por ejemplo?=/quote]

El resultado seria de 18 bits, 110011010101001111 los bits que no entren en AX pasaran a DX.

Tienes muchas formas de copiar el valor a ECX, primero mira el valor de ax y de dx para enterarte, luego puedes mover los bits con short o similar.

Saludos.
#95
Sigue estos pasos como te lo detallo:

Donde tienes el Entry point del ejecutable tienes que colocar el primer push del messagebox, fijate que todos los offsets esten bien, porque hay cosas que no me cuadran del mensaje de error, luego haz que retorne al punto original del ejecutable.

Un saludo.
#96
Guardas el ejecutable, pero probaste desde en el mismo olly? Tendria que decirte donde esta el fallo.

Saludos.
#97
ASM / Re: [DUDA] Pares de registros
5 Marzo 2017, 22:40 PM
Tienes los pares por que al multiplicar por ejemplo el valor mas alto que puedes en un unsiged ejemplo con AL, 0xFF = 255 = 11111111

El resultado de este seria un unsigned de 16 bits, y este tendra que estar en un registro de 16 como AX.

Lo mismo cuando multiplicas un unsigned de 16 bits en AX este se puede tornar a 32 bits, hay el registro DX, el resto del resultado se gurarda en el otro.

Si el resultado no pasa del tamaño no tiene porque usar el registro concatenado.

Asi en todos. Saludos.
#98
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.
#99
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.
#100
ASM / Re: Shellcode to HEX (BOF)
28 Enero 2017, 20:49 PM
¡
Cita de: GGZ en 28 Enero 2017, 19:42 PM
Código (asm) [Seleccionar]

s.o:     file format elf32-i386


Disassembly of section .text:

00000000 <main>:
   0: eb 11                jmp    13 <__archivo>

00000002 <_salto>:
   2: b8 0a 00 00 00        mov    $0xa,%eax
   7: 5b                    pop    %ebx
   8: cd 80                int    $0x80
   a: 89 c3                mov    %eax,%ebx
   c: b8 01 00 00 00        mov    $0x1,%eax
  11: cd 80                int    $0x80

00000013 <__archivo>:
  13: e8 ea ff ff ff        call   2 <_salto>
  18: 2f                    das   
  19: 68 6f 6d 65 2f        push   $0x2f656d6f
  1e: 68 74 74 70 64        push   $0x64707474
  23: 2f                    das   
  24: 74 65                je     8b <__archivo+0x78>
  26: 73 74                jae    9c <__archivo+0x89>
...


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[