“邪恶”的Underhanded C

来源:互联网 发布:linux有哪些知识点 编辑:程序博客网 时间:2024/06/02 13:58

宾汉姆顿大学教授、安全专家 Scott Craver于2005年创办了Underhanded C挑战赛,旨在在将计算机编程变成一个游戏,并且寻找顶尖人才。

以下为文章全文:

 

通常,一般的编程竞赛都会让软件开发人员构建合理有用的东西,甚至是一些能让世界变得更美好的代码。但 Underhanded C比赛有点不同,它要求开发者创造出“恶意”的东西。

比赛的目标是创建一个包含恶意行为的程序,但是要看起来无害,甚至审查不出危害。如果恶意行为被发现,它应该像一个无心之失,而非刻意造成的问题。获奖者将获得在线商店 ThinkGeek价值200美元的代金券。

越来越多的比赛试图将计算机编程变成一个游戏,并且寻找顶尖人才。Underhanded C比赛的目的也是如此,它通过“恶意”代码来识别人才。

这项比赛由宾汉姆顿大学教授、安全专家 Scott Craver在2005年创办,其自己提供比赛资金,并且一个名为 数字资产保护协会(Digital Asset Protection Association)的组织将协助其进行裁判。

Craver表示,他举办Underhanded C大赛的灵感来自于一名斯坦福学生在2004举办的被称为“Obfuscated V”的比赛——对电子投票机的安全性提出质疑。

Obfuscated V比赛要求开发人员创建一个计票程序,要将投票数统计错误,但要把这个恶意程序在某种程度上伪装成无心之失。获胜者利用了投票在11月2日进行以及单词“second”比“first”、“third”长的事实。当日志记录中出现单词“second”,将促发bug并造成错误的投票计数。

Craver认为比赛是提高安全问题和驱动研究认知的一个很好的方法,所以他开办了这项比赛。Underhanded C大赛于2005年至2009年连续开办了5届,中途休赛了几年,今年这项比赛又重新回归了。

今年的参赛选手将扮演一个构建虚拟的被称为ObsessBook的社会网络的角色。在ObsessBook、用户权限取决于分离度。如果两个用户之间相隔3-5个度,那么他们可以查看彼此的个人资料。如果他们相距0-3个度,他们可以在彼此的账户里进行操作。直接连接用户则可以改变对方的密码。

目前面临的挑战是创建一块C代码,来确定用户之间的分离度,并且偷偷塞进一些恶意的代码,这些恶意代码将错误地报告你与其他用户的分离度数,从而获得尽可能多的用户访问权限。

开发者可以做一些额外的东西进行加分。例如,建立一个小bug,让你可以访问别人的账户,而别人不能访问你,这将获得奖励积分。

同时,额外的分数将被授予为“幽默、恶意的,或具有讽刺意味的错误,如在一个错误检查程序里的邪恶行为”。 (王旭东/编译 仲浩/审校) 

本文来自: Wired

原创粉丝点击