본문 바로가기

Shellcode

Tiny ELF stub

초소형 ELF 를 만들거나 쉘코드를 ELF 로 만들때 아주 좋다.

바이너리를 a.bin 에 준비시켜놓고 쉘스크립트를 실행시키면 ELF 헤더가 알맞게 붙어서 a.out 으로 생성된다.

Thanks to bla.


#!/bin/bash

(

# Tiny ELF stub based on:

# http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html

echo -ne "\x7f\x45\x4c\x46\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x03\x00\x01\x00\x00"

echo -ne "\x00\x54\x80\x04\x08\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x34\x00\x20\x00\x01\x00"

echo -ne "\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x80\x04\x08\x00\x80\x04\x08"

echo -ne "$(printf %08x $((84+$(stat -c %s a.bin))) | sed -r "s/(..)(..)(..)(..)/\\\\x\4\\\\x\3\\\\x\2\\\\x\1/g")"

echo -ne "$(printf %08x $((84+$(stat -c %s a.bin))) | sed -r "s/(..)(..)(..)(..)/\\\\x\4\\\\x\3\\\\x\2\\\\x\1/g")"

echo -ne "\x05\x00\x00\x00\x00\x10\x00\x00"

cat a.bin

) > a.out

chmod +x a.out



'Shellcode' 카테고리의 다른 글

Shellgen v1.0  (0) 2014.06.03
egg.c  (0) 2014.03.25
FreeBSD ARM overwrite  (0) 2013.07.24
FreeBSD ARM readkey  (0) 2013.07.24
FreeBSD ARM remote  (0) 2013.07.24