【CTFd 二次开发】解题播报机器人 V2
本文基于 CTFd Version 3.4.3 开发,可能存在源码不相同的情况,阅读时请注意文章时效性。 更新内容 实现CTFd创建新题目的播报,且仅在题目状态由hidden转为visible时播报 实现题目信息更新时,进行播报 前端页面修改appearance.html打开CTFd/CTFd/themes/admin/templates/configs/appearance.html,在上次更新的基础上增加题目创建播报文案,和题目信息更新播报文案接口。这里直接放出完 ...
i春秋春季赛-勇者巅峰-chunqiuIOT
前言这是今年上半年比赛的一道题目,那个时候才刚刚接触堆,栈也不是很熟。打开程序基本就放弃了,前一段时间复现了几个IOT相关的CVE,借此契机顺便看看几个月前自己放弃的那道题。有一说一,这道题的逆向部分还是很头疼的,逆了一个下午+一个早上才看完程序逻辑—-套皮堆题罢了。 我新建了一个库,用于存放各种比赛的题目,我博客内WP涉及的题目基本都能找到,链接:PWNchanllenge/chunzhiIot at main · Loora1N/PWNchanlle ...
【祥云杯2022】PWN-WriteUp-protocol
前言第一次见到google protobuf类型的题目,虽然是到签到题,但还是学到了一些新的东西 逆向分析首先导入文件,当我看到左侧密密麻麻的无名函数就感受到了一丝不对劲 先运行一下程序,发现输出了一个Login: 通过这个字符串定位到主函数位置 基本可以确定是去掉符号表了,这样直接逆向显然不太行。先看看程序编译的环境是什么,然后重新导入一个sig 成功确定版本Ubuntu 9.4.0-1ubuntu1~20.04.1,这个版本的libc应该是2.31,找一个对应的 ...
适用多版本libc的pwn-base
前言由于经常要在校内的CTFd平台上题,不使用pwn-base的构建方式会使得镜像体积过大,浪费许多服务器的存储空间。但使用pwn-base的情况下,不同题目libc要求不同,又需要构建多个pwn-base环境,过于麻烦。因而创建了这个可根据需求自行更换libc版本的pwn-base,有需要可以自己下载源码更改,链接在下方: docker:loora1n/Ubuntu2.35 链接:pwnbase/Ubuntu2.35 at main · Loora1N ...
【IO_FILE】House of kiwi
前言 参考博客如下: 从PWN题NULL_FXCK中学到的glibc知识 House OF Kiwi CTF的Pwn题里面,通常就会遇到一些加了沙盒的题目,这种加沙盒的题目,在2.29之后的堆题中,通常为以下两种方式 劫持__free_hook,利用特定的gadget,将栈进行迁移 劫持__malloc_hook为setcontext+61的gadget,以及劫持IO_list_all单链表中的指针在exit结束中,在_IO_cleanup函数会进行缓冲区的刷新,从而读取 ...
vscode使用pwntools代码高亮出错
vscode在使用pwntools的send系列函数时,会出现高亮错误的情况,目前最好的解决办法时对pwntools源码进行更改 右键send函数,选择Go to Definition,打开pwntools源码 ctrl+F搜索send_raw函数 把函数末尾的raise EOFError('Not implemented')更换成raise NotImplementedError()既可 ...
【how2heap】 botcake,einherjar,lore
本系列将针对glibc2.31及glibc2.35两个版本进行讨论,其他版本可以根据特性进行类推,建议先对各种堆块的基本特性和数据结构做已了解之后进行学习。 house_of_botcakehouse_of_botcake利用的是块的分割,使得只存在uaf漏洞的前提下实现堆块的溢出,达到获取任意地址的目的,下面我们用how2heap中的例子进行理解。 #include <stdio.h> #include <stdlib.h> #include & ...
Kernel-pwnbase详解
参加starnewctf week4后,想要复现一道kernel的题。网上基本找不到Kernel-pwn的base,因此做了这个pwnbase用于在ctfd上提供动态kernel题目。base下载地址kernelbase DockfileFROM ubuntu:20.04 RUN sed -i "s/http:\/\/archive.ubuntu.com/http:\/\/mirrors.tuna.tsinghua.edu.cn/g" /etc/ap ...
NewStarCTF Week4 PWN WP
前言 由于知道这个比赛比较晚,正式参与比赛是第四周的周三晚上,还差一道堆🐎,没有完成AK(但是拿了四个一血也好爽)。最后一题未解主要原因确实是自己在_IO_File相关利用了解不足,赛后找夜悠师傅拿到了exp,真的好感谢🌹 Canary比较简单的一道题,等我开始做题的时候已经有4个解了 expfrom pwn import * io = process('./pwn') # io = remote('node4.buuoj.cn',2 ...
【CTFd 二次开发】解题播报机器人 V1
本文基于 CTFd Version 3.4.3 开发,可能存在源码不相同的情况,阅读时请注意文章时效性。机器人会一直更新,后续应该会有一二三血播报等更详尽的功能 注:本文不做机器人相关代码更改,直接利用nonebot自带接口实现 前端页面修改config.html打开CTFd/CTFd/themes/admin/templates/config.html,更改左侧栏目标题 apperance.html打开CTFd/CTFd/themes/admin/templates/ ...