Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

在不久前的一场CTF比赛中发生了这样一件事情:我和队里另一位成员碰巧同时开始研究一道密码学题目,彼此却毫不知情。我先一步解出并提交了flag;没过多久,他也成功提交了答案,这才发现我已经提交过了。他随即明确地向我表达了不满:“It is very annoying to see after solving a task, that it was solved already”。我尝试与他沟通,但最终未能达成一致,他索性不再回消息,也停止了做题。

坦白说,我觉得这本身是件小事,即使发生在我身上也不会太过在意。但这不由得让我思考:我参与CTF的目的是什么?在CTF的过程中,什么才是最重要的?或者说,相对更值得珍视的是什么?

我接触CTF的契机颇有意思的:一开始被同学拉去上了网络安全这门课,并坚持完成了所有作业。这门课的作业形式基本上就是CTF题——编写脚本获取flag。后来机缘巧合,得知学校有支CTF队伍,便联系负责人加入其中。

最初参与CTF时,我的动机多少有些功利(至今也未能完全摆脱这个想法):作为纯数学专业的学生,我几乎没有任何竞赛经历和奖项,找实习时屡屡碰壁。所以我很希望可以借着这个机会多多参加比赛、争取好名次来丰富简历。然而,随着一场场比赛的进行,我渐渐发现,我在这个过程中学到了太多东西:多种语言的代码能力,高效检索信息(比如特定漏洞以及攻击手段)的能力等等…… 这些都弥足珍贵。

回到解题本身,我觉得最有成就感的是得到正确flag的瞬间,但更重要的是自己成功做出来这道题的过程。在这个过程中,你可能汲取新知,也可能将过往所学付诸实践并获得成功。我觉得这个过程才是CTF中最有意义的事情,获取并提交flag,更像是成功的注脚,或是对努力的嘉奖。

当然,比赛中提交flag争取分数是主要目标。但作为一个队伍,实在不必过分纠结于谁先解出。因为大家最终的目的不都是为了争取一个理想的名次吗?更何况,他人率先解题的成功,绝不意味着否定你在此过程中付出的努力和获得的成果。

也不知道之后是否有机会与他解开矛盾,但这并不重要。重要的是,这次小小的冲突让我有机会停下来,认真审视自己参与 CTF 的初衷和目标。从最初为了丰富简历、提升求职竞争力,到如今更看重解题过程中的学习和成长,我的心态发生了转变。 CTF 不再仅仅是比赛,而是我学习和提升自我的一个平台。 这次经历让我明白,团队合作和共同进步远比个人名次和短暂的优胜感更有价值。即使未能获得理想的名次,只要在这个过程中持续学习、不断进步,就已经足够令人欣慰。而这份思考和成长,远比任何一个 flag 都珍贵。 我很高兴,这次经历让我在迷茫中找到了方向,而不是盲目地继续前进。