Samiux

CyberSecurity Ninjas 网络空间安全忍者

View on GitHub
Home Projects Articles Apophthegm About

我的「夺旗赛」战斗策略


「教为战,练为战。」-- 习近平

近来对「夺旗赛」(Capture The Flag) 的 「利用」(Exploitation, Pwn) 产生了兴趣,所以积极地学习其的技术和技巧,但碍于经验不足和技术平庸,弄得手忙脚乱,更因为有很多的不理解,以至直到现在都一事无成。特此准备一份战斗策略,以便日后攻克线上比赛。因为经验不足和技术平庸的原故,如有错漏,烦请各有识之士不吝赐教改正。

「工欲事其善,必先利其器」基于这个原则,首先要花一些时间和心血去了解一下什么是动态分析 (Dynamic Analysis) 和静态分析 (Static Analysis),以及其所使用的工具。动态分析工具有调试器 (Debugger) 如 GDB 和 pwndbg;静态分析工具如 Ghidra、Radare2等。更需要理解「利用开发」(Exploit Development) 利器 pwntools,它能够使开发过程更容易和脚本更「可靠」(Reliable)。

接着就是学习和了解所有可被利用的漏洞和其可被利用的方法,再加上因为 Linux 的保护机制而产生出来的各种绕过技巧都要了解和学习。为了要更了解和更容易学习,必须采用过往的「夺旗赛」题目来练习,最好是附带解题以求方便学习。虽然此举未必能令你在今后的练习或比赛做出好成绩,但这是学习的必经阶段。

当你能够掌握一些基础技术和技巧之后,你就可以参与线上的「夺旗赛」以铎利你的技术和技巧。但在比赛刚开始时,务必将所有题目和附件都备份下来,这可供在赛后继续探讨和深究,尤其是那些你不懂在当时解答的题目。因为你有可能在赛后的各方解题中不能获得所需的附件以供练习及参考其他选手的思路和技巧。

在比赛时首先尝试去解答比较低分的题目,因为此等题目相对比较容易。在进行解题时务必将过程记录以便在赛后撰写解题文章以供后进者学习和参考,而且这也是每个渗透测试员 (Penetration Tester) 的基本工作。在比赛时如遇困难,可以小休一下,以便令头脑更清晰;又或者浏览一下所遇的相关难题,希望可以从网上找到一丝线索或思路。在这个阶段,我们力求增加经验值和见识多些难题,以便日后有更好的成绩。

虽然这门技术在香港、国内或其他地方比较难找到工作岗位,但如果你是喜爱或有兴趣的话不防参与其中,享受解题和夺旗的乐趣。

当你知道得越多,你会发现其实你所知道的就越少!

Samiux
OSCE OSCP OSWP
二零二一年六月十五日,中国香港

相关参考:

Home Projects Articles Apophthegm About