软件安全开发培训机构名称讲师名字课程内容2软件安全开发知识体知识域软件安全开发概况软件安全设计软件安全编码软件安全测试软件安全开发的关键工作软件安全开发简介软件安全开发背景知识子域软件安全开发项目管理知识域:软件安全开发概述知识子域:软件安全开发必要性了解软件安全问题及其原因了解传统软件开发的局限性和软件安全开发必要性3软件安全重要性–软件危机第一次“软件危机”-20世纪60年代根源:汇编语言不能处理日益庞大和复杂的程序解决:高级语言的诞生-FORTRAN和C第二次“软件危机”-20世纪80年代根源:大型程序:数百万行,数百人同时开发解决•面向对象语言-C++/java/c#•软件工程第三次“软件危机”-21世纪头十年根源:软件安全?4软件安全问题广泛存在软件应用广泛电脑游戏、火车票售票系统、多媒体教学手机、航天飞机、人造卫星…软件安全问题广泛存在运行错误售票系统反应慢、连不上、崩溃多媒体教学系统死机黑客盗取泄漏的银行密码…安全问题日益增加…5软件安全问题产生后果软件安全问题的后果造成产品运行不稳定,得不到正确结果甚至崩溃•可靠性、可用性被恶意攻击,导致信息泄漏/数据破坏等后果•保密性、完整性一些因软件安全问题导致的严重后果售票系统瘫痪美国放射治疗仪超剂量辐射事件阿丽亚纳5号火箭首发失败事件Stuxnet病毒攻击伊朗布什尔核电站6漏洞情况统计中国国家漏洞库最近七年漏洞数量情况统计7软件安全问题原因存在诸多安全问题的原因软件开发周期短,工作量大,无暇顾及安全软件设计时缺乏安全设计软件开发人员缺乏安全编程经验功能越来越多,软件越来越复杂软件模块复用,可扩展性/灵活性要求高互联网环境下的安全挑战根本原因存在漏洞存在威胁8软件漏洞逐渐增加9软件越来越复杂10•Windows系列软件源代码行数漏洞与软件安全漏洞已经成为危害软件安全的主要因素危及用户对软件的信任、业务运营,还会危及一系列关键基础设施和应用漏洞普遍存在普通软件工程师,每千行代码(KLOC)•存在20个缺陷由于采用严格的软件开发质量管理机制和多重测试环节,软件公司的缺陷率(每千行代码)•普通软件开发公司的缺陷密度为4~40个缺陷•高水平的软件公司的缺陷密度为2~4个缺陷•美国NASA的软件缺陷密度可达到0.1个缺陷11美国重视安全开发和源代码安全2007年美国空军成立了“ApplicationSoftwareAssuranceCent...