摘要: 首先查看一下文件的保护措施 在用ida看看,先反编译一下main函数 跟进一下vuln函数 注意到这里有一个get_n,是一个自定义的函数,继续点击查看一下 然后发现a2是一个无符号的整数,如果输入一个负数,可以绕过下面的对于v2的大小的限制,并且在输入一个负数后,会将其转化为一个较大的整数,这样就 阅读全文
posted @ 2025-08-19 22:23 Rye01R 阅读(31) 评论(0) 推荐(0)
摘要: 首先查看一下文件的保护措施 然后用ida打开具体看一下这个文件,首先反编译main函数看一下 这里的漏洞很可能出现在vuln函数,点击进行跟进 这里调用了gets函数,很明显存在栈溢出的漏洞 然后观察函数名称的列表发现这里存在一个flag的函数,查看一下 这里可以看到当win1 && win2 && 阅读全文
posted @ 2025-08-19 11:00 Rye01R 阅读(15) 评论(0) 推荐(0)
摘要: 首先查看一下文件的保护措施 再用ida打开文件看看 感觉问题出现在了 vul这个函数,点开看一看 这里存在栈溢出,但是这里溢出的空间只有8,只能覆盖ebp和ret,栈的空间就会不够,这种情况下就进行栈迁移,让esp和ebp指向另一个足够大的空间 如果将栈上 ret 部分覆盖为另一组 leave re 阅读全文
posted @ 2025-07-03 23:18 Rye01R 阅读(42) 评论(0) 推荐(0)
摘要: 首先checksec一下文件 在用ida打开 发现这里存在一个明显栈溢出 这里似乎发现个函数可以直接读取flag,反编译在确认一下 可以看到确实可以读取flag,那就直接进行栈溢出,然后跳转执行这个函数就可以了 点击查看代码 from pwn import * io=remote("node5.bu 阅读全文
posted @ 2025-07-03 17:37 Rye01R 阅读(35) 评论(0) 推荐(0)
摘要: 先看一下文件的基本信息 64位,保护措施就开了个NX 再用ida打开看一下 主要是调用了两个函数,那就点看这两个函数具体看看 这里看到出现了libc,可能在提示有libc泄露 在看看另一个函数 很明显有栈溢出 再去找找有没有后门函数,system,/bin/sh可以直接使用,发现什么都没有 这里的P 阅读全文
posted @ 2025-07-03 16:54 Rye01R 阅读(20) 评论(0) 推荐(0)
摘要: 首先看一下文件的基本信息 再用ida打开看一看,这里就直接看main函数,发现当x==4时就直接得到shell了,所以思路就是对x的值进行修改,这里的printf可以看出来有格式化字符串漏洞,可以用来修改x的值 直接运行一下程序,找到输入参数在函数上的位置 可以看到偏移量是11 然后再找到x的地址 阅读全文
posted @ 2025-07-03 11:22 Rye01R 阅读(38) 评论(0) 推荐(0)
摘要: 首先查看一下文件的基本信息 是个64位的程序,只开了NX保护 继续用64位的ida打开文件看一看 这里的mian函数大概是先输入一个值,然后与10进行比较,如果比10大,就退出程序,否则就继续执行 这里也很容易发现有栈溢出的漏洞,但是有if条件的约束,不能输入一个较大的数直接溢出,但是能输入‘-1’ 阅读全文
posted @ 2025-07-02 23:23 Rye01R 阅读(62) 评论(0) 推荐(0)
摘要: 首先查看一下文件的基础信息 可以看到是个32位的程序,保护措施就开了个NX 在用32位的ida打开看看文件具体干了什么 发现这么看main中就是主要调用了两个函数,那就具体看看这两个函数干了什么,其实看函数名就发现第二个函数肯定存在问题,得好好看看 点开发现这里存在溢出,想到可以溢出修改返回地址 在 阅读全文
posted @ 2025-07-02 21:23 Rye01R 阅读(82) 评论(0) 推荐(0)