51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 12119|回复: 40
打印 上一主题 下一主题

大家还在迷信工具么

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-9-25 10:43:46 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
做web的安全测试也有些日子了,以前没有到这个版块来过,今天看了看版面上大家都在讨论工具如何如何使用,而很少讨论安全漏洞的原理,我就给大家泼泼凉水,谈谈工具的局限。
先说下扫描工具的原理:
扫描工具可以看做由两部分组成:爬虫+校验机构。爬虫的作用是搜集整个被采集对象的链接,然后校验机构对这些链接逐一进行验证。
然后说扫描工具的局限:
局限1:扫描未必全面
一个网站,能不能被扫描全面,很大程度取决于爬虫搜集链接的能力。我做过爬虫的测试,所以大致知道爬虫的原理,就是对给定的入口地址发起请求,然后从返回的内容中抽取链接,然后再请求抽取到的链接,如此反复。包含在HTML中的链接,很容易被抽取到,但是由js生成的链接,抽取的时候就有些难度了,由Flash生成的链接,更是难于被抽取到。此时有人想说图片验证码了吧?我们做测试可以要求网站开绿灯,暂时屏蔽验证码,这个倒可以不考虑。目前ajax技术的流行,更让爬虫搜集链接的能力显得捉襟见肘。所以这就暴露出了扫描工具的第一个局限,扫描未必全面。
局限2:对屏蔽错误信息的网站效果不好
如果你觉得扫描不全面可以通过多分析和从不同的入口地址多测试几遍可以克服的话,这个局限就稍微比上边那个有点难度了。这个主要是“校验机构”的局限,校验机构的工作原理是对特定格式的链接或者特定格式的表单匹配特定的模拟攻击用例,模拟攻击。我们知道,攻击是一个请求的过程,也就是一个request,而攻击的结果怎么看?只能从response里看了。以SQL注入为例,当发送一个1'这样的参数值到后台之后,如果返回页面内容中包含了SQLException,那么扫描工具就认定它是一个SQL注入漏洞。但是如果网站设置了错误页面,在有异常发生时直接跳转到一个错误页面,告诉你“出错啦!”,然后再没其它信息,采集工具怎么判断是否存在漏洞?难道你去跟研发人员说“麻烦您把错误页面去掉”吗?要真说了,我们高傲的研发人员肯定不会给你好脸色的。
局限3:对特定的场景不适合
局限3跟局限2多少有些类似,但性质不太一样,局限3是指某些特定场景。扫描工具扫描bug的原理,1和2里叙述的差不多了,这里我们举两个例子吧,看了例子大家看看怎么用扫描工具来发现这俩漏洞,要是不能发现,那就是扫描工具的局限了。第一个:有个网站允许用户注册,用户注册后还允许用户修改个人信息,但是修改个人信息的这个地方有个SQL注入漏洞。我们知道,一般修改个人信息的SQL大致是这样的update [userinfo] set password='1111', email='abc@163.com' where uid='男孩子',如果一个用户修改自己密码的时候把密码设为了1111'--,这样,如果存在SQL注入漏洞,所有注册用户的密码都变成了1111。这里有漏洞吗?有!但是工具能发现吗?除非查看数据库,否则根本发现不了这问题。再看第二个:站内消息我们很多时候都用到,假设站内消息存在XSS漏洞,那么A给B发了这么一段恶意的脚本,但是从A那边看跟普通消息的发送是没什么区别的,所以扫描工具就发现不了这个问题,除非再用账号B来登录进行扫描。但是,这个看着简单,实际上操作起来却比较难。你怎么知道扫描工具模拟攻击的时候发消息给了B,而没给C或者D或者E呢?所以这个时限起来也是不现实的。同样道理的还有在外网提交了留言,到管理台审核这种模式,都存在类似问题。
以上只是列举了3点,算是提醒大家多注意一点工具以外的事儿吧,测试这个东西,不是拿个工具就能搞定的。我说这些不是说大家以后不要用工具,而是要正确的用工具。一个测试申请提交以后,应该首先分析哪些地方可能是工具覆盖不到的,把这些地方先人工检查,剩下的再用工具做全站覆盖扫描。

