摘要: ret2csu 个人见解 csu实际上是基于libc的一种泄露函数基地址的做法,其原理还是基于rop链的构造。大多时候我们难以找到每个寄存器对应的gadgets,但是当我们遇到wirte函数泄露的时候却必须要控制三个寄存器(64位首先存入数据的rdi,rsi,rdx),这时候,我们就可以利用 x64 阅读全文
posted @ 2024-07-11 14:43 T_FIRE 阅读(0) 评论(0) 推荐(0)
摘要: 最近在回顾国资师傅的文章是,对视频中的gdb两个窗口的联动方法产生了很大的兴趣。可惜师傅提供的方法建立在下载了三种插件并且修改了gdbinit文件的基础上,在刚入门的小白看来可能显得有些繁琐,而且我的kali进行了汉化,部分方法也行不通了,所以我总结了网上的一些资源,得出了一个只需要下载了pwndb 阅读全文
posted @ 2024-06-11 17:58 T_FIRE 阅读(128) 评论(0) 推荐(0)
摘要: 最近事务繁多,导致这个wp至今才搞出来,现在发网上,希望能对大家有所帮助 首先,我们先检查一下二进制文件 发现pie和canary全开,不用着急,我们来看看文件 我们先正常的进行一下反编译,发现一个较为明显的格式化字符串漏洞,并且还有一个后门函数 这样我们就有了大概的思路 我们只要确保输入的前几个字 阅读全文
posted @ 2024-06-06 12:57 T_FIRE 阅读(0) 评论(0) 推荐(0)
摘要: 第一节 覆盖截断字符获取canary 原理 Canary设计其低字节为\x00,本意是阻止被read、write等函数直接将Canary读出来。通过栈溢出将低位的\x00覆写,就可以读出Canary的值。 实践 首先我们查看汇编语言了解canary所在的地址进而方便我们进行修改,其形式大概类于mov 阅读全文
posted @ 2024-06-05 23:29 T_FIRE 阅读(0) 评论(0) 推荐(0)
摘要: Ret2libc函数个人见解 在学习libc之前,我们要先懂得32位和64位的传参模式。 1.32位 是栈里传参,属于后传参 2.64位 是先传参,其参数从左到右依次放入寄存器:rdi,rsi,rdx,rcx,r8,r9中 接着,我们就要开始学习plt和got的关系。 深入理解GOT表和PLT表 - 阅读全文
posted @ 2023-11-29 14:36 T_FIRE 阅读(0) 评论(0) 推荐(0)