![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PWN
文章平均质量分 71
Nq0inaen
这个作者很懒,什么都没留下…
展开
-
2022安洵杯babybf
Brainfuck原创 2022-11-30 17:16:09 · 461 阅读 · 1 评论 -
2022NewStarCTF pwn大部分题解
今年9~10月的比赛,题目从易到难,知识面广,还是很不错的,复现一下这比赛的pwn。原创 2022-11-18 16:17:48 · 1802 阅读 · 0 评论 -
2021 祥云杯PassWordBox_FreeVersion
2021 祥云杯PassWordBox_FreeVersion复现原创 2022-10-21 19:37:29 · 569 阅读 · 0 评论 -
2021祥云杯PassWordBox_ProVersion
2021祥云杯PassWordBox_ProVersion复现原创 2022-10-21 12:35:50 · 511 阅读 · 0 评论 -
2021祥云杯JigSaw‘sCage(有限制的shellcode)
2021祥云杯JigSAW复现原创 2022-10-19 19:28:17 · 190 阅读 · 0 评论 -
2021湖湘杯house of emma
2021湖湘杯house of emma复现原创 2022-10-18 22:06:03 · 442 阅读 · 0 评论 -
[OGeek2019 Final]OVM(简易虚拟机逃逸)
vmpwn入门原创 2022-10-16 23:35:16 · 748 阅读 · 0 评论 -
how2heap2.31学习(4)
how2heaplibc2.31剩余的部分原创 2022-10-14 18:26:56 · 581 阅读 · 0 评论 -
house of cat 学习
house of cat的利用链学习原创 2022-10-13 13:43:07 · 1209 阅读 · 0 评论 -
ctf比赛文件下载网站
ctf比赛文件下载原创 2022-10-03 12:33:33 · 1058 阅读 · 0 评论 -
CISCN2021pwn pwny(数组越界,劫持exit_hook)
CISCN2021pwn pwny(数组越界,劫持exit_hook)原创 2022-10-03 11:01:52 · 1168 阅读 · 0 评论 -
CISCN2021pwn lonelywolf(uaf,控制0x250tcache头)
复现CISCN2021pwn lonelywolf原创 2022-10-02 20:28:46 · 203 阅读 · 0 评论 -
how2heap2.31学习(3)
how2heaplibc2.31的tcache部分原创 2022-10-02 10:54:28 · 348 阅读 · 0 评论 -
how2heap2.31学习(2)
how2heaplibc2.31的house部分原创 2022-10-01 16:25:10 · 1033 阅读 · 0 评论 -
how2heap2.31学习(1)
how2heap里的libc2.31的fastbin部分原创 2022-09-30 20:37:09 · 617 阅读 · 0 评论 -
hitcon_ctf_2019_one_punch(libc2.29 tcache tashing unlink)
libc2.29 tcache tashing unlink原创 2022-09-30 13:58:49 · 957 阅读 · 0 评论 -
[2020 新春红包题]3(libc2.29 tcache tashing unlink )
libc2.29 tcache tashing unlink原创 2022-09-29 15:16:07 · 1046 阅读 · 3 评论 -
用patchelf改程序后在exp中用gdb.attach()调试堆栈
用patchelf改程序后在exp中用gdb.attach()调试堆栈原创 2022-09-28 23:48:45 · 1106 阅读 · 3 评论 -
NewStarCTFWEEK2 pwn题解
NewStarCTFWEEK2uint32 and ret:shellcode-revenge:砍一刀:buffer-flyuint32 and ret:就是个负数转无符号会变为一个很大的数,就能溢出,然后太大也不行read不了,找一下64位无符号int是多少,然后对应减掉一点,用gdb调试一下就知道了,还有就是用ret调一下from pwn import *local_file = './uint'local_libc = '/lib/x86_64-linux-gnu/libc.so.6'原创 2022-09-27 10:17:05 · 725 阅读 · 0 评论 -
NewStarCTFWEEK1部分题解
NewStarCTFWEEK1原创 2022-09-26 18:08:21 · 940 阅读 · 0 评论 -
2022DASCTF X SU 三月春季挑战赛checkin(栈迁移,ret2dl)
ret2dl的复习原创 2022-09-26 18:04:48 · 398 阅读 · 0 评论 -
GO-MAZE-v4(go语言,栈溢出,orw)
浙江省第五届大学生网络与信息安全竞赛决赛的一道pwn原创 2022-09-25 11:38:44 · 606 阅读 · 0 评论 -
ret2_dl_runtime_resolve学习
ret2_dl_runtime_resolve原创 2022-09-23 21:11:19 · 326 阅读 · 0 评论 -
0CTF_2016_warmup(alarm在rop中控制eax,orw)
alarm妙用原创 2022-09-20 20:17:21 · 189 阅读 · 0 评论 -
qctf_2018_dice_game,xm_2019_awd_pwn2
qctf_2018_dice_game(溢出控制其他变量),xm_2019_awd_pwn2(tcache doublefree)原创 2022-09-20 16:24:30 · 204 阅读 · 0 评论 -
shanghai2018_baby_arm,jarvisoj_typo(armrop)
两道armrop原创 2022-09-20 16:17:36 · 185 阅读 · 0 评论 -
pwnlib.exception.PwnlibException: Could not find ‘as‘ installed for ContextType报错解决
做arm架构下的pwn题某个报错原创 2022-09-20 12:15:01 · 1815 阅读 · 2 评论 -
babyheap(uaf ,绕过tcache doublefree检测)
浙江省第五届大学生网络与信息安全竞赛预赛pwn原创 2022-09-18 10:09:14 · 1069 阅读 · 0 评论 -
x_nuca_2018_offbyone2(off by null,unlink造成doublefree)
x_nuca_2018_offbyone2:在第七页挑了个题目做,好像不是很难检查一下,got表可写漏洞分析:有个off by null这题还有输出函数,挺好做的利用思路:1.利用off by null 造成unlink使指针数组中,由两个指针指向同一块地方造成doublefree,我们再顺便泄露了libc2.劫持free_hook为system,释放填有binsh的那个chunk就getshell了exp:from pwn import *#from LibcSearcher i原创 2021-11-19 19:37:56 · 3210 阅读 · 0 评论 -
picoctf_2018_echooo(fmt)
picoctf_2018_echooo这题还是蛮有意思的程序分析:它已经读取flag在栈上了,我们用格式字符串泄露出来flag就好要写个脚本转换下,倒着组合一下exp:from pwn import*#r=process('./PicoCTF_2018_echooo')r=remote('node4.buuoj.cn',29996)offest=11+(0x8c-0x4c)/4print offestflag=''for i in range(11): payload='原创 2021-11-19 13:04:08 · 346 阅读 · 0 评论 -
sctf_2019_easy_heap(off by null,unlink造成doublefree)
sctf_2019_easy_heap:保护全开程序分析:给我们mmap了一段可读可写可执行的区域,还告诉了我们地址add里告诉了我们堆地址其他都挺常规的,delete也释放干净了漏洞分析:有个off by null利用思路:1.利用漏洞off-by-null造成unlink合并,再申请回来,指针数组里就有两个指针指向同一块地方,我们delete两次就造成了doublefree2.我们用doublefree往mmap的地方写shellcode3.再用off-by-null造成unl原创 2021-11-18 22:32:30 · 452 阅读 · 0 评论 -
SWPUCTF_2019_p1KkHeap(tcache表头攻击,uaf,ORW)
SWPUCTF_2019_p1KkHeap:保护全开程序分析:开了沙盒我们看一下,可以看到禁用了execve,我们只能用orw组合读取flag在0x6666000的地方给了我们一块可读可写可执行的区域还有一些小限制,只能实行0x12次循环free只能3次malloc最大0x100,不让我们直接申请0x410能free到unsortbin漏洞分析:显然有个uaf大致思路:1.先利用uaf,泄露堆地址2.doublefree后申请三次,让tcache_bin中的index改到原创 2021-11-18 14:07:24 · 542 阅读 · 0 评论 -
de1ctf_2019_weapon(IO_leak,doublefree)
de1ctf_2019_weapon:保护全开原创 2021-11-17 16:49:09 · 449 阅读 · 0 评论 -
hgame2018_flag_server
hgame2018_flag_server:漏洞分析:输入负数就能跳过长度判断自定义了个输入函数,跟进去看a2是负数,这判断条件永远成立,造成任意长度输入我们改到变量v10为非零值就能cat flag了exp:原创 2021-11-16 18:07:26 · 380 阅读 · 0 评论 -
houseoforange_hitcon_2016(unsortbin attack,fsop)
houseoforange_hitcon_2016:很经典的一道题目,checsec一下,保护全开程序分析:这题最主要就是没有free漏洞分析:edit里的length和add里的length没有联系,我们可以造成堆溢出大致思路:1.释放到unsortbin中,泄露libc_base和heap_addr:利用堆溢出,改Top_chunk_size为一个较小的值,我们再申请一个大于Top_chunk_size的chunk的话,系统会用sysmalloc来分配堆,如果符合sysmalloc原创 2021-11-15 22:44:15 · 455 阅读 · 0 评论 -
gyctf_2020_document(uaf)
gyctf_2020_document:保护全开漏洞分析:delete函数里指针未清零大致思路:这题限制了add时chunk的size,为0x8和0x80,edit时只能从+0x10处改0x70个字符1.先add一个chunk,在add一个chunk,这个chunk里的name填/bin/sh\x00(这时0x8chunk中存有指向binsh地址的指针了),我们释放第一个chunk,由于0x80大小,释放到unsortbin中,我们show,就能泄露libc2.我们接下来的目的是控制申请原创 2021-11-14 19:32:22 · 998 阅读 · 0 评论 -
gyctf_2020_some_thing_interesting(fmt泄露libc,doublefree)
gyctf_2020_some_thing_interesting:保护全开漏洞分析:字符串只比较到第14个,还有5个我们可以任意填这里有个格式化字符串漏洞指针未清零漏洞利用:gbd调试可以看到偏移的地址指向啥,例如偏移17,指向__libc_start_main+240,我们靠此泄露libc再利用doublefree,分配chunk到malloc_hook-0x23中,改malloc_hook为og去getshellexp:这题free时会释放两个堆,甚至帮我们绕过doubl原创 2021-11-13 16:38:31 · 437 阅读 · 0 评论 -
ciscn_2019_sw_1(fmt劫持fini_array为main,获得一次循环)
ciscn_2019_sw_1:主要参考这位师傅:https://www.cnblogs.com/LynneHuan/p/14660529.html#%E7%9F%A5%E8%AF%86%E7%82%B9先引用下:当RELRO保护为NO RELRO的时候,init.array、fini.array、got.plt均可读可写;为PARTIAL RELRO的时候,ini.array、fini.array可读不可写,got.plt可读可写;为FULL RELRO时,init.array原创 2021-11-13 12:50:59 · 582 阅读 · 0 评论 -
qctf2018_stack2(数组越界,偏移寻找)
qctf2018_stack2:程序分析:漏洞出现在change这里,没有对v5作边界检查,我们能造成越界,直接读数到ret地址后门函数:两个小trick:1.我们都会以为偏移是0x70+4,而实际却是0x84跟着这位师傅的文章调试:https://zhuanlan.zhihu.com/p/301091515首先ida找到首次出现v13的地方,可以看到在for循环里我们接着看这部分的Text view断点下在0x80486ae,得到v13真实地址为0xffffd028继续调原创 2021-11-12 18:39:27 · 754 阅读 · 0 评论 -
ciscn_2019_final_5(临界条件错误,劫持GOT)
ciscn_2019_final_5:got表可写,pie没开程序分析:主界面:add函数:delete函数:由于一般地址都会16位对齐,这里的free用按位与取前15位,最后一位为0其实也没啥问题edit函数:和delete,都是取最后一位为下标漏洞分析:漏洞出现在add函数里的index我们能取0x10,即(0001 0000)而它如果与倒数第五位为0的heap_ptr按位与的话会导致存进heap_list的地址变大0x10例:我们申请第一个堆的地址最后三位一般为0x原创 2021-11-11 21:58:11 · 642 阅读 · 0 评论