pwn题查找字符串方法记录
记忆力不太好,简单记录一下,用作备忘
假设现在有文件如下:
- 待 Pwn 程序:mypwn
- libc 文件:libc.so
需要查找的字符串 /bin/sh
在上诉两个文件中都存在。
查找程序中的字符串
0x0 IDA strings window
将程序加载到 IDA 后,使用快捷键 shift+F12
打开 strings window ,查看程序中出现的全部字符。
0x1 Linux strings 命令
1 | strings -a -t x mypwn | grep '/bin/sh' |
返回的是地址最低 3 位。因为就算随机化,最低 3 位地址也保持不变。
0x2 ROPgadget
1 | ROPgadget --binary mypwn --string '/bin/sh' |
0x3 pwntools search 方法
1 | from pwn import * |
pwntools 中用 ELF 加载程序(mypwn)后,elf 对象有一个 search 方法好像也可以查找字符串,未实测。
查找 libc 中的字符串
0x0 pwntools search 方法
1 | from pwn import * |
0x1 libcSearch
使用 libcSearch 之前需要泄露出地址,以初始化 libcSearch 。这里假设泄露出 puts 地址。
1 | from LibcSearcher import * |
0x2 ROPgadget
1 | ROPgadget --binary libc.so --string '/bin/sh' |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 SkYe231 Blog!