首页 > 安全 > 正文

流行的编码建议不一定等于安全编码建议

2019-01-11 15:56:38   来源:IT运维网>

Stack Overflow是一个非常受欢迎的在线论坛/问答网站,许多程序员和软件开发人员使用它来查找特定编程问题的答案。
 

 

不幸的是,研究人员最近发现,许多贡献者提供的相当一部分信息/代码包含可利用的安全漏洞。由于知识渊博的用户不太可能发现这些,因此问题是:他们能否依靠网站的用户社区来帮助他们区分安全和不安全的选择?
 

根据弗吉尼亚理工大学,慕尼黑工业大学和德克萨斯大学圣安东尼奥分校的一组研究人员最近的研究,答案是“不”。
 

研究成果


研究人员对安全相关的Stack Overflow帖子进行了研究,并对社区给出的内容评估进行了对比安全和不安全的建议。为了确保安全和不安全建议之间的公平比较,他们专注于与Java安全性相关的讨论线程。
 

“我们编制了类似的安全相关的代码示例953个不同的群体和标记他们的安全,确定785分安全答案的帖子和644发不安全答案的帖子,”他们解释说。
 

“与安全建议相比,不安全的人有更高的观点数(36,508对18,713),获得更高的分数(14对5),并且平均有更多的重复(3.8对3.0)。由信誉良好的所谓可信用户提供的帖子中有34%是不安全的。“
 

研究结果表明,该网站的投票系统无法识别和奖励安全答案。
 

此外,其声誉机制未能在安全问题方面指出值得信赖的用户。
 

研究人员指出,提供安全答案的用户的声誉远高于不安全答案的提供者,但幅度上的差异可以忽略不计,因此用户不能依靠声誉机制来识别安全答案。
 

其他调查结果包括:
 

  • 接受的答案和片段重复性也不是用户识别安全编码建议的可靠方式。
  • 不安全的答案在SSL / TLS类别中占主导地位(70%)。安全答案在其他类别中占主导地位(Asymmetric为 94%,Hash为 71 %,Symmetric为54%,Random为 52%)。
  • 创建了重复的答案,因为用户询问了类似或相关的问题,并且一些用户盲目地复制和粘贴代码以回答更多问题并获得积分。好消息是,研究人员没有通过发布不安全的答案来识别任何故意误导人的用户。


建议改进


研究人员指出,“令人担心的是SO用户不能依赖信誉机制或投票系统来推断答案的安全属性”,并指出最近的Meta Exchange讨论线程显示了Stack Overflow开发人员的挫败感过时的安全答案是最新的。
 

他们对工具构建器的建议是测试代码并探索检测和修复安全漏洞的方法,最好是以半自动或自动方式,以及Stack Overflow开发人员:
 

  • 集成静态检查程序以扫描提交下的现有帖子和帖子
  • 自动向任何易受攻击代码的帖子添加警告消息或特殊标记
  • 鼓励版主或可信用户利用克隆检测技术来检测和删除重复的问题和答案。
  • 从使用每个用户的单个声誉分数切换到使用反映常见/回答问题的每个标签的一个分数,以便可以更好地表征他们的专业知识。


在改进分布式代码示例的安全属性时,Stack Overflow用于激励用户的游戏化方法也是无效的。实际上,由于回答更多问题可以提高声誉,因此有效地鼓励贡献者提供重复的,不太有用的或不安全的编码建议。

相关热词搜索:安全编码

上一篇:加密后门为网络安全打开了潘多拉盒子
下一篇:安全计划的信心与其有效性之间存在相当大的差距