- 博客(6)
- 收藏
- 关注
原创 pwndbg如何更改字体的颜色(保姆级教程)
真是不容易啊,我在各大搜索引擎找如何改pwndbg的输出颜色的内容,没找到一个合适的,最后还是自己看源码改的,嗯,看来看源码是一个好习惯。好了,我就不和大家说我的踩坑历程了,直接上吧。
2024-05-23 00:40:47 168
原创 某不知名ctfer选手的第三周周报
之前忘记和大家说了,就是在第二周周报的时候写了一个神秘的一题目,heap_uaf1和heap_uaf2忘记和你们说libc的版本和攻击原理了,其实这点在打堆题目的时候是很重要,之前我周报写的那个神秘的一题目就是打的glibc2.27的Tcache,那么现在我们来打一下fastbin这种题和Tcache的区别就是能改的少很多,和多了一个对size的检查机制。然后其他的利用手段都是和Tcache是差不多的,OK,下次给你们讲offbyone和offbynull。
2024-05-22 01:33:45 1135
原创 某不知名ctfer选手的第二周周报和XYCTF部分题解
free()函数一个hook也就是__free_hook,当在执行free函数的时候,会先检查有没有hook,如果不为0,那么在free(i)时就会把__free_hook作为函数指针调用,这时rdi会是原本要free的堆块指针,那么聪明的人已经能想到怎么攻击了,没错就是把__free_hook改成system,再把要free的堆块填入字符串,那么在free这个堆块时,就可以执行system("/bin/sh")了。那么问题来了,,这个固定大小为0xc的堆块保存的是什么内容,执行的是什么功能呢?
2024-04-28 23:29:29 803 1
原创 某不知名ctfer选手的第一周周报
不知道你们是不是有时候会遇到这种情况,你们可能是想对%6$p对应的地方写值,但是这个它是对指针进行操作的,那么%6$p对应的地方,也就是rsp对应的地方它的值是0x1,可能我们的意是想把通过%255c%6$n把0x1改成我们需要的值,但是格式化字符串会把0x1解析为一个地址,那么我们对0x1这个地址写值,当然会不可避免的出错,所以我们要想办法把一个指针指向rsp的位置,那么就可以对rsp保存的指针保存里面的值进行修改了。直接让我们的编译器模拟环境,然后就可以通过c语言代码模拟生成的v5的值,就可以了。
2024-04-22 00:41:28 866 3
原创 pwn入门-buu第二页题解(32道)(持续更新中)
通过控制返回地址来执行程序执行流的变化,也即是说我们并不是在执行我们写入在bss段的代码,因为真正的代码不是写作bss段的,应该位于text段。OK那我们接着讲,我们可以在s的地址里写入ret2libc的代码,然后执行它,泄露libc的基地址后再跳转回来,再用one_gadget来getshell,之前已经写过一道栈迁移的题目了,所以在这里就不多加赘述了。由代码易知,这个函数的功能是先搜索flag.txt文件,如果找到了则打印出来,如果没找到则退出程序,再看一下vuln函数里面有什么。
2024-03-21 13:08:43 932 2
原创 pwn入门-buu刷题第一页笔记(32道)(更新完毕,下一章见)
可以发现我们输入I之后被替换成了you,那么根据这个特性,本来只能输入32个字符的fget函数,我们只要输入适当的I,再构造合适的payload,那么在执行这个strcpy(s, v0)函数时就可以发生栈溢出。这个函数的目的是打开名为 "flag.txt" 的文件,从该文件中读取最多 45 个字符,并将结果存储在 fl4g 数组中。寒假做过的,现在可能有点忘了,写一下题解的同时巩固一下自己,同时供各位正在入门pwn的师傅参考一下,写的不好的地方希望有师傅多多指教,第一次写博客,写的不好的地方还请见谅.
2024-03-10 10:01:05 1062 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人