软件安全是一种多学科工作
2009-04-03 23:17
555 查看
软件安全成为一门学科是最近的事情。对它有利的方面是,新的学科可以通过创新性地综合表面上不相关的学科而获得益处(参见文本框“新学科中的创新”)。而不利的方面是,软件安全是非常新的学科,有时并不清楚应该如何进行研究。
当开发和发展最优方法时,软件安全能够也应该从计算机科学和软件工程领域的其他学科中借鉴一些知识。由于定义软件安全的文献仍然相当稀少,因此快速浏览一下相关的领域是很重要的。下面的课题具有很强的相关性,并且值得进行深入了解。
*安全需求工程
*针对安全、软件体系结构和体系结构分析的设计
*安全分析、安全测试和使用通用标准
*软件安全和设计与分析方面的案例研究的指导方针
*审核软件的实现风险、体系结构风险、自动化工具和技术开发(代码扫描、信息流等等)
*常见的实现风险(缓冲区溢出、竞争条件、随机性、认证系统、访问控制、实用密码学,以及信任管理)
第13章带注解的参考资料中涵盖了这些主题中的大部分内容。接触点定义的最优方法领域中的每一个都还有大量的工作要做,但是也应该从更成熟的方法中借鉴其他的基本的实用方法。
新学科中的创新
我们正在经历在计算机安全领域中伟大的创新时代,因此,如果可以,我们必须抓住当前的形势所提供的这个机会。今天的安全工作人员所表现出来的背景多样性可能是非常复杂的。既然今天的安全思想方面的领导者都进行过各种领域的理论学习,比如生物统计、神学、经济学和认知科学,因而他们各自站在有趣的新视角看待安全挑战,在安全这个领域中引起了创新的相互影响,并导致有趣的进展,包括出现了安全经济理论、涵盖风险管理、强调过程驱动的方法(相对于产品集而言)、向软件安全领域的偏移、软件工程的崛起等等。随着世界范围的安全从枪炮、猛犬和混凝土到网络、信息系统和计算机的根本转移继续强劲进行,我们必须充分利用这个充满了多样化创新的时间,以获取最大价值。
在20世纪90年代中期,大量的年轻研究人员加入到了计算机安全领域,他们将安全研究的重点从垃圾软件和国防(考虑加密、多级安全、通信监视等等)改变为商业系统和商业。这种由面向军事的研究的偏移到商业的一部分原因是公众普遍地使用因特网以及电子商务不断增长。由于涉及财务安全,安全与商业的相关性很快就和它与国防的相关性一样强了。“新鲜血液”的注入为科学的安全研究界,并继续产生深远的影响,这种影响现在仅仅涉及商业安全——防火墙的商业化、反病毒技术的兴起,以及采用现代的安全平台,比如Java和.NET,在安全研究界的新思想家预测到了这些变化,并且充当这些变化的急先锋。
1、现在的安全人员从何而来
现在从事计算机安全工作的人员中只有很少一部分是一开始就是从事这个领域的工作。实际上,明确地进行安全从业人员培训的学术计划是最近才出现的,也还很少见。
有趣的是,在缺乏安全培训的“合格”人员中可能会发现很好的发展机遇。虽然极少的安全工作人员受过科班的安全培训,他们中的大部分肯定受过其他某种领域的学术培训。因此,作为一个整体,计算机安全领域充满了多种不同的有趣观点。这与在黑暗时代末期导致文艺复兴的百花齐放百家争鸣的环境非常相像。
思想的多样性是正常的,而且会产生创新并推动软件安全领域的发展,我们必须利用这一点。在软件安全的新的子领域中可以找到一个很好的例子。仅在五年以前,认为糟糕的软件可能是安全问题的主要根本原因的观念还没有得到公认。现在,软件安全成为RAS安全大会的主题演讲的主题(http://rsaconference.com/),并且我们似乎都同意,目前存在必须解决的软件问题。这种变化的部分原因是由于编程语言人员(曾经只能在OOPSLA之类的生僻的学术会议中找到)介入到安全领域。这种介入导致了Java和.NET这种在设计中包含安全模型的现代语言的出现。当语言宣称是“安全的”时候,事情就变得非常有趣!攻击者和防御者之间不断提高的军备竞赛就进入到了一个新的层次,出现了新的安全设计方法,晦涩而难解的问题(比如“缓冲区溢出”)对下一代系统的影响变得越来越小。
2、 将来的安全人员来自何处
现在,已经开始实施学术和专业培训计划,培训下一代的安全专业人员。很快就将开发出标准的课程,要求学生们理解各种不同概念其实具有相同的核心。这一定有助于巩固计算机安全领域,但是,同时也存在一种危险,这一代人员可能导致单一的安全观点。安全领域存在成为一潭死水的风险,而不再是由跨越许多领域的各种各样的观点所支持的创新学科。如果我们小心地避免安全成为一种观点单一的领域,就应该在建立坚固的学术性学科的同时保持多样性的这一优势。一种方法是鼓励那些攻读计算机安全学位的学生广泛地学习其他看来与安全不相关的学科。另一种方法是,在领域内依然欢迎外部观点,并且不要置之不理。计算机安全必须一直是一种包容性的学科,以保持其创新性。
无论如何,我们都必须充分利用我们现在所处的形势。实际上,计算机安全正在经历一次重生,现在正是取得巨大进展的时候。我们必须密切注意各种不同的思想,包容变革,并帮助安全继续发展,使它变得更加明确。
当开发和发展最优方法时,软件安全能够也应该从计算机科学和软件工程领域的其他学科中借鉴一些知识。由于定义软件安全的文献仍然相当稀少,因此快速浏览一下相关的领域是很重要的。下面的课题具有很强的相关性,并且值得进行深入了解。
*安全需求工程
*针对安全、软件体系结构和体系结构分析的设计
*安全分析、安全测试和使用通用标准
*软件安全和设计与分析方面的案例研究的指导方针
*审核软件的实现风险、体系结构风险、自动化工具和技术开发(代码扫描、信息流等等)
*常见的实现风险(缓冲区溢出、竞争条件、随机性、认证系统、访问控制、实用密码学,以及信任管理)
第13章带注解的参考资料中涵盖了这些主题中的大部分内容。接触点定义的最优方法领域中的每一个都还有大量的工作要做,但是也应该从更成熟的方法中借鉴其他的基本的实用方法。
新学科中的创新
我们正在经历在计算机安全领域中伟大的创新时代,因此,如果可以,我们必须抓住当前的形势所提供的这个机会。今天的安全工作人员所表现出来的背景多样性可能是非常复杂的。既然今天的安全思想方面的领导者都进行过各种领域的理论学习,比如生物统计、神学、经济学和认知科学,因而他们各自站在有趣的新视角看待安全挑战,在安全这个领域中引起了创新的相互影响,并导致有趣的进展,包括出现了安全经济理论、涵盖风险管理、强调过程驱动的方法(相对于产品集而言)、向软件安全领域的偏移、软件工程的崛起等等。随着世界范围的安全从枪炮、猛犬和混凝土到网络、信息系统和计算机的根本转移继续强劲进行,我们必须充分利用这个充满了多样化创新的时间,以获取最大价值。
在20世纪90年代中期,大量的年轻研究人员加入到了计算机安全领域,他们将安全研究的重点从垃圾软件和国防(考虑加密、多级安全、通信监视等等)改变为商业系统和商业。这种由面向军事的研究的偏移到商业的一部分原因是公众普遍地使用因特网以及电子商务不断增长。由于涉及财务安全,安全与商业的相关性很快就和它与国防的相关性一样强了。“新鲜血液”的注入为科学的安全研究界,并继续产生深远的影响,这种影响现在仅仅涉及商业安全——防火墙的商业化、反病毒技术的兴起,以及采用现代的安全平台,比如Java和.NET,在安全研究界的新思想家预测到了这些变化,并且充当这些变化的急先锋。
1、现在的安全人员从何而来
现在从事计算机安全工作的人员中只有很少一部分是一开始就是从事这个领域的工作。实际上,明确地进行安全从业人员培训的学术计划是最近才出现的,也还很少见。
有趣的是,在缺乏安全培训的“合格”人员中可能会发现很好的发展机遇。虽然极少的安全工作人员受过科班的安全培训,他们中的大部分肯定受过其他某种领域的学术培训。因此,作为一个整体,计算机安全领域充满了多种不同的有趣观点。这与在黑暗时代末期导致文艺复兴的百花齐放百家争鸣的环境非常相像。
思想的多样性是正常的,而且会产生创新并推动软件安全领域的发展,我们必须利用这一点。在软件安全的新的子领域中可以找到一个很好的例子。仅在五年以前,认为糟糕的软件可能是安全问题的主要根本原因的观念还没有得到公认。现在,软件安全成为RAS安全大会的主题演讲的主题(http://rsaconference.com/),并且我们似乎都同意,目前存在必须解决的软件问题。这种变化的部分原因是由于编程语言人员(曾经只能在OOPSLA之类的生僻的学术会议中找到)介入到安全领域。这种介入导致了Java和.NET这种在设计中包含安全模型的现代语言的出现。当语言宣称是“安全的”时候,事情就变得非常有趣!攻击者和防御者之间不断提高的军备竞赛就进入到了一个新的层次,出现了新的安全设计方法,晦涩而难解的问题(比如“缓冲区溢出”)对下一代系统的影响变得越来越小。
2、 将来的安全人员来自何处
现在,已经开始实施学术和专业培训计划,培训下一代的安全专业人员。很快就将开发出标准的课程,要求学生们理解各种不同概念其实具有相同的核心。这一定有助于巩固计算机安全领域,但是,同时也存在一种危险,这一代人员可能导致单一的安全观点。安全领域存在成为一潭死水的风险,而不再是由跨越许多领域的各种各样的观点所支持的创新学科。如果我们小心地避免安全成为一种观点单一的领域,就应该在建立坚固的学术性学科的同时保持多样性的这一优势。一种方法是鼓励那些攻读计算机安全学位的学生广泛地学习其他看来与安全不相关的学科。另一种方法是,在领域内依然欢迎外部观点,并且不要置之不理。计算机安全必须一直是一种包容性的学科,以保持其创新性。
无论如何,我们都必须充分利用我们现在所处的形势。实际上,计算机安全正在经历一次重生,现在正是取得巨大进展的时候。我们必须密切注意各种不同的思想,包容变革,并帮助安全继续发展,使它变得更加明确。
相关文章推荐
- 两个云上的企业级移动工作软件 - iOffice:移动时代的工作方式,云之家:一种新的工作方式
- 软件安全学习笔记(2):80x86处理器的工作模式
- 想在美国找CS软件工作?Warald提供需要学习的书籍和课程名单,绝对从入门级讲解!
- 如何做好软件项目的验收工作
- 急急急急急急急急急急。大家好,一个毕业设计,要做一个vb(6.0)软件,需要一种查询技术,但不会做。
- 微软今天发布免费安全软件套装
- 我的 Windows 电脑已经不用安全软件好多年了
- 一款监督孩子上网的软件,不能让它出现在右下角.又需要它工作.该怎么设置
- 互联网安全险象环生 25大软件编程错误不可赦
- 软件测试工作中的沟通问题
- 我的第二份工作-在OA公司做软件测试工程师
- 工作4-5年的.NET开发人员也需要有人带带才可以保证软件项目的质量
- 把工作变成一种生活
- 综合利用一个身份认证漏洞,通吃多款趋势安全软件
- 日常运维工作中如何确保你的linux操作系统安全
- “鬼影”浅析 - 反病毒,信息安全,网络安全,反木马,病毒资讯平台,安全解决方案,电脑使用技巧,杀毒软件交流,anti-virus,民间反病毒联盟
- mac10.12.1破解软件启动报错,但是安全与隐私没有任何来源选项
- 在软件项目开发过程中,如果要求开发人员每天必须提交一份工作日志,你有什么看法?
- 从软件生命周期说项目经理工作职责与流程
- Android软件安全开发实践(下)