随笔分类 -  pwn学习

摘要:lonelywolf from pwn import * context.arch = 'amd64' context.log_level='debug' p=process('./pwn') libc=ELF('./libc-2.27.so') #p=remote('124.71.235.219' 阅读全文
posted @ 2021-05-18 19:06 PYozo_free 阅读(148) 评论(0) 推荐(0)
摘要:调试:https://www.dazhuanlan.com/2019/12/08/5dece8fa2689e/ 阅读全文
posted @ 2021-04-15 22:41 PYozo_free 阅读(88) 评论(0) 推荐(0)
摘要:在orw时候,在libc-2.32.so的参数已经从rdi换成了rdx,所以在构造的时候需要在libc里面找一个gadget将rdi里的值,复制到rdx这个gadget偏移在libc_base+0x124990 阅读全文
posted @ 2021-03-31 22:51 PYozo_free 阅读(178) 评论(0) 推荐(0)
摘要:https://bbs.pediy.com/thread-254868.htm https://www.it610.com/article/1295999258679386112.htm 感谢Kr0emer师傅的指点 阅读全文
posted @ 2021-03-24 00:21 PYozo_free 阅读(51) 评论(0) 推荐(0)
摘要:最近分析一个样本,分析了几天遇到瓶颈了,有点自闭,写点题目来缓冲一下 阅读全文
posted @ 2021-03-11 17:46 PYozo_free 阅读(54) 评论(0) 推荐(0)
摘要:漏洞点还挺多的 uaf+off-by-one 通过uaf泄露libc,通过off-by-one达成overlap,来double free劫持free_hook即可 from pwn import * #p=process('./ciscn_2019_n_4') p=remote('node3.bu 阅读全文
posted @ 2021-03-10 22:24 PYozo_free 阅读(223) 评论(0) 推荐(0)
摘要:堆溢出与整数溢出漏洞 一般再libc-2.27.so的库中,如果限制了大小,那么基本上只有两种方法,一种是orange,还有一种就是堆溢出,然后修改size大小为unsorted bin中的大小来leak libc。 由于本题有堆溢出,但限制了堆的大小,所以我们想泄露libc,只能使用后者(因为申请 阅读全文
posted @ 2021-03-10 00:13 PYozo_free 阅读(163) 评论(0) 推荐(0)
摘要:很久没写题目了,所以最近准备重新开始练起来。 该题很考自己对libc的malloc了解,虽然逆过一遍,但还是有些不熟悉比如合并的函数。 不过看了hav1k师傅的博客后,恍然大悟 记录下思路 由于是ubuntu16,而且没有开PIE,所以可以进行unlink 其次由于释放后未变0,所以我们先申请一个小 阅读全文
posted @ 2021-03-09 21:44 PYozo_free 阅读(167) 评论(0) 推荐(0)
摘要:太久没写题目了,今天写一下发现自己越来越菜了 又是一个跟realloc有关的题,一开始注意realloc,后面看了hav1k师傅的博客发现realloc等于free后,立刻恍然大悟了,不然还要看好久,realloc为0时等于free 漏洞利用 由于没有初始化可以利用realloc直接leak lib 阅读全文
posted @ 2021-03-09 01:36 PYozo_free 阅读(113) 评论(0) 推荐(0)
摘要:https://www.cnblogs.com/from-zero/p/13300396.html 阅读全文
posted @ 2021-01-28 21:47 PYozo_free 阅读(118) 评论(0) 推荐(0)
摘要:big_family 看了别人很久的wp,有两种方:一种是fsop、另一种是直接将top chunk给分配到malloc_hook上 top chunk给分配到malloc_hook思路 首先分配若干个fast bin,在释放,由于堆的机制,当申请了一个属于small bin大小时,就会造成fast 阅读全文
posted @ 2021-01-28 03:26 PYozo_free 阅读(112) 评论(0) 推荐(0)
摘要:写了几十道堆题了,但是在写堆题的时候,还是有很多不懂,所以打算自己逆一逆,来搞清楚大部分安全的条件 学习步骤大概是这样的:先看glibc堆内存管理,在自己逆一编,顺带一说,准备开始完结xp的学习和linux网络编程了 我这里借用了以前逆向fopen的函数 结构体介绍 struct malloc_st 阅读全文
posted @ 2021-01-27 19:11 PYozo_free 阅读(841) 评论(0) 推荐(0)
摘要:铁人三项(第五赛区)_2018_breakfast 有uaf,先overlap之后leak libc,在fast bin attack,自己审题没有认真(没必要overlap,由于write和read不是同一个指针,所以直接写got表内容即可完成) from pwn import * #p=proc 阅读全文
posted @ 2021-01-26 21:34 PYozo_free 阅读(263) 评论(0) 推荐(0)
摘要:这个题是heap与stack over相互结合的,第一次写 谢谢ha1vk师傅的博客 问题: 1.要在栈上获取stack地址如何获得? __erviron变量存储了程序的环境变量,所以也有栈的基址可以看看这个师傅的文章 学到的知识 在stack上伪造chunk,所以只要内存有rw权限,岂不是都可以进 阅读全文
posted @ 2021-01-23 22:38 PYozo_free 阅读(234) 评论(0) 推荐(0)
摘要:最近一直在接触通过stdout来leak libc的地址,总结出了一点东西 由于没有show函数,所以我们肯定要把chunk放入unsorted bin中,然后修改低2字节即可指向stdout所指的_IO_FILE结构体 不过我好像看到还有用stderr的,由于没有深入的逆过,所以还不清楚,不过这方 阅读全文
posted @ 2021-01-23 02:01 PYozo_free 阅读(253) 评论(0) 推荐(0)
摘要:题目其实本身不难,但我太菜了,这种基础题不会写,其次有个疑问就是为什么stdout可以泄露libc,还没有逆过这个函数,所以还不是很清楚 思路 由于没有show函数,所以只能通过stdout来leak libc,而这程序的edit函数有overlap,所以我们可以先把一个chunk放入unsorte 阅读全文
posted @ 2021-01-22 02:14 PYozo_free 阅读(307) 评论(0) 推荐(0)
摘要:这道题逆着有点累,不过不难就是简单的堆溢出 不过我edit在自己环境里面弄了好几遍都没有造成堆溢出,然后由于没什么实力,写出去的payload在心里感觉是可以的,结果远程怎么打都没打通,后面还是看了lemon师傅的博客,借用了他的脚本打通,不过不得不说我在打通getshell的堆构造上,还是不如那些 阅读全文
posted @ 2021-01-21 16:03 PYozo_free 阅读(126) 评论(0) 推荐(0)
摘要:一开始忘记注意bss段上的heap与key1和key2的偏移了,所以有点蒙蔽不知道怎么写,然后看了pwnki师傅博客的一点提醒,恍然大悟 思路 通过unlink把指针的值分配到bss段上,从而控制heap里的指针值,在然后将key2和key1修改值,为自己可用 接着劫持free_hook即可gets 阅读全文
posted @ 2021-01-19 22:17 PYozo_free 阅读(185) 评论(0) 推荐(0)
摘要:流程分析 很容易可以看出是格式化字符串漏洞,不过利用方法是先简介修改ebp链,在通过ebp链直接修改返回地址,第一次遇见这种方法 记录一下 思路 由于我们的输入在bss段上,并不会影响到stack上,经过观察后,可以发现栈上有__libc_main可以泄露libc,还有一个ebp链,通过ebp链我们 阅读全文
posted @ 2021-01-19 20:18 PYozo_free 阅读(212) 评论(0) 推荐(0)
摘要:非常有意思的一道题,但这是我第一次写fsop的题,所以几乎都是看wp写的,看的是L.o.W师傅的wp,其次要感谢的文章还有unsorted bin的文章,还有raycp师傅的函数分析,才让我简单的了解了fsop 流程分析 add函数,没什么特别的 edit函数,可以造成堆溢出 show函数 思路 由 阅读全文
posted @ 2021-01-19 03:02 PYozo_free 阅读(182) 评论(0) 推荐(0)