P64
  • 2025-01-06pwn中的protobuf
    前置知识在gopwn的堆题中,经常会有结构体,在go中这些结构体就是通过protobuf来传递的如果抹除了protobuf的标志,那就只能手撕了,具体可以看CISCN里面的几个例子,如果没有抹除标志,那就可以用pbtk这个工具了实际操作中发现要先让pwn文件的可以正常执行后,再用pbtk,感觉这个有点像
  • 2024-12-25PWN系列-2.27版本利用setcontext实现orw
    PWN系列-2.27版本利用setcontext实现orw知识开启沙箱之后,我们就只能用orw的方式来得到flag。这篇博客主要讲通过劫持__free_hook或者__malloc_hook利用setcontext在libc或者heap上执行rop或者shellcode。在free堆块的时候,rdi会指向堆块,在检测到__free_hook有值的情况下,会跳过
  • 2024-12-14PolarCTF-Pwn(困难)WP
    1、ret2libc前期准备:int__fastcallmain(intargc,constchar**argv,constchar**envp){chars[112];//[rsp+0h][rbp-70h]BYREFsetvbuf(stdin,0LL,2,0LL);setvbuf(stdout,0LL,2,0LL);setvbuf(stderr,0LL,2,0LL);gets(s);puts(s);retu
  • 2024-12-02buildctf pwn
    ez_note有几个功能add,delete,show,editadd按顺序添加节点,且最大只能是0x80delete没有清空指针,有UAF漏洞show输出内容edit,先是输入长度,然后编辑内容,有堆溢出漏洞这个题目的保护全开,最重要的就是泄露libc的地址,unsorted_bin的头地址是位于libc中的,如果我们有一个unsorted_b
  • 2024-11-302024base新生赛week4pwn——ezstack
    首先检查一下保护,发现基本上没有。然后用ida打开发现,就一个gets函数可以利用。由于没开canary,所以这里可以轻松溢出,但是由于程序只调用了没有输出函数,所以没办法直接泄露函数真实地址,打常规的ret2libc。不过好在程序里有csu函数,还可以打ret2csu。不过还是上面那个原因,不能
  • 2024-12-10课程设计如何高效?六款教育团队协作软件在哪?
    在当今数字化飞速发展的时代,教育教培行业正经历着深刻的变革。J人为主的教育教培团队公司,凭借其严谨、有序、注重规划与效率的特质,迫切需要借助先进的可视化团队协作办公软件来优化教学管理流程、提升教学质量以及促进团队沟通协作。本文将为您详细盘点六款适用于教育行业的此类
  • 2024-12-07DeBian系统部署思源笔记
    引言该过程参考于以下文章:思源笔记docker部署解决docker镜像仓库下载慢安装docker检查docker是否安装检查服务器系统内是否安装了docker:docker--version若未安装docker,则显示如下命令:-bash:docker:commandnotfound安装docker操作切换清华镜像源:sudo
  • 2024-11-23计算机渗透测试岗位薪资怎么样,建议学吗?
    前言因人而异看你的技术能力情商等综合能力单看这个岗位还是不错的薪资水平平均薪资:在2024年,渗透测试工程师的平均月薪大约在10K-30K之间,年薪范围则在12W-36W之间。具体薪资水平会受到多种因素的影响,如工作经验、学历背景和技能水平等。薪资变动:与2023年相比,2024年的
  • 2024-10-08NSSCTF(PWN)10
    [HUBUCTF2022新生赛]singout这题是道签到题,直接nc但是catflag得不到flag我们可以用:1catflag2nl${IFS}f*3tacfla*>&24tacf\lag>&25tail./*6tac${IFS}f*7tac$IFS$9f*8tac./*用这些得到flag[LitCTF2023]狠狠的溢出涅~查看发现是64位文件这道
  • 2024-09-17BaseCTF2024 pwn
    [Week1]Ret2textexpfrompwnimport*context(os='linux',arch='amd64',log_level='debug')io=remote("challenge.basectf.fun",32537)#io=process("./Ret2text")ret_addr=0x04011A3payload=(0x20+0
  • 2024-09-17常回家看看之house_of_catWO
    house_of_cat前言:houseofcat这个利用手法和前面提到的houseofkiwi,和houseofemma利用的手法是一个链子,当程序无法通过main函数返回时候,或者程序不能显性调用exit函数的时候,我们可以通过__malloc_assert来刷新IO流,当然这个函数在2.35之后移除了刷新IO流,最后在2.37彻
  • 2024-09-16常回家看看之house_of_cat
    house_of_cat前言:houseofcat这个利用手法和前面提到的houseofkiwi,和houseofemma利用的手法是一个链子,当程序无法通过main函数返回时候,或者程序不能显性调用exit函数的时候,我们可以通过__malloc_assert来刷新IO流,当然这个函数在2.35之后移除了刷新IO流,最后在2.37彻
  • 2024-09-15xyctf2024 pwn
    helloworldchecksec大多保护都开启了main函数int__fastcallmain(intargc,constchar**argv,constchar**envp){charbuf[20];//[rsp+0h][rbp-20h]BYREFinit();printf("%s","pleaseinputyourname:");read(0,buf,0x48uLL);p
  • 2024-09-10常回家看看之house_of_kiwi
    houseofkiwi前言:house_of_kiwi一般是通过触发__malloc_assert来刷新IO流,最后可以劫持程序流或者通过和setcontext来打配合来进行栈迁移来得到flag。我们看看触发的源码#ifIS_IN(libc)#ifndefNDEBUG#define__assert_fail(assertion,file,line,function) \ __ma
  • 2024-09-09栈迁移(详解)
    栈迁移原理栈迁移主要利用了leave_ret这个指令leave返回上级函数时,恢复原本的栈空间leavemovesp,ebppopebpret返回上级函数后,执行上级函数的命令ret等同于popeip(不存在这样的指令esp'''ebpret在函数的先执行到leave指令时,会将ebp处填充的地址pop到ebp中去
  • 2024-09-09羊城杯比赛pwn复现
    title:羊城杯比赛pwn复现date:2024-09-0520:12:19categories:ctf-比赛复现首先推荐这个博客本篇学习的思路来自这个大佬实力有限,只复现出了pstack这一题pstack知识点这个题目是个很经典的栈迁移的题目,因为栈溢出的空间不够,但是常规的栈迁移一般有方法获得一
  • 2024-09-06house of orange
    houseoforange1.针对没有free的堆题目orange部分申请比topchunk的size大的chunk,会将原本的chunk放入unsortedbin中,可以借此泄露地址FSOPio文件结构有chain连接成一个链表形式,这部分,头节点记录在_IO_list_all上,通过unsortedattack或者largebinattack劫持_io_list_all,指向
  • 2024-09-06house of cat
    调用方法调用链1houseofcat调用链__malloc_assert在2.35的glibc中源码如下staticvoid__malloc_assert(constchar*assertion,constchar*file,unsignedintline, constchar*function){(void)__fxprintf(NULL,"%s%s%s:%u:%s%sAssertion`%s'fa