- 博客(68)
- 问答 (1)
- 收藏
- 关注

原创 PWN学习总结(不断完善中)(有道云笔记)
学习路线pwn一些概念理解王爽汇编学习笔记DOS-BOX及编译工具–百度网盘 提取码: ajbalinux知识学习(CTF主要考察linux环境下的漏洞利用)—菜鸟教程nala包管理命令(个人感觉比apt好用)python知识学习(写exp用)----菜鸟教程gcc编译过程(了解一下)vim用法(好难,正在学)pacvim游戏ctf-wiki-pwn漏洞利用总结图刷题网站BUUCTFBUUCTF—libc源码攻防世界pwn环境搭建借用另一个博主的pwn环境配置文章再加上几个
2022-04-26 22:50:11
3521
1
原创 堆技巧 数组反向越界泄露地址
痛苦痛苦痛苦,调了半天才找到数组起始地址,还是自己太菜了,好好记录一下这题题目给了libc,2.31的题嗯,可以考虑覆盖got表或者hook函数打开ida发现是c++的题,认真分析一下。
2022-09-02 11:11:29
346
原创 Tcache Stashing Unlink Attack(House of Lore Attack)
Tcache Stashing Unlink Attack
2022-08-11 23:22:45
634
1
原创 House of storm
结合了unsorted_bin_attack和Largebin_attack的攻击技术,实现任意地址分配chunk,任意地址写。
2022-08-05 23:21:42
879
原创 House of einherjar
释放堆块时,unlink后向合并堆块,强制使得malloc返回一个几乎任意地址的chunk。free函数中的后向合并核心操作如下后向合并时,新的chunk的位置取决于chunk_at_offset(p,-((long)prevsize))
2022-07-31 15:19:50
506
原创 pwn刷题num48----syscall + ret2csu
BUUCTF-PWN-ciscn_2019_s_3首先查保护–>看链接类型–>赋予程序可执行权限–>试运行(这里为了省事,自己写了一个小shell脚本)64位程序,小端序开启部分RELRO-----got表可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址动态链接ida一下看一下主函数 这里sys_read和sys_write读取的字符串大小都大于buf的大小,存在栈溢出syscall系统
2022-05-04 13:59:33
1022
原创 pwn刷题num47---off by one 修改size大小,造成堆块重叠,控制chunk内容指针,泄露函数真实地址,修改got表,调用system
BUUCTF-PWN-hitcontraining_heapcreator首先查保护–>看链接类型–>赋予程序可执行权限–>试运行64位程序,小端序开启部分RELRO-----got表仍可写开启canary保护-----栈溢出需绕过canary开启NX保护-----堆栈不可执行未开启PIE----函数地址为真实地址动态链接运行一下试试功能基本上就是1. 创建堆2. 编辑堆 3.显示堆 4.删除堆 5.退出ida看一下伪代码主函数就是根据选择调用不
2022-05-04 11:45:26
541
原创 pwn刷题num46----fast bin double free (控制free chunk的fd指针指向,栈上伪造的fake chunk,修改栈上变量值)
BUUCTF-PWN-metasequoia_2020_samsara首先查保护–>看链接类型–>赋予程序可执行权限–>试运行保护全开动态链接英文意思打败魔龙后,你变成了魔龙…… 1. 抓捕一个人 2. 吃掉一个人 3. 煮一个人 4. 找到你的巢穴 5. 转移到另一个王国 6. 自杀ida看一下伪代码主函数还有一个菜单函数观察分析main函数,switch里case1每次申请chunk大小为0x20(mem为0x10),case
2022-05-03 18:01:59
1111
1
原创 pwn刷题num45----fast fit
github题目链接这道题下载下来后需要先用patchel使用低版本的libc(我这里用的是libc2.23)加载运行,具体怎么用?看这还有这flag也是自己设置在/pwn/flag里fast fit思想如果一个chunk是空闲的并且足够大(大于用户申请的chunk大小),那么申请chunk时,就会选择这个空闲的chunk首先查保护–>看链接类型–>赋予程序可执行权限–>试运行64位程序,小端序开启RELRO-----got表不可写开启canary保护-----栈溢出需
2022-05-03 14:03:35
263
原创 pwn刷题num44----fast fit and UAF
题目链接–本地程序 fast fit思想如果一个chunk是空闲的并且足够大(大于用户申请的chunk大小),那么申请chunk时,就会选择这个空闲的chunk首先查保护–>看链接类型–>赋予程序可执行权限–>试运行32位程序,小端序开启部分RELRO-----got表可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址动态链接运行一下四种选择,添加一个note,删除一个note,输出一个not
2022-05-03 13:15:55
878
原创 pwn刷题num43---栈迁移
BUUCTF-PWN-ciscn_2019_es_2首先查保护–>看链接类型–>赋予程序可执行权限–>试运行32位程序,小端序开启部分RELRO-----got表可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址动态链接ida一下看一下伪代码可以看到read函数读入0x30字节给s,可是s是0x28字节大小,只相差0x8字节,只能覆盖ebp和函数返回地址,而程序中无直接getshell的函数,程序
2022-05-03 10:32:38
759
原创 pwn刷题num42---ret2libc(不容易)
BUUCTF-PWN-pwn2_sctf_2016首先查保护–>看链接类型–>赋予程序可执行权限–>试运行32位程序,小端序开启部分RELRO-----got表可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址动态链接atoi会将一个字符串并转化为有符号整形(signed int),而我们只需要输入-1,即可绕过if(v2>32),使read函数读入非常大的数,造成栈溢出,查看一下程序,发
2022-05-02 19:18:05
1191
原创 pwn刷题num41---格式化字符串漏洞任意地址修改
BUUCTF-PWN-jarvisoj_fm首先查保护–>看链接类型–>赋予程序可执行权限–>试运行32位程序,小端序开启部分RELRO-----got表可写开启canary保护-----栈溢出需要绕过canary开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址动态链接ida看伪代码简单的代码,可知只要x=4就可获得shell思路用read函数输入一个字符串,之后printf格式化字符串漏洞实现任意地址修改,将x的值改为4先找一下输入
2022-05-02 17:49:49
649
原创 pwn刷题num40----ret2libc
BUUCTF-PWN-bjdctf_2020_babyrop首先查保护–>看链接类型–>赋予程序可执行权限–>试运行64位程序,小端序开启部分RELRO-----got表可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址动态链接ida一下看一下伪代码思路read函数明显的栈溢出,read函数输入0x64字节,而buf只有0x20字节,找一下发现函数没有后门函数,但是有puts函数,可以用其泄
2022-05-02 17:42:34
364
原创 pwn刷题num39----整数溢出
BUUCTF-PWN-bjdctf_2020_babyrop首先查保护–>看链接类型–>赋予程序可执行权限–>试运行64位程序,小端序开启部分RELRO-----got表可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址动态链接ida看一下主函数char buf; // [rsp+0h] [rbp-10h].........................if ( (signed int
2022-05-02 16:58:12
574
原创 pwn刷题num38---ret2libc
BUUCTF-PWN-铁人三项(第五赛区)_2018_rop首先查保护–>看链接类型–>赋予程序可执行权限–>试运行32位程序,小端序开启部分RELRO-----got表可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址动态链接ida看源码read函数输入0x100字节,而buf只有0x88字节,存在栈溢出buf距离返回地址0x88+0x4字节观察程序没有后门函数,但存在write函数,
2022-05-02 16:44:11
360
原创 pwn刷题num37---栈溢出 + strcpy函数溢出
BUUCTF-PWN-ciscn_2019_ne_5首先查保护–>看链接类型–>赋予程序可执行权限–>试运行32位程序,小端序开启部分RELRO-----got表可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址动态链接程序运行后让我们输入密码,ida一下看一下主函数看来要想进行下面的操作,必须输入password:administratorif ( strcmp(s1, “administr
2022-04-29 22:51:54
992
原创 pwn刷题num36----运行即可获得shell
BUUCTF-PWN-others_shellcode首先查保护–>看链接类型–>赋予程序可执行权限–>试运行32位程序,小端序开启部分RELRO-----got表可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行开启PIE-----程序内存地址随机化动态链接程序运行后发现一个,和我们终端命令行的,和我们终端命令行的,和我们终端命令行的很像,ls一下,直接列举了我的当前目录下的文件,说明这个题运行即可获得shell...
2022-04-29 22:03:32
165
原创 pwn刷题num35----ret2shellcode
BUUCTF-PWN-ciscn_2019_n_5首先查保护–>看链接类型–>赋予程序可执行权限–>试运行64位程序,小端序开启部分RELRO-----got表可写未开启canary保护-----存在栈溢出未开启NX保护-----堆栈可执行,可注入shellcode未开启PIE-----程序地址为真实地址动态链接运行程序后,先是让我们输入一个name,之后让我们输入一些信息,什么也看不出来ida一下注意两个函数 read(0, name, 0x64uLL);
2022-04-29 21:56:47
361
原创 pwn刷题num34---mprotect修改内存权限 + ret2shellcode
BUUCTF-PWN-not_the_same_3dsctf_2016首先查保护–>看链接类型–>赋予程序可执行权限–>试运行32位程序,小端序开启部分RELRO-----got表可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址静态链接ida一下gets函数明显的栈溢出,v4只有0x2D大小,gets函数对输入的字符串没有大小限制看一下栈区v4距离返回地址(r所在位置)0x2d个字节找
2022-04-28 19:11:52
2234
1
原创 pwn刷题num33---ret2text
BUUCTF-PWN- [HarekazeCTF2019]baby_rop首先查保护–>看链接类型–>赋予程序可执行权限–>试运行
2022-04-28 18:50:44
363
原创 pwn刷题num32----ret2text
BUUCTF-PWN-jarvisoj_level2_x64首先查保护–>看链接类型–>赋予程序可执行权限–>试运行64位程序,小端序未开启RELRO-----got表可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址动态链接ida一下看一下主函数看一下 vulnerable_function();函数栈溢出,read函数读入0x200字节放在buf处,而buf只有0x80字节大小,可以覆盖返
2022-04-27 21:16:38
490
原创 pwn刷题num31----ret2libc + 栈平衡
BUUCTF-PWN-ciscn_2019_en_2首先查保护–>看链接类型–>赋予程序可执行权限–>试运行64位程序,小端序开启部分RELRO-----got表仍可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址动态链接好熟悉,遇到原题了见我另一篇文章pwn刷题num24----ret2libc + 栈平衡...
2022-04-27 21:04:47
252
原创 pwn刷题num30----栈溢出修改栈上参数 或 mprotect修改内存权限 + ret2shellcode
BUUCTF-PWN-get_started_3dsctf_2016首先查保护–>看链接类型–>赋予程序可执行权限–>试运行32位程序,小端序开启部分RELRO-----got表仍可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址静态链接Qual a palavrinha magica?中文意思是什么是神奇的词?很奇怪,ida看一下伪代码栈溢出,gets函数输入字符串给v4,未限制输入的
2022-04-27 20:49:33
2179
1
原创 pwn刷题num29-----整数溢出
BUUCTF-PWN-bjdctf_2020_babystack首先查保护–>看链接类型–>赋予程序可执行权限–>试运行64位程序,小端序开启部分RELRO-----got表仍可写未开启canary保护-----存在栈溢出开启NX保护-----堆栈不可执行未开启PIE-----程序地址为真实地址动态链接程序先让我们输入name的长度,之后又让我们输入一个nameida一下看一下主函数观察发现nbytes存放着我们输入的name的大小,之后又用read函数输入nby
2022-04-27 18:52:45
562
空空如也
c语言,打印m个学生n门课的平均成绩和总分,我不知道哪错了,请大家帮帮忙
2021-11-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人