G.O.S.S.I.P 阅读推荐 2024-05-24 都是黑客犯的错

开局先看一张图:

当黑客有什么前途?除了牢底坐穿,也可以去当主播赚钱对不对?在电子竞技早已成为热门的网络直播项目的今天,传统的一些智力活动比如国际象棋和ACM编程竞赛也都开始进军直播界,而且已经诞生了很多明星主播,比如国际象棋界的中村光和Alexander Botez(有兴趣的读者可以去搜索一下著名的“Botez Gambit”哈哈),不过也有很惨淡的,例如B站上面好像一直有一个“前华为女黑客”在直播编程,还一直吐槽说0人观看,不知道是真是假?

https://www.bilibili.com/video/BV1H44y1F769/?spm_id_from=333.788.recommend_more_video.1&vd_source=696de27f58d8d02ff361e305a56be520

总之,真正的黑客确实会去搞直播的,比如大名鼎鼎的GeoHot就在Twitch直播平台上直播自己写代码,当然他也会发布一些CTF解题的视频放在YouTube上:

所以我们今天要介绍的这篇IEEE S&P 2024论文 “Watching over the shoulder of a professional”: Why Hackers Make Mistakes and How They Fix Them(怎么感觉前面一直在跑题)是一篇对YouTube上面那些上传了自己CTF解题视频的up主(嗯,权且也把他们叫做up主吧)的分析。主要关注的点是什么呢?当然是想要了解这些敢于展示自己解题过程的“大神”(当然也不全是,但是没两把刷子可能也不敢上传视频吧)在“实战”(严格来说解题不能完全等同于安全研究和安全实践)中会犯哪些错误,而且调查这些错误的目的并不是要嘲笑他们,而是深入探讨作为我们这个安全研究社区群体的代表,这些安全从业人员犯错误的类型、原因以及如何避免继续犯错(毕竟太多人不懂得“前事不忘后事之师”的道理)。

进入到这篇论文的细节,作者首先去YouTube上搜索了很多CTF解题视频,然后选择了11个up主(相关的分布如下表)的31个视频

作者选取的31个视频里面包含了28道CTF题目的解答过程,其中有一个视频里面包含了两道题目的解答,然后有一些视频是不同的up主解答同一个题目,具体的题目分布如下表所示:

由于作者本身也是专业级别的CTF选手,因此可以更好地审视这些视频里面的问题(好一个“名师把脉”,教培机构也可以考虑一下)。论文里面用了很多user study的方法,比如我们以前介绍过的什么codebook,这些就不再赘述了,我们直接进入到作者的总结部分。

作者把视频里面看到的这些up主在hacking过程所犯的错误归为五大类(比例分布如上图所示):

  1. Implementation:主要是指在hacking的时候,对内存地址的操作没搞对,比如下图中,本来应该是write_offset减去write_addr来计算system_addr,却用了加法去计算;

  1. Programming/Miscellaneous:就是代码写挫了,比如下面这个例子里面,从puts那边拿到的地址也要用p32处理一下,但是忘记了:

  1. Strategy:这个大概就是委婉地说你水平不够哈哈哈,使用的exploit的方式方法不到位;

  2. Tooling:工具的问题(也是人的水平问题),比如在使用GDB去调试的时候没设置好mode之类的;

  3. Technical Issues:这个我们都懂,就是有时会遇到一些非常奇怪的技术问题,可能跟要去做的题目没啥关系,反而是跟自己的系统环境之类的乱七八糟的因素有关;

接下来作者继续分析了大家解决各类问题的平均时间,从下图可以看出,像编程或者工具类的问题,一般来说很快就能被发现和纠正,但是思路上的问题(Implementation和Strategy)就要花更多的时间,另外遇到那种奇怪的技术疑难杂症也很容易让人卡住。。。

更细致的统计数据表明,有时你可能遇到一个没法运行代码的问题就能卡住卡到让人发狂:

论文的第七章很有意思,探讨了up主也就是hacker群体们在视频中如何体现出来他们在精神上和智力上孜孜不倦地与问题缠斗的一些重要因素。这里面包括:

  1. 过往积累的一些经验和可复用代码;

  2. 各种工具、插件;

  3. 在直播过程中还和同伴交流,并且快速学习新知识

当然,作者也描述了很多人在做不出来题目时候的暴躁情绪:

The level of irritation usually increased as the problem persisted, and a hacker felt an absence of progress. Depending on the hacker’s style, frustration could manifest as a negative self-talk

总之,这篇论文相当有趣,之前那个什么讲CTF的电视剧《亲爱的,热爱的》如果想要改进改进,应该好好阅读这篇论文。大家也可以去细读原文,看看到底是什么因素导致了自己别人水平不行。

最后,我们回到开局那张图,现在发现,其实黑客们有了一个新的闭环赛道:

学黑客技术->搞直播->写论文->被引用->评上教授->培养学生学黑客技术(说的就是你,Yan)


论文:https://adamdoupe.com/publications/hacker-mistakes-oakland2024.pdf
数据集:https://github.com/sefcom/hackers-mistakes-paper-public-access


免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。查看原文

为您推荐