安全测试总结

安全测试的问题分类

  1. sql注入
  2. js攻击
  3. 缺head头
  4. 其他

安全测试的工具

  1. appscan
  2. BurpSuite

安全测试流程

  1. 启动网站(如果影响不大,可以把登陆退出功能暂时注释掉,在程序里写上固定的用户),确定网站可以正确运行,数据齐全(建议使用新建的数据库,因为安全测试会导入很多乱七八糟的数据)
  2. 运行测试软件,配置测试环境(比如数据库类型,系统类型等),手动探索,把所有的连接,功能什么的都运行一遍
  3. 进行安全测试(由于时间较长,所以要把测试服务器和测试机的节能关掉,以免自动休眠)
  4. 依次手动检验测试出来的每一个问题,力求复现每一个问题,删除误判的,导出测试报告
  5. 整理excel表格,依次列出每个问题的url,发生问题的参数,并标明修改进度(未重现,重现,修改完毕,复查完毕,已保留)
  6. 已重现的找相关人员进行修改,未重现的或者不理解的找相关人员或高级工程师进行咨询确认.
  7. 手动测试已经修改过的问题,确认不会复现
  8. 用测试工具打开上次的测试文件,重新测试.
  9. 根据测试结果再次整理漏洞进度表格
  10. 写测试报告

注意:

1.测试软件测出的问题不一定是准确的,只有能手动复现的问题才算漏洞.

2.不能复现的问题,不一定不存在,可能是你技术水平不过关或者复现方法有问题

3.测试软件没测出来的问题类型,不一定不存在,可以进行手动测试

4.测试软件测的某类问题不一定全面,如果测出一个问题,并且可以复现,那么其他类似的功能可能都有这个问题,即使软件没测出来

 

1.sql注入

问题产生原因:  后台没有使用框架的参数注入功能,而使用了sql字符串和参数的拼接

测试方法:  ' or 'f'='f' 或者 ' and 'f'!='f'

修复方法:  使用框架本身的set方法来注入值,或者转义参数中的特殊字符,比如',--等(这个方法不保险,因为总会遗忘一些东西)

 

2.js攻击

主要为XXS攻击和CSRF攻击

XSS攻击

问题产生原因:  后台传来的参数里面的特殊符号没有进行转义

测试方法:  '"> 或者'">

修复方法:  1.后台传参之前,对特殊符号进行转义.

     2.使用ajax等方法,获取参数后,在前台使用进行转义

     3.使用

     4.放入隐藏的textarea中,用js取出来使用.

CSRF攻击

问题产生原因:  没有区分请求的来源网站

测试方法:  写一个form表单,提交到测试网站中,看看是否能执行

修复方法:  添加一个随机的隐藏参数,参考网站 http://www.ibm.com/developerworks/cn/web/1102_niugang_csrf/

其他js攻击:盗用cookie,盗用会话标识....

 

3.缺head头

问题产生原因:  缺少head头或者meat标签

测试方法:  查看浏览器的network,看看response头有哪些

修复方法:  补充缺少的head头 (参考安全相关的head头)

 

4.其他

其他问题零零散散,也不少,有严重的,有不严重的,比如:

系统级别漏洞:可以任意上传下载文件(这个主要是把文件路径写在了参数里面),修改策略:路径应该保存再数据库,参数里写相应路径的id;

框架级别漏洞:比如当年的struts2的漏洞#xxx19(好像是这个号),可以直接被黑客操纵获取服务器的root权限,简直屌爆了.

参考漏洞:html中留有系统相关的注释(这里建议使用jsp的注释,源码可看,转成html就没了<%--”和“--%>

 

安全测试工具:

appscan:

我现在用的是appscan9.0,这个版本有破解文件,总体来说使用方便,可以生成美观的pdf格式的漏洞报告,很给力,缺点是很多误报

BurpSuite:

这个软件分为free版和收费版,free版只有拦截器的功能,不能进行安全测试,收费版可以进行安全测试,从我的几次操作来看,能测出一些appscan无法测出的问题.

当然,因为这个软件的破解不完全(到了一定时间破解就失效了),所以我通常用它来做拦截器

wireshark:

这个软件本身不能进行安全测试,但是由于抓包功能强大,所以可以作为辅助作用,比如当appscan频繁让你登陆时,你可以抓包看看发送的请求是不是缺少认证(我经历过一次,抓包显示appscan发送的请求总是缺少认证,由于appscan配置不是很熟练,所以把程序的第三方认证给删了).

 

转载于:https://www.cnblogs.com/lakeslove/p/6377731.html

你可能感兴趣的:(安全测试总结)