网络安全 频道

软件安全速成课 企业系统有多脆弱?

    软件安全仍然是一个热门话题。无论是普通百姓,还是《财富》500强公司,谁都听说过由互联网上的病毒和攻击者引起的身份窃取、数据丢失以及一般性的混乱。单单2008年第一季度,就有1474个不同的软件脆弱点报告上来,只有64个发布了相应的解决方案。也就是说解决率大约只有4%。由于软件和系统安全方面议论纷纷,计算机业界似乎完全处于一片混乱之中,这让许多人问道:“我的系统有多脆弱?”

    本文介绍了伍斯特理工学院近期开展的一个安全项目取得的部分成果,还介绍了其他研究。目的在于,通过阐明常见的安全术语,并且提供典型安全漏洞的一些实际例子,表明什么是软件安全。

    本文并不想提供全面的计算机安全教育,而是旨在介绍信息安全这个广阔、并且在不断扩展的领域当中的一些关键话题。

    标准课程不会提到软件脆弱点

    早期在系统安全方面的兴趣实际上激发了我最初对计算机科学的兴趣;从此以后,计算机安全成了我关注的一个焦点。所以不用说,伍斯特理工学院没有开设大学本科生软件或者系统安全课程,这让我觉得多少有点失望。由于没有专门介绍安全的任何正式课程,我和另外两名计算机科学系的学生决定进行独立研究,了解关于软件安全的更多知识。今年年初,我们与伍斯特理工学院的计算机科学系教授 Kathryn Fisler谈论了进行软件安全方面的独立研究项目的事宜。我们打算开一门安全软件工程课程,会最先在08-09学年开课。现在大家也知道了,CS4400x 成为伍斯特理工学院开设的第一门大学本科生计算机科学安全课。

    我们在开设这门课程的过程中,发现了有关软件脆弱点和预防的几个事实,而标准的课程根本不会提到这些事实。我们发现,大部分脆弱点通常是由很小的逻辑错误或者软件开发人员没有发现或没有解决的某种情况引起的。有些脆弱点不是太复杂,因而很容易被黑客利用。只要使用一些简单的资源,比如Web浏览器和文本编辑器,就能找出这些脆弱点。在软件开发团队没有犯错的其他情况下,安全漏洞可能由最终用户对软件配置或者使用不当引起。

    我们得出了这个结论:最大的安全缺陷来自于开发人员错误地以为安全问题会在系统其他地方得到处理――比方说,他们想当然地以为输入数据值得信任。经验教训是,我们一定要认识到确保安全是每个人的职责,而不是别人的职责。
 

0
相关文章