Fooying

专注于安全研究与安全自动化
  • 编程开发
  • 安全研究
  • 漏洞分析
  • 恶意网站
  • 安全科普
  • 移动安全
  • 思想碎片
  • 联系留言
  • 帮我们找漏洞的扫描器
    2014年05月24日|安全科普, 编程开发|0 条评论
    bd434f075a13c2d22fdb01e0f1a7bfbb_b

    刚跟COS读者群的一个自称是外国人的的读者聊完天。问我是不是黑客,然后想学黑客,我居然用我那蹩脚的英语基本跟他聊了半天,各种鼓励。不管是否是真的外国人,瞬间觉得我人生格调变高了,也惊叹cos的粉丝都有外国人了。
    其实看到有个外国人发消息给我,第一时间觉得是装的,来社工的,后面聊了下感觉不像是装的,不过也没聊任何感觉像是社工相关的话题,他是不是装的就无所谓,没聊到相关隐私的问题,哈哈(我发完微博发现大家意识都很好,第一想到的就是社工和钓鱼,也可能我听众和关注的都是搞安全的)。 

    每次开题前总要与大家闲扯下,哈哈。来北京有一两个礼拜了,现在在公司做的是公司Web漏洞检测引擎的开发工作,安全与开发相结合,自己觉得挺喜欢的。扯多了,做Web漏洞检测引擎的工作,所以自己对于这边多多少少做了一些功课,所以今天来与大家聊聊这方便的话题,如果有不对的观点欢迎大家指出(下面讲到扫描器都是讲Web漏洞扫描器)。

     

    先来给个专业的概念把,嗯,不说我解释的,也是网上找的,哈哈。

     

    漏洞扫描是指基于漏洞数据库,通过扫描等手段对指定的远程或者本地计算机系统的安全脆弱性进行检测,发现可利用的漏洞的一种安全检测(渗透攻击)行为。

    不知道大家都用过什么扫描器?有同学会问,啊D漏洞注入工具、HDSI算吗?穿山甲、JSky是吗?我觉得都是。可能有的同学又会说,啊D、HDSI、穿山甲更偏向是攻击测试方面,这些我们下文再细细讨论。

     

    先来说说一个话题,怎么分类?Web漏洞扫描器,在我看来可以分为两种情况,一种是比较通用型的,比如Nessus,可以检测大部分类型的漏洞,另一种针对型,比如SQLmap,针对SQL注入的漏洞检测。然后,再或者,纯验证型和利用性,这就如POC与EXP的区别,EXP在POC的基础上进一步利用漏洞进行利用,SQLMAP其实就属于一种利用型,最近有在看w3af的代码,它就属于两种都有,不同的插件。

     

    扫描器又是如何扫描到漏洞的?扫描器一般有几个关键部分,一个是爬虫,一个是核心检测。大部分的扫描器对于不同类型的扫描,如SQL注入、XSS等等,都是采用不同插件的形式。整个扫描流程应该大概是这样一个过程:

     

    1、收集目标站点的URL,也可能是单点的URL

    2、把URL给各个检测组件进行检测

    3、结果收集

     

    中间可能穿插着一些流程控制等等。

     

    一个大概的流程,关于漏洞扫描的能力,大家可能已经注意到点了,一个是对URL的收集,另外一个就是不同漏洞类型的检测组件的能力。

     

    后者我就不说了,涉及到东西有点多,比如XSS的检测,说白了就是规则,你的规则够全够准,就检测的更准,但怎样算够好?这个没法说清楚,靠实践。

     

    然后网址的收集,目前主流的扫描器可能有两种方式,一种就是利用爬虫分析页面收集URL,另外一种就是代理的模式,各有优势。爬虫可能大家比较好理解,代理的模式,不知道大家用过Fiddler没,有个Watch的插件,是检测XSS的,大概原理就是比如我开启Fiddler后,对浏览器设置了代理,那么我用浏览器做的任何访问都通过Fiddler的代理,就被捕获各种URL的访问,然后Wathc就对这些URL进行检测。

     

    怎样去评价一个扫描器的好坏?最直接的方式,是否收集的URL够全,检测的漏洞的误报率和漏报率,用专业术语就是召回率和精度,具体什么意思,大家百度下就懂了,我也解释不清楚,其实咱们屌丝用误报率和漏报率就够了,简单明了。

     

    其实如何快速找到漏洞?单单靠扫描器可能容易找到一些通用的漏洞,往往其实是要根据一些个人经验和猥琐的技巧,毕竟市面上的那些扫描器其实要说你用,我也在用,为什么有的人找的洞多?有很多道道。

     

    其实之前一直有想着自己写一款自用扫描器的想法,不过现在在负责公司的漏洞扫描器,就不适合自己搞一个了。我觉得我自己应该就是一个安全与开发结合的路线,这样走下去挺好的。

     

    (题图来自网络)

  • 我也想找漏洞
    2014年03月31日|安全科普|0 条评论

     

    2b3affcd04570ff2a4b793e674e383d3_b
    腾讯安全应急响应中心(TSRC)2013年度据官方说法,拿出百万奖励悬赏帮忙找漏洞的白帽子,而在2013年的上下年度里对于突出贡献的白帽子也分别给了10万到1万的奖励;淘宝在漏洞之后将继续拿出500万奖励漏洞发现者。。。更多的厂商越来越重视安全问题(其实之前携程的事件虽然过热,但也让广大网民了解到漏洞等相关信息,同时也让更多的厂商意识到安全的重要性),越来越多的漏洞应急响应平台(可以见http://www.0xsafe.com),在这些平台上,有些可以拿到现金奖励,还有各种礼物,包含各种数码产品如ipad等等更是不在少数。看着各种白帽子拿到各种奖品、各种现金,对于不懂挖漏洞的同学,是不是眼馋了?是不是也想去挖漏洞了?让我来替大家说句,我也想挖漏洞。

    说起来,以我的水平,真不敢教大家怎么挖漏洞,一般我在文章里也不会深入讲一些技术上的问题,今天同样不会深入,主要是大概讲一些理论性的东西和想法。

    之前0xsafe交流群里的同学问道“零基础如何学习挖漏洞?”,也提问在知乎上(http://www.zhihu.com/question/23217846)。看了大家的答案,都提到了基础,比如先搞好基础,然后再尝试挖掘,不过比如大牛黑哥跟tombkeeper都提到了一点,分析学习过往的漏洞。

    tombkeeper:我是先看漏洞公告,2002年之前绿盟漏洞库中的每一条我都看过,在看的过程中理解漏洞。然后看别人的漏洞分析文档,在看的过程中学习调试和汇编指令。最后学编程。

    黑哥:先学语言(code),然后分析以往漏洞,边分析边思考,再尝试挖掘

    首先分析下,黑哥跟tombkeeper都是大牛,挖过很多漏洞,所以讲的话是否有道理就不用我说了。除此外,我比较赞同Pnigos的观点,在结合黑哥跟tombkeeper的答案基础上做了详细的解释。

    谢邀。国内学习漏洞挖掘习惯先进行所谓的“打基础”,啃各种编程书,然后再去学习漏洞挖掘,这样的问题在于无法控制好学编程的程度,而且先单纯的学习编程也是极其枯燥的,可能很多人无法坚持。下面来说下国外同学一般得学习过程:

    既然我们不是要去深造编程技术,而主要为了学习漏洞挖掘。我建议首先先把编程打个底子,底子的概念是:“掌握该语言的基本语法,常用函数,写几个demo即可。”有了底子再去看以前的漏洞分析文章,看的过程中会发现吃力的点,这样再有目的的去跟进相关的编程技术点。而不是先一味的去啃编程书。

    比如学习PHP漏洞挖掘:
    先掌握php基本语法,常用php函数,对常用的php函数写一些demo。然后开始看以前php应用漏洞分析的文章,开始的一些基本漏洞比如简单的纯get,post没有intval或者强制转换造成的sql注入,比如没有htmlspecialchar造成的简单xss。看这些基本的东西我们之前打的底子就完全够用了。

    然后我们看一些较高级漏洞的利用,比如各种变量覆盖漏洞,比如unserialize造成的代码执行,我们开始看的时候可能会觉得吃力。那就需要回过头去先看看extract等函数具体用法,for each对$_REQUEST进行变量生成的过程是怎样的,unserialize函数的执行流程是怎样的。然后再去看之前的技术文章就会豁然开朗了。这只是基本的php漏洞挖掘,熟练了之后尝试着去看一些框架的漏洞分析,比如thinkphp,这些又涉及到OOP的相关知识,那么再回过头去学习PHP OOP编程,然后再继续。如此循环下来,边学习漏洞挖掘边学习编程,这样的效率和效果都要比先单纯的啃编程书要强很多。这也是国内外技术人员做研究的一大差异,国内喜欢先学习理论基础,而国外注重先应用,应用的过程中遇到困难再去学习理论基础。

    在我看来,一定的code基础是肯定需要的,如果连一点基础都没有,真的别谈说漏洞挖掘,更别说学好这门技术了。举个例子,你要找XSS,但是你连Javascript都不知道,请问你该怎么挖呢?怎么去构造payload(有效负载,简单说就是利用代码)?XSS的弹窗等都是通过Javascript写出来的,你都不懂,怎么写?XSS叫做跨站脚本攻击,明确的指出这是通过脚本来实现的。所以不管如何,如果要学习漏洞挖掘,起码需要一定的code基础。

    其次,就如黑哥跟tombkeeper说的,分析学习过往的漏洞。通过分析过往的漏洞,可以很好学习别人漏洞挖掘的思路,对于自己学习挖掘漏洞是很有用处的。在国内,比如wooyun,一些公布的漏洞是可以看到详情的,看看漏洞是怎么被发现的,漏洞的原理又是什么,这都是有很大帮助的。

    大部分安全厂商有自己的安全应急响应平台,对于提交漏洞的白帽子也会进行对应的奖励,不同厂商可能奖励会不同,所以在挖到漏洞后,可以选择到对应厂商的平台(可以见http://www.0xsafe.com)提交漏洞,当然也可以提交到wooyun漏洞平台或者一些重要漏洞可以提交到国家漏洞库(http://www.cnnvd.org.cn/)等。

    累积一定的基础,多看,多学,善于分析各种漏洞,通过分析把其转化为自己的经验,那么在下一次的漏洞挖掘中就可能用到。

    推荐蘑菇的微信,估计很多人已经收听,今天在群里看到有人问,就这里推荐下:

    微信公众号搜索Evil-say作者是之前文章《攻下隔壁女生路由器后,我都做了些什么》的Evilm0,我就不多介绍了

     

友情链接

  • 0x_Jin
  • 0xsafe
  • 360安全播报
  • SCANV
  • Twitter
  • 各厂商漏洞提交平台
  • 多引擎网址检测
  • 搜女孩
  • 新浪微博
  • 百度空间
  • 知乎专栏
  • 知道创宇
  • 素包子
  • 陆羽's Blog
  • 鸭大叔's Blog
  • 黑客百晓生

热门标签

黑客 漏洞提交 钓鱼网站 恶意网站 XSS 成为黑客 sql注入 找漏洞 SSL zoomeye 白帽子 网站被黑 src 漏洞 OpenSSL

最新评论

  • 优优的网站做的好简介,非常Nice!
  • Permission denied (publick »
  • 目前还有一些做APK安全加固 »
  • 好地方
  • 刚看了你写的《安卓上Web漏 »
Copyright © 2014 Fooying All rights reserved. Powered By WordPress
▲