DynELf:通过程序漏洞泄露出任意地址内容,结合ELF文件的结构特征获取对应版本文件并计算对比出目标符号在内存中的地址
模板:
p = remote(ip, port)
def leak(addr):
payload2leak_addr = “” + pack(addr) + “”
p.send(payload2leak_addr)
data = p.recv()
return data
d = DynELF(leak, pointer = pointer_into_ELF_file, elf = ELFObject)
system_addr = d.lookup(‘system’, ‘libc’)
read_add = d.lookup(‘read’,’libc’)
DynELF泄露函数方法最方便的使用情况是程序中最好含有write函数等输出函数且可以多次反复调用,并且DynELF找的是字符串