软件安全测试是指有关验证应用程序的安全等级和识别潜在安全性缺陷的过程,应用程序级安全测试的主要目的是查找软件自身程序设计中存在的安全隐患,并检查应用程序对非法侵入的防范能力,根据安全指标不同测试策略也不同。
软件安全测试方法分主要为三种:
1、静态的代码安全测试:主要通过对源代码进行安全扫描,根据程序中数据流、控制流、语义等信息与其特有软件安全规则库进行匹对,从中找出代码中潜在的安全漏洞,静态的源代码安全测试是非常有用的方法,它可以在编码阶段找出所有可能存在安全风险的代码,这样开发人员可以在早期解决潜在的安全问题,而正因为如此,静态代码测试比较适用于早期的代码开发阶段,而不是测试阶段;
2、动态的渗透测试:渗透测试也是常用的安全测试方法,是使用自动化工具或者人工的方法模拟外侵入者的输入,对应用系统进行攻击性测试,从中找出运行时刻所存在的安全漏洞,这种测试的特点是真实有效,一般找出来的问题都是正确的,也是较为严重的。但渗透测试一个致命的缺点是模拟的测试数据只能到达有限的测试点,覆盖率低;
3、程序数据扫描,一个有高安全性需求的软件, 在运行过程中数据是不能遭到破坏的,否则会导致缓冲区溢出类型的攻击,数据扫描的手段通常是进行内存测试,内存测试可以发现许多诸如缓冲区溢出之类的漏洞,而这类漏洞使用除此之外的测试手段都难以发现。
软件安全测试流程阶段:
1、测试准备:确定测试对象、测试范围、测试相关人员权责;
2、测试方案:按要求整理撰写《安全测试方案》 ,并完成方案审批;
3、测试计划: 测试方案通过后, 协调确认各相关人员时间, 形成测试计划;
4、实施测试:按计划实施软件安全测试工作,输出《软件安全测试报告》 ;
5、回归测试:问题修复,回归测试循环进行,直到没有新的问题出现;
6、测试总结:测试过程总结,输出文档评审,相关文档归档。
软件安全测试反向安全性测试过程:
1、建立缺陷威胁模型:建立缺陷威胁模型主要是从已知的安全漏洞入手,检查软件中是否存在已知的漏洞,建立威胁模型时,需要先确定软件牵涉到哪些领域,再根据各个领域所遇到的攻击手段来进行建模;
2、寻找和扫描入侵点:检查威胁模型里的哪些缺陷可能在本软件中发生,再将可能发生的威胁纳入入侵点矩阵进行管理,如果有成熟的漏洞扫描工具,那么直接使用漏洞扫描工具进行扫描,然后将发现的可疑问题纳入入侵点矩阵进行管理;
3、入侵矩阵的验证测试:创建好入侵矩阵后,然后可以针对入侵矩阵的具体条目设计对应的测试用例,然后进行测试验证。
软件测试中的安全测试包括哪些方面:
1、xss跨站脚本攻击:数据输入参数中输入简单的js语句看会不会执行,常见的恶意JS脚本有获取用户的cookie、或者是键盘钩子来记录用户的键盘输入;
2、sql 注入:在查询参数中,输入正确的查询条件1=1,其他SQL,查看返回结果,目前这种安全性问题已经绝迹了,除非是lowb写的代码;
3、登录认证:抓包是否存在明文的用户名和密码;
4、代码注释:源代码注释部分是否含有敏感信息;
5、锁定机制:多次登录错误,对账号进行临时锁定;
6、验证码:验证码需一致方可通过验证;
7、修改密码:需输入旧密码或者发送短信验证;
8、默认账户名称:默认账户名称密码,设置复杂些;
9、错误页面跳转提示:跳转的提示是否出现代码等错误,捕获异常跳转至同一错误页面,避免对外泄露详细错误信息。
我们公司本着“客户至上,诚信至上”的原则,秉持“管理创造价值、服务提升优势、品质至上、服务至优"的发展理念,欢迎新老客户参观与咨询。
http://zmrjcp.b2b168.com
欢迎来到湖南卓码软件测评有限公司网站, 具体地址是湖南省长沙岳麓区湖南省长沙市岳麓区旺龙路芯城科技园5号7楼,联系人是吴经理。
主要经营湖南卓码软件测评有限公司是一家致力于第三方计算机软件测试服务的专业公司,出具的第三方软件测试报告全国各地、国际均有效。公司拥有专业的软件测试团队和科学的管理机制,拥有先进完善的计算机网络硬件平台和系统软件平台环境,拥有完善的自动化测试工具环境。可根据客户的需求到客户现场服务,或为客户在公司部署各种复杂度的系统测试环境进行测试服务。。
单位注册资金单位注册资金人民币 250 - 500 万元。
我们公司主要提供第三方软件测试,第三方软件测试机构,软件测试公司,第三方软件测试报告,软件测试机构,软件检测报告等服务,我们确信,凭借我们的专业服务和良好的协调、沟通能力,使客户在经营生产中顺利进行,协助客户不断成长,在合作中与客户实现共赢。欢迎您致电咨询!