近抽了2天时间研究了下Appscan工具,针对登录这个简单的操作流程进行了下扫描。下面总结了几点自己个人的想法。
  1.Appscan扫描出的问题
  (1).跨站点脚本攻击(http://g2.mail.10086ts.cn/serviceapi/CommonRequest.ashx?)
  针对http://g2.mail.10086ts.cn/serviceapi/CommonRequest.ashx?sid=>"'><script>alert(1292)</script>&r=>"'><script>alert(1292)</script>&mobile=>"'><script>alert(1292)</script>&reqtype=>"'><script>window.location="http://www.baidu.com";</script>
  (2).检测到敏感文件和隐藏目录
  例如:http://g2.mail.10086ts.cn/addr/apiserver/,这样的目录很多,修改的建议是:将Web服务器配置成拒绝列出目录
  (3).web应用程序源代码泄露
  扫描出部分js文件中含有程序源代码,例如;CookieUtils.js
  (4).SQL 盲注
  登录时,能扫描出用户的用户名和密码!但我查看了例如QQ,网易的邮箱登录后,利用抓包工具都能抓出“密码”出来!
  2.APPSCAN使用问题
  (1) .先前在web中,登录邮箱不能扫描到具体的模块,提示不在会话环境中。可以通过加域然后进行手动搜索来解决。例如在域中加入:g0.mail.10086ts.cn.
  wap可以用开发提供的链接地址,然后手动搜索来扫描具体模块的URL
  (2).扫描中,自动提示和推荐的记录两种扫描方式依然会报在会话环境中。
  测试时,没有登陆成功,可以参照下login  expert这个小工具,其可以辅助AppScan工作。看如何设置登录,哪些参数需要关联等。
  3.对安全性测试的认识:
  (1).安全性测试,其实应该在开发编程中进行投入。例如在公司项目里程碑的基础上,加入安全性验证这环节!做安全性,应该开发先具备安全编程的知识。
  (2).Appscan不足点:在开发编码完成后,才进行验证。已经错过了佳修正时期。
  (3).经过这次对Appscan和安全性的研究,发现安全性测试的学习成本很高!消耗时间相当长。首先你需要对编程知识有一定的了解,各门语言!然后对常规漏洞攻击方式和攻击工具都具备一定的执行能力,例如:sql注入.跨站,XSS攻击。主要的是对公司的代码有一定深度的了解,不然和开发交流的时候,不能使其信服。(不说比开发了解,但不能比开发差)。如果单只是用扫描工具进行扫描,自动生成报告,丢给开发,觉得安全性工作效果不大。
  (4).扫描工具结果的理解!针对扫描出来的漏洞,单作为测试人员理解比较困难,需要经验的积累和知识的补给!Appcan工具只是提供了一个安全改进的参考,重点还在于漏洞的修复。
  安全测试,工具是实现思想的手段,了解一下安全测试的领域知识是很需要的。