555,写这个花了一个多小时,一天的1/8就没了。不知道说这点有没有用,大家看看一起讨论吧。测试人员待遇低,还得被研发甩脸子,一起团结起来学习进步吧。
欢迎大家多回帖多讨论,本人原创哦。
我平时用到的工具有WebInspect和AppScan,希望讨论这俩工具使用的,也可以跟我联系。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    奋斗
    2015-5-5 11:15
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    41#
    发表于 2015-5-5 11:26:19 | 只看该作者
    都是大神啊。新手小白跟各位学习。刚装上appscan,现在还在摸索中。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-2-1 08:26
  • 签到天数: 113 天

    连续签到: 1 天

    [LV.6]测试旅长

    39#
    发表于 2015-3-27 10:33:24 | 只看该作者
    很好,学习了。。。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-6-24 15:34
  • 签到天数: 50 天

    连续签到: 1 天

    [LV.5]测试团长

    38#
    发表于 2015-1-20 16:40:33 | 只看该作者
    厉害,很赞同,学习了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-6-24 15:34
  • 签到天数: 50 天

    连续签到: 1 天

    [LV.5]测试团长

    37#
    发表于 2015-1-7 13:16:54 | 只看该作者
    恩,不错,很赞同
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    36#
    发表于 2012-11-27 14:40:37 | 只看该作者
    回帖接分
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2022-5-8 19:23
  • 签到天数: 137 天

    连续签到: 1 天

    [LV.7]测试师长

    35#
    发表于 2012-11-27 13:19:56 | 只看该作者
    工具还是有用的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    34#
    发表于 2012-11-27 12:35:52 | 只看该作者
    受教受教。。。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    33#
    发表于 2012-11-27 12:30:02 | 只看该作者
    没有迷信过
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    32#
    发表于 2012-11-27 10:36:31 | 只看该作者
    确实工具是死的,要用工具,但不能全信工具,要知道道理,会分析问题。
    总体来说,工具是必须使用滴,不用工具手工做安全测试显然是明智的,也是几乎不可能的
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2015-5-19 13:02
  • 签到天数: 6 天

    连续签到: 1 天

    [LV.2]测试排长

    31#
    发表于 2012-8-16 09:52:08 | 只看该作者
    有够长,没有看完,只想说一下:
    工具真的是死的,但却不能没有,理由很简单,数据量大。在发现了一个漏洞 ...
    smilex 发表于 2010-12-28 05:28



        这个过程我还处于入门,其实连门都没入,只是蹭了点皮毛,很受教,但是对于安全测试本人现在还是完全依赖于工具,甚至工具检查出来的结果我都无法验证,网上关于工具的结果分析资料很少啊
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    30#
    发表于 2012-7-26 14:33:40 | 只看该作者
    不错的贴,初学者还在靠工具学习。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    29#
    发表于 2012-7-26 14:33:31 | 只看该作者
    不错的贴,初学者还在靠工具学习。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    28#
    发表于 2012-6-6 14:51:34 | 只看该作者
    收藏,以后看,不过目前也没迷信,嘿嘿
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    27#
    发表于 2012-2-13 11:10:37 | 只看该作者
    的确不错,才学习工具就是这样,但是一开始很多不懂只能依赖工具啊,主要就是缺少在现实中自己手动实际操作,但是在自己操作的过程中不是所有的自己都能研究会,主要缺少一些相关的引导,而工具的很多说明没有通用性,所以学习起来就是比较困难的,所有这就是测试人员目前的一个瓶颈。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    26#
    发表于 2012-1-9 20:13:12 | 只看该作者
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    25#
    发表于 2011-12-12 11:15:35 | 只看该作者
    工具是死的,得到的结果,太没说服力了,必须还是能知道原理,能实现漏洞利用,希望楼主来点更深入的东西
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    24#
    发表于 2011-11-9 09:45:29 | 只看该作者
    正在学习安全测试,学习啦!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    23#
    发表于 2011-1-13 12:50:17 | 只看该作者
    楼主的QQ号是多少!有时间可以沟通
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-10-1 00:35 , Processed in 0.112127 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表