
题目复现
文章平均质量分 76
菜菜的屑语言之路
这个作者很懒,什么都没留下…
展开
-
[World Wide CTF 2024]WhiteRabbit
根据我们一开始说的,这个gets其实存了,(可以理解为我已经写进去了,但是还没有实现调用),所以最后一步就是实现这个rax的调用(这里其实call rax/jmp rax/甚至返回到main上面都可以实现,本质上其实是想实现这样一个ret的过程)(基于x86的调用机制决定,函数的输出结果必须存储在rax,所以get函数的输出结果(也就是我们输入的包含有地址的)也存在rax寄存器里面)第一种方法:翻你的汇编代码,有jmp rax的/call rax的,直接base加上去就可以了。超级明显的一个栈溢出漏洞。原创 2024-12-11 20:19:09 · 424 阅读 · 0 评论 -
[World Wide CTF 2024]Buffer Brawl
其次就是这个版本下的system函数0x0050d70,注意这个0d70,他刚好对应的是/p,所以这里会被截断,所以上面那个脚本死活也打不通(这里我在调试的时候其实也看到了,就是这个system的地址死活写不进去,到这里就会开始抛异常,一直以为是栈没写对,长见识了)p1前半部分泄露的地址相当于在调用plt,加上后面的got就可以泄露地址了(因为程序本身就是循环的,所以不用返回)正如我们一开始分析的那样,后面就是打打我们的栈,填上我们的canary,然后ret2libc就完了。原创 2024-12-13 21:45:52 · 831 阅读 · 0 评论 -
[World Wide CTF 2024]All your base are belong to us
可以直接梭到这个结果(官网到这里是乱码,笑,猜猜我卡哪里了QAQ,到这里基本也就出了(脸黑),所以说要更新啊!这里其实本身也没啥难的,主要记录一下有关base65536这个东西,确实有(每天一点没什么用的小知识)(网页版好像识别有问题,搬了官网的最新版本本地一把梭)原创 2024-12-13 13:45:32 · 291 阅读 · 0 评论