05 2024 档案
摘要:checksec ida 我们看到在vul函数中,有两个read函数,每个都读取了0x30(48)大小的字符,并放入字符数组s中,也就是说我们能溢出的只有8个字节,刚好覆盖到ebp和返回地址 所以我们需要栈迁移,使我们能溢出更多字节 首先利用第一个read,输入40字节的数据,刚好覆盖到ebp,然后
阅读全文
摘要:查看一下保护情况 丢进ida里分析 主函数调用了一个含有alarm的函数,这个函数会设置一个定时器,到时间自动退出程序 为了方便调试,我们直接patch掉这个函数 接着分析,主函数读入了一个随机数,并将其传入sub_804871F函数 sub_804871F函数读取输入,并检查输入的是否和随机数相同
阅读全文
摘要:检查一下保护情况 ida里选项2,3都没有什么重要的信息,直接看选项1 发现栈溢出漏洞,不过程序对输入的字符串有一个异或加密,这里可以构造异或后的payload,利用程序来解密,或者可以直接在payload第一位加上'\x00',直接截断payload后面的异或操作 用cyclic测一下溢出点,得到
阅读全文
摘要:题目地址:https://buuoj.cn/challenges#get_started_3dsctf_2016 检查一下保护情况 拖进ida分析 主函数有个很明显的栈溢出漏洞 没有找到system函数,但是发现了这个函数 后面有两种解题思路 0x01 调用get_flag函数 这个函数读取了fla
阅读全文
摘要:题目地址:https://buuoj.cn/challenges#[第五空间2019 决赛]PWN5 先检查一下保护情况 再拖进ida里分析 找到一个格式化字符串漏洞,那么我们可以利用这个漏洞去获取或者改写dword_804C044的值 从而进入if语句中,拿到shell 什么是格式化字符串漏洞 所
阅读全文