测试应用程序的安全性.ppt
《测试应用程序的安全性.ppt》由会员分享,可在线阅读,更多相关《测试应用程序的安全性.ppt(18页珍藏版)》请在三一办公上搜索。
1、测试应用程序的安全性,姚砺东华大学计算机学院,软件测试是一项非常复杂的、创造性的和需要高度智慧的挑战性任务。,我测故我在,软件测试的现状,软件测试在软件生命周期中占据重要的地位,软件测试慢慢的独立发展成为一个行业,并且在迅猛发展。对美国大量软件项目的观察结果表明,软件项目的成功在很大程度上依赖于软件测试的成功。软件测试在软件企业中担当的角色是“质量管理”,即及时纠错及时更正,为产品推向市场贴上“质量合格”的标签。开发与测试进攻与防守:好看靠进攻,冠军靠防守,软件测试的现状,对国际著名IT企业的统计数据表明,软件测试在整个软件项目中所占的比例为 40%以上,占整个项目费用的 50%以上,软件测试
2、人员与开发人员的人数比例接近1:1。国内软件企业在软件测试上的投入一般在 5%以下,测试人员所占比例很小(软件测试人员与开发人员之比仅为1:8),经常处于从属地位。中国软件工业要健康发展,必须正视和努力缩小这个差距。,微软的测试,“很多人都认为微软是一家软件开发公司,而事实上,我们是一家软件测试公司”比尔盖子 在微软内部,软件测试人员与软件开发人员的比率一般为1.5-2.5左右,软件测试的作用,软件质量与软件质量保证教学考试与教学质量保证软件开发的每个阶段都要测试,测试人员应该参与设计阶段:评审安全性设计传说中的微软测试部门的格言:没有最BT,只有更BT。,软件测试之独孤九剑,全程测试,测试先
3、行剑走偏锋 不走寻常路完全测试程序是不可能的软件测试是有风险的行为程序中的大部分错误往往是在一小部分模块中发现的-帕雷托定律设计周密的测试用例先求开展,后求紧凑,乃可缜密矣-九阴真经框起你的测试来刚中带柔,柔中带刚,如海中波涛,刚柔并济。排云掌第五式“云海波涛”具有良好的计算机编程基础优秀的安全测试人员格言:给我一个socket,我能破坏任何软件。,一次转身最远能产生多远的距离 从传统软件测试转向安全性测试,如果不付出相当大的努力去消除,每个复杂的软件程序都会有代价高昂的安全漏洞。这些漏洞会造成病毒和蠕虫的横行,也会使得罪犯能够攫取用户的个人财务数据,而这些用户已如惊弓之鸟,并且本来就很不愿意
4、把他们的个人数据放在Internet上。2005年,CardSystems成为数字化攻击的牺牲品,由于对信用卡数据在未加密情况下存储,有4000多万张借记卡和信用卡泄密,4个月后,这家公司倒闭出售。安全性测试:不是验证软件的正确性,而是挖掘软件的漏洞(软件中的“不应该”和“不允许”部分,例如:代码中的缓冲区溢出漏洞,电子秤中的作弊后门等)。-越崩溃越快乐!RFC2828将漏洞定义为“系统设计、实现或操作和管理中存在的缺陷或弱点,能被利用而违背系统的安全策略”例如:对于一个web输入界面的测试,其上有个字段【银行账号】(正确输入是12个数字),对该字段的测试包括:正确输入验证:正好12个数字(分
5、该账号存在和不存在两种情况验证)异常输入验证:(模仿用户的一些无意错误操作)输入不满12个数字,超过12个数字,有非数字字符,空,等等。安全测试:SQL注入攻击(用web代理来输入,绕过客户端的检验检查)、跨站点脚本输出、整数溢出等。安全测试的出发点:像攻击者一样思考,一些攻击模式的范例,验证用户输入不会提供机会让攻击者通过已知的SQL注入攻击来操纵后台数据库;验证不存在跨站点执行脚本的可能性;验证在向服务器发送一个它不能正确处理的非法数据包的情况下,服务器不会崩溃;验证用户输入不会导致数据处理溢出;验证程序对错误的处理是恰当的;验证数据在网络传输中或存储时是经过了保护的验证不会出现信息泄露验
6、证访问控制。,建立安全性测试计划-基于风险的安全测试,威胁/风险建模:排定安全测试的优先级。在对应用程序的设计和应用流程加以理解的基础上,可假定潜在的安全风险并对其进行评价。然后,根据易于攻击和攻击的影响严重性,将这些威胁进行分级并依次消除。然后安全测试人员就可以将其注意力集中于那些攻击难度最低而影响最大的领域。流程:信息搜集:需要测试哪个应用程序和应用程序中的哪些模块(组件),对每一个模块(组件)做哪些安全假设,每个组件的哪些安全因素需要测试,预期的结果是什么。登录页面:(见后)识别威胁将与威胁相关的风险进行分级潜在的破坏程度再现性和可利用性:探测并利用这个漏洞所做的努力受影响的用户,登录页
7、面的威胁分析,猜测口令:设计时应设计登录试探次数,例如:只许试探三次,然后锁定ip地址。利用password文件系统地猜测口令:加密文件(密码强弱,文件存放是否安全)分析协议和滤出口令:不能明文传输,密码的强弱重放攻击:加时间戳木马监视登录/口令:系统安全,一次性口令盗链:SQL注入漏洞异常输入破坏:,安全测试技术之七种武器,一个完整的WEB安全性测试可以从以下几个方面入手:1.安全体系测试网络是否提供了安全的通信部署拓扑结构是否包括内部的防火墙部署拓扑结构中是否包括远程应用程序服务器操作系统是否存在漏洞,例如Unix上的缓冲区溢出漏洞、Windows上的RPC漏洞、缓冲区溢出漏洞、安全机制漏
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 测试 应用程序 安全性
链接地址:https://www.31ppt.com/p-5995662.html