• sp和bp寻址有区别

  • 平衡栈问题

    ret2libcexp

#coding:utf8
from pwn import *

context.log_level = 'debug'
context.terminal = ['tmux', 'splitw', '-h'] #pwndbg适配该终端,加上这句话,我们就可以在一个终端进行分屏调试,分屏的切换一类的操作还需要查看一下tmux如何使用

ip = ''
port = 0
process_name = ''
if args.G:           #还没搞清楚是什么原理,但是用法就是在参数列表中加个G就可以进入本地调试的分支
    sh = process(process_name)
    addr=''
    gdb.attach(sh, "b *" + addr)  
else:
    sh = remote(ip,port)

关于`close'

  • exp脚本里面写payload顺序不能错
  • system和call _system以及16字节对齐link
  • patchelf --set-interpreter ld* file ./pwn
  • patchelf --replace-needed old libc* file new libc* file ./pwn

recv注意事项:
link