软件源代码安全测试系统可行性分析报告.docx
- 文档编号:12745037
- 上传时间:2023-04-21
- 格式:DOCX
- 页数:10
- 大小:22.86KB
软件源代码安全测试系统可行性分析报告.docx
《软件源代码安全测试系统可行性分析报告.docx》由会员分享,可在线阅读,更多相关《软件源代码安全测试系统可行性分析报告.docx(10页珍藏版)》请在冰豆网上搜索。
软件源代码安全测试系统可行性分析报告
软件源代码安全测试系统
可行性分析研究报告
年月
一、项目的背景和必要性
随着社会信息化的不断加深,计算机软件系统越来越复杂,程序的正确性也难以保证,计算机病毒和各种恶意程序有了赖以生存的环境。
软件功能越来越负载,源代码越来越大,我们无法从编码的角度彻底消除所有的漏洞或缺陷,相当数量的安全问题是由于软件自身的安全漏洞引起的。
软件开发过程中引入的大量缺陷,是产生软件漏洞的重要原因之一。
不同的软件缺陷会产生不同的后果,必须区别对待各类缺陷,分析原因,研究其危害程度,预防方法等。
我区的软件业发展尚未成熟,软件测试没有得到足够的重视,大多数软件开发商更多注重的是软件的功能,对于加强软件的安全性投入不足,这更增加了软件安全漏洞存在的可能性。
系统攻击者可以解除软件安全漏洞轻易的绕过软件安全认证,对信息系统实施攻击和入侵,获取非法的系统用户权限,执行一系列非法操作和恶意攻击。
为了避免各种安全漏洞的出现,软件测试越来越受到开发人员的重视。
软件测试不仅仅是为了找出软件潜在的安全漏洞,通过分析安全漏洞产生的原因,可以帮助我们发现当前软件开发过程中的缺陷,以便及时修复。
软件测试可以提高源代码的质量,保证软件的安全性。
但是,软件测试是一个非常复杂的执行过程。
测试人员需要根据已有的经验,不断的输入各种测试用例以测试。
纯人工测试效率低,无法满足信息产业发展的需要。
我们需要高效的自动化测试源代码安全测试系统。
二、国内外现状和需求分析
2.1国内外发展现状
目前,常用的漏洞检测方法主要有:
安全扫描技术、代码审查、静态分析、动态监测等。
代码审查是人工阅读代码,检查是否有源代码级别的漏洞。
代码审查耗费人力物力,检查速度缓慢,不适用于大型项目的检测。
动态监测室在执行程序的基础上,动态监测程序的执行状态,来检查程序的正确性。
静态测试通过对待测源程序做词法分析,语义分析等源程序信息来检查待测程序。
静态测试在不执行程序的情况下,分析程序路径,有更高的覆盖率和检测速度,比动态监测更有效,能快速的找到安全漏洞。
静态分析是静态测试的基础,国内外在静态分析方面做了大量的研究,取得一定的成果,并研发出相应的静态分析工具。
目前较多使用的有Soot静态分析工具、PC-Lint静态分析工具、logiscope软件质量分析测试工具、FortifySCA源代码安全扫描、分析和风险管理工具、FindBugs静态分析工具等等,国内外已经对自动化测试工具做了很多研究,取得一定的成果。
2.2需求分析
随着软件事业的发展,人们逐渐的认识到,想要开发出高质量的软件产品,必须对软件的开发过程进行改善。
研究表明,相当数量的安全问题是由于软件自身的安全漏洞引起的。
软件开发过程中引入的大量缺陷,是产生软件漏洞的重要原因之一。
软件源代码安全性缺陷排除是软件过程改进的一项重要措施。
随着社会信息化的不断加深,人们不得不开始面对日益突出的信息安全问题。
不同的软件缺陷会产生不同的后果,必须区别对待各类缺陷,分析原因,研究其危害程度,预防方法等。
建立一个比较完整的缺陷分类信息,对预防和修复软件安全缺陷具有指导作用。
在中国的很多软件企业存在着重开发、轻测试的现象,造成日后的软件产品的质量问题频出。
目前软件测试人才的缺口在30万人以上,IT行业国内外巨头正在加紧争夺软件测试人才,华为曾一次抛出50名软件测试人员的招聘大单,而联想、用友、瑞星等企业也纷纷打出高薪招聘软件测试人才的启事。
由于国内软件测试工程师人才奇缺,并且一般只有大中型企业才会单独设立软件测试部门。
第三方测试能够拟补各方面软件测试日益增长的需求,特别是源代码安全测试,技术门槛高,软硬件设备要求高,企业不愿意在这方面投入大量的人力和物力资源,使得软件源代码测试有强烈的市场需求。
我区软件产业起步较晚,目前仍处于襁褓期。
至“十五”大以来……城市被批准列入国家信息化试点城市。
对于我区软件产业的迅速发展,同时也对软件产品质量、安全有更高的要求,这就需要相关专业软件方面的测试对软件产品质量、安全进行保障。
三、项目实施内容及方案
3.1总体思路
软件源代码安全测试系统项目的总体目标是通过该系统能够对Java、JSP、JavaSript、VBSript、C#、ASP.net、VB.Net、VB6、C/C++、ASP、PHP,Ruby、Android、APEX(AppExchangeplatform)等主流编程语言的跨站脚本攻击、SQL注入、Javascript劫持、日志伪造、缓冲区溢出等安全漏洞技术指标测试,覆盖所有代码路径和查找大部分的安全漏洞类型;建立软件源代码安全漏洞库和安全漏洞解决方案库。
培养和锻炼一批有技术能力的软件源代码安全测评人才队伍,为自治区信息安全管理部门提供数据支撑和决策依据。
3.2建设内容
(1)建立软件源代码安全测试系统平台。
配置主流软件源代码安全测试软件,针对C、C++、Java、C#等主流编程语言提供跨站脚本、SQL注入、缓冲区溢出、参数篡改等漏洞进行自动化测试。
配置主流服务器,为测试平台提供硬件支撑。
配置软件环境,windows、linux、unix、aix等操作系统、SQL数据库、weblogic、websphere中间件。
配置计算机、笔记本等硬件设施。
(2)配备软件源代码安全漏洞检测人员。
由于软件源代码漏洞分析对人员的技术要求也比较高,测试人员需具有2-3年的编程经验,也需要具备信息安全方面的技术,才能对自动化工具检测结果进行审查,降低误报率。
项目需要引进新的人才,同时做相应的培训。
培训内容包括①软件测试基础:
数据库管理、编程技巧、操作系统、网络安全;②软件测试:
测试基本理论、软件缺陷、测试过程、需求管理、文档编写、典型软件机制与缺陷模式、测试项目架构与管理、回归测试、测试报告;③测试工具软件培训;④源代码安全漏洞与分析。
(3)建立软件源代码安全检测实验室。
利用中心现有资源,建设计算机场地和实验室。
根据我中心质量管理体系建立软件源代码安全检测实验室管理规范;制定测试流程、测试用例库、作业指导书等技术规范。
3.3项目实施的组织管理
(1)成立项目实施组,确定项目总负责人
项目开始前,成立项目实施小组管理项目开发实施,确定项目总负责人负完全责任。
项目范围的管理包括下述内容:
a.项目业务范围
在项目每一阶段的前期,由业务部门与实施项目小组人员共同对业务需求做详细的调研和归纳总结。
b.项目实施工作
针对调研的结果,进行项目开发实施。
c.项目文档管理
详细记录项目的全过程,整理并最终提供所有技术和项目实施资料。
(2)项目实施组的组成及分工
整个项目的实施由项目总负责人领导下的项目实施组完成。
根据项目的具体要求,实施组又分为项目开发与实施、测试、培训与文档等几个小组。
a.项目工程师:
了解项目需求,提供技术方案;配合项目总负责人明确项目的实施内容;协助项目总负责人解决、解答有关项目合同中的技术问题。
b.项目开发与实施组:
接受项目总负责人分配的任务,了解项目的需求,了解项目实施的内容;按项目计划要求具体实施项目;按时保质项目现场实施工作;在项目现场提供必要的现场操作说明;将项目中出现的问题及时反映项目总负责人;及时记录现场操作内容,形成必要的项目实施文档。
c.测试组:
在质量控制小组和技术专家组的指导下完成项目测试文档;测试手段的准备,对项目内容进行系统测试;及时将所发现的问题向质量控制小组和有关的部门通报。
d.培训组:
负责完成项目的培训工作;完成相关培训文档。
e.技术文档组:
负责检查整个分析和设计文档的风格一致性、完整性;完成整个系统开发过程中,各阶段文档的修订,管理及打字工作;由专人负责技术资料的归档和分类管理。
3.4项目实施进度计划
序号
时间安排
内容摘要
1
201x年9月至2016年11月
可行性报告、实施方案设计、专家评审等。
2
201x年12月至2017年4月
完成实验室软硬件、办公设备采购以及所需办公场所、机房的调整。
管理队伍建设,运行相关制度、规章的编制等。
3
201x年5月
系统安装调试。
4
201x年6月
人员培训。
5
201x年9月
组织验收、系统试运行。
6
201x年10月
正式运作,投入使用。
四、实施项目所需条件及解决措施
4.1条件需要论述
依据本项目的实际情况,本项目实施所需条件如下:
(1)人力资源
要求拥有足够的专业从事源代码测试、实验、测试的工作人员,并按相应的要求进行配备、管理。
(2)场地
具有符合要求的实验、测试及办公场所。
(3)仪器设备、软硬件环境
基础平台:
含机柜、交换机、路由器、PC机、服务器等硬件设施;含操作系统、数据库、源代码安全扫描软件等软件设施;通过软件和硬件的结合,构建一套基础平台,满足网络通讯、终端操作、业务承载等基础功能。
安全设施:
提供基本的安全功能,如:
接入控制;访问控制;数据加密;入侵检测;漏洞检查;漏洞验证;攻击防护;安全审计等设备。
使用者可以通过在基础平台上使用这些安全设施进行安全研究、攻击演示和系统测评等工作。
管理设施:
提供设备统一管理,日志收集分析,安全数据分析等管理类功能,可以对安全实验室的资源进行统一整合的管理支持。
4.2承担单位具备的条件及欠缺条件解决措施
软件源代码安全测试系统搭建工作由XXXXXXX承担,该所实施此项目已具备一定的基础。
(1)人力资源
XXXXXXX成立xx多年来,培养了一批专门从事信息安全、电子信息应用和推广方面的专业技术人员,专业技术人员大部分是计算机、信息安全、通信、电子、电子商务等或相近相关专业;长期以来从事信息安全、电子信息工程技术,电子信息科技管理,电子信息经济管理等方面的工作,相关经验比较丰富,能承担此项目的各项工作。
(2)场地
XXXXXXX自有办公楼一栋,使用面积约平方米,有充足的符合要求的场地来建设软件源代码安全测试系统。
(3)仪器设备、软硬件环境
XXXXXXX有良好的网络基础设施平台,Internet接入系统;
XXXXXXX各类检测、试验仪器设备及标准计量器具等600多台(套),有部分仪器设备(防火墙、入侵检测、入侵防御、服务器等)可用于搭建软件源代码安全测试系统;
XXXXXXX原有实验室的仪器设备、软硬件环境是建设软件源代码安全测试系统的基础。
(4)相关技术基础
XXXXXXX具备信息安全测评、信息系统测评、专业智能化系统测评的能力,在信息安全测评相关方面积累了丰富的实践经验。
目前,XXXXXXX为项目的实施打下了良好的基础,并为实施项目购置好了下表中的部分软硬件设备,表中软硬件设备购置完备后将可以建设软件源代码安全测试系统。
总投资:
设备投入资金:
名称
数量
合计(万元)
测试工具
1套
工具更新服务
1套
服务器
1台
测试笔记本
2
系统集成及运维资金:
5万
名称
数量
合计(万元)
测试环境集成
1
支持环境集成
1
培训资金:
4万
名称
数量
合计(万元)
产品培训
/
软件测试知识及技能培训
/
其它:
1万
名称
数量
合计(万元)
仪器设备计量检定校准费用
/
专家评审费
/
项目总投资万元,申请纳入预算管理的非税收入拨款万元。
五、投资估算,资金筹措
5.1项目投资估算
项目投资估算表
序号
项目名称
投资预算(万元)
备注
1
设备投入资金
/
2
系统集成及运维资金
/
3
培训资金
/
4
其他费用
/
合计
/
5.2资金筹措
总投资0万元,申请纳入预算管理的非税收入拨款0万元,用于设备采购、系统集成、人员培训、组织专家论证等支出。
六、经济、社会效益及学术价值分析
软件源代码安全测试系统实施及工作的开展,可以加强对我区软件产品质量监督检验力度,充实软件产品安全检测能力,保证软件产品及系统运行安全;推动我区软件产业发展,为提高我区软件产业技术、质量提供更有力的保障;完善我区软件行业检测体制,为公众提供有效便捷的本地服务,提供更完善的信息系统安全检测服务。
软件源代码安全测试系统的建设具有良好的社会经济效益和较高的学术价值。
七、项目风险性及不确定性分析
7.1不确定性分析
该项目的实施前期对人力资源的需求较高,需要有相关经验的高级人才,因此需要资金投入对于人才的培训、学习,同时也需要资金购入关键设备作为软件源代码测试支撑,如果资金无法保证,将会给项目带来很大的困难,这也是目前系统所存在的较大风险。
软件产业是当前国家和自治区重点扶持的行业,国家与我区的投入都在逐渐增加,但也存在着产业政策调整的可能性,同时,国家其它相关法律、法规的颁布与修订以及产业政策、税收政策等方面的调整都可能会给该平台的研发带来不确定的风险。
7.2市场风险分析
党的十六大提出了“以信息化带动工业化,以工业化促进信息化”的战略举措,这为今后软件业的发展提供了广阔的舞台,给软件产业提供了新的发展机遇。
近十年来我国软件产业始终保持了30%左右的年增长率,并已形成一定规模,具备了较好的发展基础。
我区软件产业的迅速发展,同时也对软件产品质量、安全有更高的要求,这就需要相关专业软件方面的测试对软件产品质量、安全进行保障。
因此,可以说本项目的市场前景非常广阔,市场风险小。
7.3技术风险分析
我单位已建立了一支技术过硬、水平一流的技术队伍,已取得了国家相关部门授予的相关的资质,在信息安全、信息系统测试、计算机网络方面拥有先进的技术和丰富的实践经验。
因此该项目拥有很好的技术条件,产生技术风险的可能不大。
八、项目主要承担人员概况
8.1项目负责人情况
8.2主要承担人员及责任分工
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 源代码 安全 测试 系统 可行性 分析 报告