打了打宁波安全,虽然但是或许能拿到线下名额但是不想往那边跑了,一开学各种事情。但是比较难绷的是西湖论剑用了一摸一样的附件,还拿了道二血,还有更难绷的是另一个 pwn 靶机死活打不开导致另一个题目写都写不了
写西湖论剑的时候我一看附件都一模一样,由于一个是 apple 一个 vm 印象还是比较深的:
Regular_apples:
看一下 libc 版本:
IDA 静态分析:main:
add:
size 会存入dword_4060[idx] 这个数组,chunk 地址会放在(_QWORD *)&unk_4140 + idx_1
简单来说 add 就会创建一个 0x500-
2026-08-172026-08-175.8k 字28 分钟
湾区杯 2025 PWN
前言:大概快一个多月没有打过堆风水的题目了,期间或许偶尔碰见那么一两道吧,也都比较简单。国外的比赛经常给一些异构 pwn 或者某些偏于真实的程序,大部分都是篡改指针,然后反复跳转,难点在于读懂程序,最近国内比赛多起来了,开始复现国内的题目发现大部分都是堆风水,然后典型的堆覆盖泄露 libc 然后打 apple2 之类的,感觉长时间不写有点退化了,像湾区杯的 armpwn 也是在写题过程中学到了不少知识。
digtal_bomb:
2.35 版本的 libc,开启了 canary,pie 和 Full RELEO
静态分析:main:我们先进入到 main 函数去看,做一个简单的逆向,之后得出
2026-08-122026-08-122.5k 字13 分钟
西湖论剑 2025 PWN
再过一段时间就是西湖论剑了,复现一下去年的题目看看能不能学到知识。
Vpwn:
2.35 版本的 glibc,开启了 PIE、Canary 和 Full RELEO,看 IDA 发现是 C++类型的菜单题。
12345678910111213141516171819202122232425262728case 1: std::operator<<<std::char_traits<char>>(&std::cout, "Enter the index to edit (0-based): "); std::is
2026-08-102026-08-103.1k 字15 分钟
黄鹤杯 2026 PWN
前言:黄鹤杯中唯一的一道 pwn 题目,最近生了点小病导致学习进程一拖再拖。暑假一直在家躺着也不怎么想学习,但还是感觉自己和高手之间差了很多很多。黄鹤杯是 ai 打出来的,尽管黄鹤杯初赛并不限制 ai 的使用。于是决定赛后复现一下,看看有没有什么能够学到的知识。
这道题目没给 libc,只是单单给了一个 A-C 的二进制文件,先看看吧:
IDA 静态分析:
找到 main 函数简单看了一下:
dest 是 bss 段上的,也就是说最开始会在 dest 存放 ./flag,在 0x20 的位置存放一段字符串,dest+0x40 的地方存一个指针,该指针打印 a1+0x20
2026-08-052026-08-05733 字4 分钟
Lexington Informatics Tournament CTF 2026
前言:一个入门级的国外比赛,有一种很久违的感觉。都是一些简单题,直接用 wsl 写了,懒得开虚拟机了
pwn/long division题目描述:I made a calculator for dividing two 32-bit integers! I made sure that division by 0 doesn’t happen and that the inputs fit in 32-bit integers. Since division only makes numbers smaller, surely it can’t overflow … right?
前言:最近在同学家玩,忙里偷闲打一打 nepctf,纯手搓的 wp,能不能给我个惊喜嘿嘿 ^_^
其实打这场比赛主要是为了学一点新知识,大一结束了,转头发现其实大一也没打过什么有意思的比赛,nep 的口碑一直挺不错的,想着学习学习。开了四个 pwn 两个 re 和一个 web 还有一个 realworld,其中 realworld 和一个 re 是直接让 ai 打得,不得不感叹 ai 确实是比人强得多,感觉除了强之外还有快,让所有 ctfer 在比赛当中为了拿血或高分不得不使用 ai 自动化开题,不过像这种公益性的比赛,我决定在自己学习的方向还是古法,途中也确实借助了大模型给出不少思路,这些思