软件安全测试可以混在单元测试、集成测试、系统测试里一起做,但对安全性有较高需求的软件,则必须做特有的安全性测试,以便在破坏之前预防并识别软件的安全问题。
软件安全测试反向安全性测试过程:
1、建立缺陷威胁模型:建立缺陷威胁模型主要是从已知的安全漏洞入手,检查软件中是否存在已知的漏洞,建立威胁模型时,需要先确定软件牵涉到哪些领域,再根据各个领域所遇到的攻击手段来进行建模;
2、寻找和扫描入侵点:检查威胁模型里的哪些缺陷可能在本软件中发生,再将可能发生的威胁纳入入侵点矩阵进行管理,如果有成熟的漏洞扫描工具,那么直接使用漏洞扫描工具进行扫描,然后将发现的可疑问题纳入入侵点矩阵进行管理;
3、入侵矩阵的验证测试:创建好入侵矩阵后,然后可以针对入侵矩阵的具体条目设计对应的测试用例,然后进行测试验证。
软件测试中的安全测试包括哪些方面:
1、xss跨站脚本攻击:数据输入参数中输入简单的js语句看会不会执行,常见的恶意JS脚本有获取用户的cookie、或者是键盘钩子来记录用户的键盘输入;
2、sql 注入:在查询参数中,输入正确的查询条件1=1,其他SQL,查看返回结果,目前这种安全性问题已经绝迹了,除非是lowb写的代码;
3、登录认证:抓包是否存在明文的用户名和密码;
4、代码注释:源代码注释部分是否含有敏感信息;
5、锁定机制:多次登录错误,对账号进行临时锁定;
6、验证码:验证码需一致方可通过验证;
7、修改密码:需输入旧密码或者发送短信验证;
8、默认账户名称:默认账户名称密码,设置复杂些;
9、错误页面跳转提示:跳转的提示是否出现代码等错误,捕获异常跳转至同一错误页面,避免对外泄露详细错误信息。
软件安全测试一般分为两个层次:
1、即应用程序级别的安全性和操作系统级别的安全性,应用程序级别的安全性,包括对数据或业务功能的访问,在预期的安全性情况下,操作者只能访问应用程序的特定功能、有限的数据等;
2、操作系统级别的安全性是确保只有具备系统平台访问权限的用户才能访问,包括对系统的登录或远程访问。
软件安全测试流程阶段:
1、测试准备:确定测试对象、测试范围、测试相关人员权责;
2、测试方案:按要求整理撰写《安全测试方案》 ,并完成方案审批;
3、测试计划: 测试方案通过后, 协调确认各相关人员时间, 形成测试计划;
4、实施测试:按计划实施软件安全测试工作,输出《软件安全测试报告》 ;
5、回归测试:问题修复,回归测试循环进行,直到没有新的问题出现;
6、测试总结:测试过程总结,输出文档评审,相关文档归档。
我们公司本着“客户至上,诚信至上”的原则,秉持“管理创造**、服务提升优势、品质至上、服务至优"的发展理念,欢迎新老客户参观与咨询。
湖南卓码软件测评有限公司成立于2015年06月,具备CMA、CNAS资质,是一家致力于第三方计算机软件测试服务的专业公司,出具的第三方软件测试报告全国各地、**均有效。公司名称中的“卓码”寓意公司将以**的服务质量为用户的产品品质保驾**。 公司拥有专业的软件测试团队和科学的管理机制,拥有完善的计算机网络硬件平台和系统软件平台环境,拥有完善的自动化测试工具环境。可根据客户的需求到客户现场服务,或为客户在公司部署各种复杂度的系统测试环境进行测试服务。