跳过主要内容

桌上的卡片:风险工具在开发过程中发现软件缺陷

一种新的风险管理工具可以帮助软件开发人员在规划过程的早期识别程序中的安全漏洞,在问题存在之前有效地解决问题,只需让开发人员亮出他们的牌。这个名为“保护扑克”的系统是由北卡罗莱纳州立大学的计算机安全专家开发的,已经被用于识别安全问题的试点项目中。

在保护扑克中,首席研究员劳里·威廉姆斯博士解释道,软件开发经理被要求向他们的程序员团队提出关于新软件功能或应用程序的想法。然后,软件开发团队的成员被要求对两个问题进行投票:新特性将使用的数据有多大价值?攻击新功能有多容易?

开发团队成员使用一副特殊的卡片进行投票,让他们能够在1到100的范围内对新功能的价值和易用性进行排名。团队中的每个人都在同时翻转他或她的牌。用最高和最低卡片投票的成员被要求解释他们的投票。威廉姆斯说,如果团队中有一名成员将该漏洞列为40级,而其他成员将其列为3级,那么该成员可能知道一些其他人不知道的事情。这个过程利用了开发团队中知识和视角的多样性。

这个过程虽然简单、便宜,但是很有效——尤其是在规划阶段,这样潜在的问题就可以在编码之前得到解决。例如,Williams和她的研究小组在2008年10月与Red Hat IT合作启动了一个“保护扑克”试点项目,并且已经发现了漏洞,并阻止它们被纳入Red Hat IT的软件项目中。

威廉姆斯目前正在与其他私人公司和政府机构讨论启动额外试点项目的可能性,以测试“保护扑克”系统。威廉姆斯是北卡罗来纳州立大学计算机科学副教授。保护扑克研究团队包括两名北卡罗来纳州计算机科学博士候选人:Michael Gegick和Andrew Meneely。

除了识别安全漏洞,Protection Poker也是一个很有价值的培训工具。Williams解释说,让一个人解释他或她的投票结果会使这个人的安全知识与整个软件开发团队共享。

保护扑克研究“保护扑克:构建软件安全风险评估和知识转移”是本月早些时候在比利时鲁汶举行的首届工程安全软件和系统(ESSoS)会议上提出的。

Gegick和Williams还与思科系统(Cisco Systems)的Pete Rotella共同撰写了一项研究,该研究有效地让软件开发人员识别出他们的软件中最有可能存在安全漏洞的元素。虽然程序不识别漏洞,但它会评估程序的非安全性问题(或“bug”)报告,以确定程序的哪些元素应该优先考虑可能存在安全性缺陷。这项研究,“非安全故障作为安全故障和失败的预测器”,也在ESSoS会议上提出。

希普曼-

留下一个响应

您的电子邮件地址将不会被公布。所有字段都是必需的。