阿里云
服务器地域选择
发表主题 回复主题
  • 96阅读
  • 0回复

[交流乐园]Java安全编码:糟糕的在线建议和令人困惑的APIs

发帖
104
云币
363
对于程序员和软件开发人员来说,网络论坛提供了一个交流知识和寻找具体编码难题的好地方。遗憾的是,他们并不总是准确信息的来源。 d=/a{lP\  
3Y=uBl  
\9k{h08s  
弗吉尼亚理工大学的一组研究人员分析了数百篇关于Stack Overflow的文章,(Stack Overflow是一个很受欢迎的开发者论坛或者说Q&A网站)发现许多提供方案的开发人员并没有意识到编码选项的安全含义,并显示出了缺乏网络安全培训。 vPM 2cc/o  
他们发现的另一件事是,有时,最热门的帖子或答案包含了一些不安全的建议,这些建议会在软件中引入安全漏洞,而正确的修复程序不那么受欢迎,也不容易看到,因为它们是用户提供的,其信誉分数较低。 i+~H~k}"X  
因此,提问者和回答者之间的社会动态肯定会对人们的安全选择产生影响。 ~`<_xIvrq  
获得正确的安全性 }u.1$Y  
研究人员集中研究与Java安全性相关的帖子,从软件工程和安全角度考虑,针对的是Spring Security问题上发表的文章,Spring Security是一个第三方Java框架,为企业应用程序提供身份验证、授权和其他安全特性。 gsVm)mkd  
Spring Security旨在促进安全编码,但很明显,许多程序员发现它的APIs过于复杂,文档记录不足,运行时系统错误报告令人困惑。 3$P GLM  
“此外,多语言支持获取数据的能力相当弱。在安全应用程序中,多语言的情况是很常见的,因为通常数据是用一种编程语言加密的(比如:Python)并在另一个编程语言解密(例如:Java)。这些问题会严重阻碍开发人员的生产力。” m`#UV-$J  
开发人员在花太多时间解决APIs的正确用法时常感到沮丧,并且常常选择了完全不安全的修补程序,比如使用过时的加密哈希函数,禁用了跨站点请求伪造保护,信任了HTTPS验证中的所有证书,或者使用了过时的通信协议。 @pV&{Vp  
研究人员指出:“这些糟糕的编码实践,如果在生产代码中使用,将严重损害软件产品的安全性。” Rip[  
建议每个人都参与 w C-x'  
“这项工作的意义在于,我们为大量令人担忧的安全编码问题提供了经验证据,而这些问题之前并没有被报道过。这些问题是由于各种原因,包括企业安全应用的快速增长,软件开发人员缺乏安全培训,以及设计了糟糕的安全库,”研究人员指出。 dwz {Yw(  
他们建议设计人员删除或弃用弱安全性的APIs,设计简化的APIs,并在默认情况下实现强大的安全性防御,并设计干净且有帮助的错误报告接口,其中还包括可能的根本原因和解决方案。 85#+_}#  
另一方面,开发人员绝对应该需要安全检查,并进行安全测试,以检查实现的功能是否如预期的那样工作。在Stack Overflow和其他类似的社区网站和论坛上流行和接受的答案应该像一粒盐,如果可能的话,它们的准确性应该是独立的。 X-_0wR  
最近的相关研究显示,排名靠前但不够充分的编程Web教程也将漏洞引入了软件。 cLm{gd4 W  
最后,工具生成器应该考虑使它们能够动诊断安全错误,并建议安全补丁或解决方案。 ~}ba2dU8  
“构建漏洞防御技术,比较同级应用程序使用相同系列的APIs来推断和警告潜在的错误使用。探索检查和加强安全性相关注释、代码和配置之间的语义一致性的方法。构建新的方法来转换声明性安全性和编程式安全性的实现,”研究人员总结道。 ty b-VO  
小编总结:当程序员或者软件开发者在编码遇到难题时,找网络论坛,或寻大神求助,或自己探索都是可行的,但一定要意识到编码选项的安全性,选择了错误的编码,将严重影响企业软件产品,因此,安全编码,人人有责。 ^vc#)tm5p  
本文由阿里聚安全编译,原文链接:https://www.helpnetsecurity.com/2017/10/03/secure-coding-java/
发表主题 回复主题
« 返回列表上一主题下一主题

限100 字节
批量上传需要先选择文件,再选择上传
 
验证问题: 50 + 25 = ?
上一个 下一个