2018 backdoor CTF
shelter
简单分析下逻辑和思路,程序
1 | pwndbg> checksec |
基本保护全开。程序主要有三个功能,一个 now note
,新建chunk
会发现,对函数指针elems
进行free
后并没有进一步去设置为空。
在delete的过程中,我们发现程序有一条指令为call rdx
,进一步调试的过程中我们发现rdx
的值为elems
有关,所以如果我们可以控制或者伪造一个函数指针,然后去call,就控制了程序的流程help
,打印help函数的地址,由此我们可以泄漏程序地址
1 | #!/usr/bin/env python |