1、原理分析
mrctf2020_shellcode是一道入门级的pwn(二进制漏洞挖掘)题,适合用来入门,了解二进制漏洞挖掘基本流程,找不到题目可以私信我。
运行 checksec mrctf2020_shellcode
得知:
1、程序架构是 amd64,64位,小端模式
2、got表只读不可写
3、没有启用栈保护
4、栈中数据有执行权限
5、启用位置无关可执行文件即编译时将程序编译为位置无关,程序运行时各个段加载的虚拟地址在装载时才确定
6、存在可读可写可执行段。
执行程序发现,程序要求输入某个字符串。
使用ida pro 静态分析mrctf2020_shellcode程序
程序中,call rax ida 的f5不起效果,反汇编得知
程序设置了410h的栈,使用_puts显示