打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
应用系统安全测试指南
应用系统安全测试指南目的是指导应用系统安全测试工作,确保应用系统安全测试的充分性,减少应用系统安全漏洞,确保安全功能已被准确性实现。

测试过程

在编写源代码和得到目标码的过程,应进行必要的安全性测试。安全测试过程包括测试计划、测试环境准备和执行安全测试输出测试报告。

对于重要的应用系统,还应聘请外部公司专家,组织进行必要的源代码审查。

测试计划

试人员应首先理解应用系统安全需求,应用系统开发人员应配合测试人员理解应用系统安全需求和安全设计细节。

测试人员根据所理解的应用系统需求和安全设计,制定安全测试计划。安全测试计划作为整体测试计划的一部分,纳入整体应用系统测试管理工作。
测试人员应根据应用系统应用系统需求和安全设计,制定安全测试用例和方案,安全测试用例和方案应进行评审。
参与评审人员应包括需求分析人员、设计人员和编码人员,以及信息安全管理人员,针对测试用例的覆盖率和测试方案的合理性进行评审。

测试准备

在启动安全测试之前应做好测试前的各项准备,为测试人员提供符合要求的测试环境。

根据安全测试需要,安装部署应用系统,并开通相应测试账号、提供相应操作文档手册等。
提前预备好相关安全测试数据,如果需要生产测试数据,应提前进行申请,生产测试数据申请、脱敏、使用和销毁应遵循数据安全管理相关要求。
测试人员接收应用系统开发人员提供的安全测试对象,并进行相应确认和备份。

测试执行与结论

测试人员在执行安全测试过程中,发现系统安全功能缺陷和系统安全漏洞,记录相关信息的同时,应及时与应用系统开发人员沟通联系,进行问题确认和修复。

所有的安全功能缺陷和安全漏洞修复应进行相应的回归测试,确保修复安全功能缺陷和安全漏洞的同时没有产生新的问题。
测试人员完成安全测试后,应对安全测试用例的执行结果作客观描述,形成安全测试结论,纳入整体测试报告中。

Web安全测试用例参考

SQL注入测试方法:可以提交数据给数据库的位置

  • 类似asp?id=1的页面:判断方法在参数后提交and 1=1 ,and 1=2,如果and 1=1,返回正常页面,而and1=2,返回出错页面就有可能存在SQL注入,类似的方法也有提交单引号’根据页面的返回信息来判断。如一些SQL会返回出错提示,甚至暴露SQL类型等

  • 一些账号密码提交的页面:在可能的情况下都是通过web提交页面的源代码来分析问题,一般测试情况下都是提交一些经典的SQL指令,如’or’’=’或’ or 1=1 -- 等。

  • 其它一些input提交处:如一些页面的搜索查询处,某些甚至提交连续的单引号都可以暴露出源代码。
▼▼跨站脚本的测试方法:可供用户提交html或script的页面
  • 如用户发表文章,论坛帖子编辑,提交一些可能执行的代码测试,或是在一些附件里,如flash,嵌入脚本代码测试,简单测试如:<script>alert('1234)</script> 当没有过滤的页面被用户游览就会执行script代码,弹出一个1234的提示框。

▼▼应用层溢出检查方法:

  • 先在Web应用的输入位置(包括:URLCookieInputHTTP Header)输入超长的数据(一般为2K-64K),再发送正常数据请求,观测结果。

▼▼帐户锁定检查方法:

  • 使用某合法账号以错误鉴别码反复登陆系统,一般在10次以内。

▼▼弱口令检查方法:

  • 手工提交检查:提交可能的如123456这样的弱口令。
  • 口令检查工具:使用常用的口令如生日,单词等组成字典的方式,进行快速破解,一些工具如:朔雪,扫描器x-way等。

▼输入验证检查方法:

  • 输入很大的数(如4,294,967,269),输入很小的数(负数
  • 输入超长字符,如对输入文字长度有限制,则尝试超过限制,刚好到达限制字数时有何反应。

  • 输入特殊字符,:~!@#$%^&*()_+<>:{}|
  • 输入中英文空格,输入字符串中间含空格,输入首尾空格。
  • 输入特殊字符串NULL,null0x0d 0x0a
  • 输入正常字符串。
  • 输入与要求不同类型的字符,如要求输入数字则检查正值,负值,零值(正零,负零),小数,字母,空值要求输入字母则检查输入数字。

  • 输入htmljavascript代码。

上传控制检查方法:

  • 上传文件是否有格式限制,是否可以上传exe文件。
  • 上传文件是否有大小限制,上传太大的文件是否导致异常错误,上传0K的文件是否会导致异常错误,上传并不存在的文件是否会导致异常错误。

  • 通过修改扩展名的方式是否可以绕过格式限制,是否可以通过压包方式绕过格式限制。

  • 是否有上传空间的限制,是否可以超过空间所限制的大小,如将超过空间的大文件拆分上传是否会出现异常错误。

  • 上传文件大小大于本地剩余空间大小,是否会出现异常错误。
  • 关于上传是否成功的判断。上传过程中,中断。程序是否判断上传是否成功。
  • 对于文件名中带有中文字符,特殊字符等的文件上传。

信息加密传输检查方法:

  • 检查是否使用HTTPS连接,确保鉴别信息(或关键信息)是通过SSL加密传输的。

敏感信息存储检查方法:

  • 检查源代码可以确定敏感信息是否加密存储。确保客户端与服务端敏感信息(如:口令等)加密存储。

应用错误消息检查方法:

  • 手工方式有意执行错误操作,如:输入非法字符或内容,不按常规次序操作等。确保返回的错误信息不包含敏感信息。许多详细的错误消息会含有一些敏感信息,如:数据库错误信息、堆栈错误信息等,这些信息都能为攻击者所用。

 扩展  ·  本文相关链接  

· 应用系统安全设计指南

· 应用系统安全需求分析指南

· 系统开发安全管理规范

· 系统开发中安全控制要求落地(下)

· 系统开发中安全控制要求落地(中)

· 系统开发中安全控制要求落地(上)

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
常见安全漏洞及测试方法
快手取消授权管理应用的方法
教你使用IDS技术 防止SQL注入攻击
电子商务网站安全测试
​华为手机如何下载外部来源应用
淘宝口令设置方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服