论文部分内容阅读
当前,开源软件因其源码开放、扩展性强、使用门槛低等优势受到人们的青睐,在各领域得到广泛应用。然而,由于人们对开源软件安全性重视程度不够、安全检测机制不完善等原因,开源软件近年来相继爆出HeartBleed、ShellShock等安全事件,警醒了世人。因此,论文从开源软件安全性评测的视角,对应用广泛的开源监控软件Zabbix进行了研究。论文首先针对近年来开源软件爆出的安全事件进行了分析,并对漏洞产生原因进行了反思。接着,论文分析了软件安全性,总结了软件安全性测试内容,重点探讨了B/S架构软件的安全性测试方法,为论文的研究工作打下了基础。论文应用软件成熟度评估理论,构建了一个适用于开源软件的安全性评测模型。评测模型的内在指标包括代码质量、用户安全、前端稳定、数据存储和后台安全,外在指标包括社区活跃度和软件支持度。内在指标和外在指标逐层细化分为七个一级指标和十七个二级指标。将软件安全性分为五个等级,同时给出了相应的划分标准及权重设定方法。最后,基于测试模型,详细论述测试流程,给出设计思想,分析测试优先级,介绍测试工具。该安全性评测模型的建立能够为开源软件的开发与技术应用提供重要依据。最后,本文应用提出的基于成熟度的开源软件安全性评测模型,对企业级开源分布式监控系统Zabbix进行了安全性评测。先通过代码质量管理软件Sonar对Zabbix进行了检测,在代码层分析软件内部存在的漏洞问题,再借助单元测试等方法对其API、边界值等问题进行检查,随后使用自动化测试方法对用户安全、前端稳定性等方面进行了评测,还对该软件的数据存储、日志、后台权限等进行了审查,最后结合Zabbix的社区活跃度与软件支持度对软件安全性进行了评测计算。分析结果表明,Zabbix软件在用户安全、前端稳定性、数据存储及后台管理这几个方面良好,而代码质量方面仍存在安全缺陷。论文工作为开源软件安全性评测工作提供了重要参考,也为广大企业对Zabbix开源软件的选择和应用提供了帮助。