接触 CTF 一周年:关于 AI、比赛和自己的一些反思
前言
一载攻防知浅处, 几番胜负见初心。
恰逢 2026 年新生赛,距离我第一次接触 CTF,已经过去一年了。
这一年里,陆陆续续参加了不少比赛,线上线下都有。黄鹤杯、2025 国赛、软件系统安全赛、2026 安徽省赛……比赛打了不少,成绩只能说一般,技术水平也远没有达到自己的预期。
说起来,一年前刚接触 CTF 的时候,很多东西都不懂,连最基本的工具都不太会用。现在至少对各个方向有了一些了解,遇到题目也不至于完全没有思路。
按理说,学了一年,总归是有些进步的。
但最近几次比赛下来,我反而越来越怀疑自己的真实水平了。
尤其是线上赛和线下赛之间的巨大落差,让我不得不重新审视过去这一年的学习方式。
说到底,还是 AI。
一、被 AI 掩盖的真实水平
屏前借智多题解, 赛后扪心几技存。
现在的 CTF 线上赛,和以前已经有很大区别了。
AI 的能力发展得实在太快。以前遇到不会的题目,还需要自己翻资料、查文档、找 Writeup,现在很多时候只需要把附件交给 AI,它就能自己分析,甚至直接给出可运行的 Exp。
更夸张的是,现在已经有不少专门用于 CTF 的自动化 Agent。从获取题目、分析附件、编写脚本,到运行验证、提取 Flag,整套流程几乎都可以不需要人参与。在部分线上赛中,这些 Agent 甚至已经能够做到接近 AK。
对于这种变化,我其实是既兴奋又无奈的。
兴奋的是 AI 的进步确实让人感到不可思议,无奈的是,它也让我越来越难判断自己究竟是什么水平。
回顾过去一年,我发现自己打线上赛时,几乎已经离不开 AI 了。
一开始,我还是会尝试自己做题,实在不会了再去问 AI。后来慢慢变成了遇到题目先扔给 AI,自己在旁边看看思路,等它生成脚本再运行。
脚本报错了怎么办?把报错信息发回去,让它继续改。
如果一条路走不通,就让它换个思路接着试。
很多时候,一道题目就这样做出来了。
Flag 拿到了,分数也加上了,但是回头想想,这道题究竟是怎么解出来的,自己可能都说不太清楚。
当时倒也没觉得有什么大问题。毕竟有现成的工具可以提高效率,为什么不用呢?
而且有时候 AI 给出的分析确实很精彩,自己看完也能理解个大概,就觉得这道题应该算是掌握了。
可现在看来,问题恰恰出在这里。
我把看懂 AI 的解题过程,误认为是自己具备了解题能力。
两者根本不是一回事。
看懂一份 Exp,不代表自己能够独立写出来;知道一道题的漏洞在哪里,也不代表能够完成后续的利用。
以前这些问题都被 AI 掩盖了。反正最后总能跑出来一个结果,自己也就没有继续深究。
久而久之,打的比赛越来越多,见过的题目也越来越多,但真正能够独立完成的东西,却没有想象中那么多。
二、线下赛暴露出来的问题
胸藏破局千般计, 手握空笺半字难。
真正让我意识到问题严重性的,还是线下赛。
线下赛几乎做不出来题目,这种感觉真的挺难受的。
倒也不是完全没有思路。
很多时候,拿到题目之后,我能大概判断应该往哪个方向做,知道可能需要利用什么漏洞,也知道下一步应该干什么。
但就是写不出来。
有思路,但是不会写脚本。
这大概是我目前最大的问题。
平时看 AI 写 Exp,觉得代码逻辑也不复杂,甚至有些地方还觉得挺简单的。可真正轮到自己动手,从头开始写的时候,就不知道怎么下手了。
知道要构造 Payload,但具体怎么构造、怎么发送、怎么处理返回结果,写起来就开始卡壳。
有时候好不容易写出一部分代码,结果运行报错,又要花很长时间去找原因。
以前这些事情基本都是 AI 在做,自己只需要负责复制、运行,最多根据结果提几个要求。
到了线下,没有了这种依赖,问题一下子全暴露出来了。
最难受的地方在于,有些题目并不是自己完全不会,而是明明知道该怎么做,却没有能力把它实现出来。
如果是完全没学过的知识,那不会也就不会了,至少知道自己应该补什么。但现在这种情况,反而让我有些不知道该怎么评价自己。
说会吧,脚本写不出来;说不会吧,思路又确实能想到一些。
说白了,就是眼高手低。
想想以前打过的那些线上赛,很多题目其实都有现成的学习机会。哪怕只是把 AI 给出的脚本自己重新写一遍,把用到的函数和原理弄明白,也不至于现在这么被动。
可惜当时一门心思只想着把题做出来,很少认真去做这些事情。
甚至有时候一道题刚出 Flag,就直接开始下一道了,连复盘都懒得复盘。
现在回头看,确实浪费了不少学习机会。
三、我是不是太依赖 AI 了?
曾凭模型寻捷径, 却把苦功置一旁。
其实我并不觉得使用 AI 有什么问题。
相反,我一直认为 AI 是一个非常强大的工具,也确实帮我解决过很多问题。
如果没有 AI,我可能没办法在这一年里接触到这么多东西。很多原本看不懂的代码、理解不了的知识,经过 AI 解释之后,确实容易理解很多。
我自己也一直在关注各种新模型,甚至还折腾过 CTF Solver Agent,想着怎么让它自动分析题目、调用工具、完成解题。
但现在想想,多少有些讽刺。
自己连一些基础的 Exp 都写不好,却已经开始研究怎么让 Agent 自动解题了。
当然,这两件事并不冲突。研究 AI Agent 本身也能学到很多东西,但对于现阶段的我来说,确实有些本末倒置。
我花了不少时间研究怎么让 AI 把题做出来,却没有花同样多的时间研究自己怎么把题做出来。
以前总觉得 AI 能够节省大量时间,现在才发现,它省掉的有时候不只是时间,还有自己本来应该经历的学习过程。
编写脚本、调试程序、查阅文档,这些事情虽然麻烦,但也正是积累经验的过程。
尤其是编程,光看别人写是远远不够的。
有些知识你看十遍都觉得自己会了,真正动手写一次,才知道原来还有这么多地方不懂。
AI 可以直接告诉我哪里出了问题,甚至能够把整个脚本重新写好。但如果每次都这样,我就永远没有机会独立解决这些问题。
这也让我开始反思,自己过去一年到底是在学习 CTF,还是在学习如何更高效地让 AI 帮我打 CTF。
可能两者都有,只是后者占据了太多时间。
四、AI 的发展比我想象中还要快
机查万行寻旧隙, 人对空屏笔未成。
其实不只是 CTF,整个网络安全领域都在被 AI 改变。
就在2026 年 10 月 21 日,PHP 披露了两个严重的远程代码执行漏洞,CVE-2026-109618 和 CVE-2026-109619,AI 在相关漏洞研究中发挥了重要作用。Go 生态近期也接连披露了一些安全问题。
再看看 ARTEX 这样的自动化渗透测试 Agent,已经能够自主进行信息收集、漏洞分析、工具调用,甚至尝试完成整个渗透流程。
以前总觉得漏洞挖掘是一件门槛很高的事情,需要大量的知识储备和实战经验。现在看来,至少在工具使用和基础漏洞发现这些环节,门槛已经被 AI 拉低了太多。
当然,真正深入的漏洞研究依然需要扎实的技术能力,但 AI 确实正在让很多原本困难的事情变得简单。
我甚至觉得,再过几年,网络安全行业可能会和现在有很大的不同。
想想也挺有意思的。
一边是 AI 已经能够辅助发现大型开源项目中的严重漏洞,自动化 Agent 甚至可以自己完成渗透测试;另一边是我这个学了一年 CTF 的人,还在为怎么独立写出一个 Exp 发愁。
这种反差确实让我有些焦虑。
如果继续按照现在这种方式学习,等到几年后毕业的时候,我究竟能拿出什么东西?
一个会使用各种 AI 工具,却连基础代码都写不好的网络安全专业学生,真的有竞争力吗?
我不知道。
不过,我也不觉得因此就应该拒绝 AI。
技术的发展不可能因为个人的担忧而停下来,既然这是趋势,那就应该去适应它。
只是不能再像以前那样,什么都依赖 AI。
AI 可以帮我解决问题,但不能一直替我学习。
五、关于未来
未卜前途风雨路, 且修今日案头功。
说到这里,其实还有一个一直在想的问题,就是网络安全这个行业到底还值不值得进入。
AI 的发展速度太快了,快到现在很难判断几年之后会是什么样子。
代码审计、漏洞扫描、渗透测试,这些原本需要人工完成的工作,现在越来越多地可以交给 AI。
以后一些初级岗位会不会被替代?行业会不会进一步提高招聘门槛?我们现在学习的这些东西,到毕业的时候还有多少价值?
这些问题,至少现在的我给不出答案。
所以我觉得,入行确实需要谨慎。
但也没必要过度担心。
毕竟我们还在大学。
大学算是进入社会之前的一个缓冲区,还有时间试错,也还有机会调整方向。
如果真要担心未来,不如先把眼前的问题解决了。
我现在最明显的短板就是基础不够扎实,尤其是编程能力不足。明明有思路,却写不出脚本,这种问题说到底只能靠自己多写、多练。
以后打比赛,AI 肯定还是会用的。完全拒绝 AI,我觉得既不现实,也没什么必要。
但至少得改变一下使用方式。
能自己分析的先自己分析,有了思路尽量自己写脚本,遇到报错先尝试自己解决。实在不会,再让 AI 帮忙解释,而不是直接让它把所有事情做完。
做完题之后也应该多花点时间复盘,至少要保证自己能理解并复现整个过程。
毕竟比赛打得再多,如果最后留下来的只有 Flag 和排名,那这一年确实没学到多少东西。
写在最后
昔凭模型求速解, 今靠双手练真功。
本来只是想趁着新生赛写点感想,没想到写着写着,几乎全变成了对自己的反思。
不过这也确实是最近一直困扰我的问题。
一年时间,比赛打了不少,接触的东西也不少,但真正掌握的知识和技术,远没有自己想象中那么多。
以前还会觉得自己只是缺少一些实战经验,现在看来,基础方面的问题可能更严重。
尤其是线下赛暴露出来的那些问题,已经足够说明过去的学习方式确实需要改变了。
我并不后悔使用 AI,也不认为以后应该少关注 AI。相反,我觉得未来会用 AI、用好 AI,只会变得越来越重要。
但前提是,自己也得有点真本事。
不然 AI 再厉害,最后厉害的也只是 AI。
说到底,我还是希望自己能够真正学会一些东西,而不是永远停留在看得懂思路、跑得了脚本,却写不出代码的阶段。
现在才大二,还有时间。
这一年走了不少弯路,好在也不算太晚。
希望明年的这个时候,再回头看这篇文章,自己已经能够独立解决更多题目,至少不会再像现在这样,明明有思路,却只能对着编辑器发呆。
至于 AI,以后肯定还会继续用。
只是希望下一次打线下赛的时候,我脑子里想的不再是:
“这题要是能用 AI 就好了。”
