一点感想
好久没有写过这样的感想文章了,一切要从XCTF说起
2024年,学长在XCTF总决赛夺得总冠军,当时看到朋友圈的照片,激动的给每个班长发了祝福与膜拜,我想一下哈,当时我是大二下学期吧,刚刚开始懵懵懂懂的接触CTF,那时的CTF对我来说,是一个神圣而遥不可及的东西,我想着,国赛的总决赛,强网杯、XCTF,那得是多难的路啊,从大一下时,看到一个研一学长AWD比赛时,手搓了3000行的C代码EXP,我当时震惊的想着,我什么时候能有这样的水平?
当然,我成长的这几年,遇上了一个新的东西,它叫大语言模型,从22年gpt横空出世,到24年那个时候,他们好像还没有多么的聪明,甚至一道简单几十行的python编程题,也无法完成,但是它对我来说的好处,是在慢慢补足我的编程弱项,能开始帮我写一些代码和exp了。
25年的一年,是成长的一年,打了很多比赛,虽然有遗憾,但也有收获。这一年,学长们没有再打XCTF联赛,也成了这几年唯一一次缺席总决赛。
到25年底,11月还是12月?我记不清了,RCTF的前夕,我看到第一场开赛的通知,心里那个沉寂已久的声音突然冲击到我耳畔,“我想试试能不能打进XCTF总决赛”,想看看能不能在毕业分别前,和几个Pwn13ss并肩多年的伙伴站上最终的舞台,也算是给未来奔赴四海的我们一个交代和收尾,我把那条公众号转发到我们的小群,我说我想试试,接着我又转发给了教练,他是这样说的
教练非常支持我,立马让我拉了群,我们创建了一个新的lz雷泽战队,拉了大三大四的同学组了战队。
3天后,RCTF开赛,说实话,我们没有报太大的希望,b3的老学长们要忙于自己的科研,没有时间也没有必要来再做一下两年前就夺冠了的比赛。我们七八个同学,鏖战了48小时,在最终,拿到了第18名的名次,这里面,甚至还拿到了几道前三血的题目。结束后,我们很开心,我盯着那个排行榜看了好久,虽然只是第一场,我知道,我们是有希望的,我们对着历年的排行榜计算着最低的入围位次,算上直通战队和一些主办战队,我们必须最终保证在15名之内,才能够稳定入围总决赛。
所以,我们的下一次,需要更加拼命。
不过,这个时候,也就是25年的11月中,应该还是claude4.5的时期,它并没有展现出碾压和绝杀的状态,以我这个Web手而言,我还是需要开着yakit,浏览器抓包,对着附件的代码分析,在AI的帮助下,找漏洞点,然后再用yakit一点点的调试着payload。Re手呢,最多只是靠着idapromcp,在一点点的调着,Pwn手的手动程度更大,AI这个时候还不太能很好的持续与gdb也等交互。整体来看,对Web的辅助最大,但是也不至于完全自主的获得flag,人的主观引导更加重要。从我们最终的WP也能看出,Web题是yakit、浏览器的截图,exp是一个个零散的小脚本,re和pwn题就更不用说了,全是密密麻麻一步步的IDA和pwndbg截图,最终曲曲折折艰难获得flag。这个时候的我,只是在想,AI发展的真快,已经能帮助我这么多的,详细再过一年两年,二进制Pwn题这种汇编或者说是机器语言,也能很好的做出来了。
两个月后,哈工大命题LilacCTF,依旧是我们这八九个大三大四的同学,鏖战全程,不过这次我们成绩更出色一些,拿到了第9名,这次的时候,依旧是claude4.5模型,不过好像是出了opus?但是也是不太能做Web题目的,比如那个PHP版本源码泄露漏洞,它就一直卡在第一步的黑盒,无法进展,而我dirsearch扫了一下没有发现特别的东西,然后看了下yakit的回包哦,确认了PHP版本,就想到了这个一年多前遇到的源码泄露漏洞,翻出当年的WP,在yakit里面调整了一会,成功读到了源码,后面学弟把这个成功获取了flag。Pwn和Re也一样,Pwn手和Re手依旧是一点点调试,AI还不太能做出flag,我们的WP上依旧和RCTF一样,Web是浏览器和Yakit或是Bp的截图,二进制就是IDA和Pwndbg。
这个时候的我,还是单纯的认为,目前AI在XCTF难度上,还是不能完全适配,需要人的辅助,可能编写的Agent会有一些提升。因为赛后听说,有师傅用自己编写的Agent,可以做出大部分赛题,完全自动化,并且国外战队,甚至挂了72个小时做出了唯一解的Pwn。我想的是,这个毕竟是个例,影响不了大局,而且大家也没那么多的Token来烧,效率还是低了点。
But,转折来了,两个月后的SUCTF2026来了。
而在前几天,AI届迎来了新的革命——gpt-5.4与claude4.6。
对我而言,SUCTF2026意味着CTF的全新局面与大换血,不是说赛题的难度和赛制(虽然赛宁确实更新了平台),从我们的感觉来看,赛题难度没有比前两次简单,甚至可以说是变难了,但是,各个战队的解题量,大幅度上升。
但是,“人”的参与却变少了,甚至可以说是完全没有参与,想象一下这个场景,Web手连浏览器都不开了,Yakit、Burpsuite也全程不开了,当Pwn手和Re手不再需要IDA,甚至压缩包都不解包,直接把附件和远程地址丢给claudecode或者codex,然后浅浅的说一句:”帮我获得flag“,然后你开始刷着手机,或者是再开一个又一个终端,全栈出击,甚至为了提高”幸运值“,一道题目也开启了多个终端,并驾齐驱,最恐怖的是,连高难度的Pwn也能在一个晚上挂出来,两天早上起床,学弟都能发现自己的工人又做出了新题目的flag哈哈哈(当然也要归功于XCTF不使用动态容器,环境持续有效,不需要手动延时)。
我也看到命题方的师傅在群里说道“收上来的前20几乎全是AI写的WP”,甚至说看不到人味。确实是这样,因为当我看到我们最终汇总出来的WP,甚至没有几张IDA的截图,没有一张Yakit和浏览器的截图,只有单纯的python自动化脚本或者是curl命令,我也在挣扎,我也在思考,思考自己在做什么。
我其实也在纠结,我这次到底学到了什么呢?我好像只是在AI抽奖池抽奖,我好像并没有自己去深入看任何一题的代码,
当CTF变成了一场赌博,大家给各自的API支付一定的费用,然后像抽奖一样,按照运气随机抽取一个flag。