通过程序try/catch抛出异常之绕过canary pwn121

打印 上一主题 下一主题

主题 835|帖子 835|积分 2505

一种新的姿势:程序try/catch抛出异常之绕过canary
我前面发了不少关于绕过canary的姿势,先总结一下,现在绕过canary的姿势有泄露,爆破,格式化字符串绕过,多线程挟制TLS绕过,
stack_smashing,数组越界等等,今天先容一种新的姿势,就是程序处置惩罚异常时,如果异常被上一个函数的catch捕捉,那么上个函数的rbp就会酿成上这个函数的rbp,具体可以看看处置惩罚异常的过程。
https://blog.csdn.net/qq_31865983/article/details/97387879
这里就加以利用

首先照旧查看保护

nx保护关闭我们64位ida载入看一下


里面有格式化字符串漏洞,栈溢出,和堆溢出,但是仔细看的话都不能很好的利用
这里我发现一个漏洞仔细看这个函数有一个整数溢出



之后我们就可以利用栈迁移把我们想要实行的数据放入rbp指的地址,如许就可以泄露出libc地址然后进行one_gadget

然后上一个函数的leave_ret 和这一个函数的leave_ret实现栈迁移


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

曹旭辉

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表