白帽子的指南

2018-07-17 40,117

         大家好,我是剑影(Jianying),这是我的第七篇原创文章。在放暑假这期间,我一直在思索应该写什么样的文章,之前呀有很多朋友问过我,大多是在上学的,请教我一些关于挖掘漏洞方面的问题,于是我上各大平台搜索了相关文章,发现很少有讲关于挖洞的一些心得技巧,于是我想通过这篇文章来讲述一下挖洞的一些技巧,希望能够用我这一点点知识帮助到大家。我写文章很少配图,所以我会尽力用文字讲解清楚。

挖掘漏洞的自我规划


0x01  不自我否定

挖掘漏洞,其实也就是对你所学的以及你自己做事情的态度的一个整体检验。挖洞不仅要你有相关知识,也需要有耐心,如果说大部分漏洞是需要靠知识的,那么那小部分的高危漏洞是需要靠耐心的,很多人开始挖掘漏洞特别是从第三方平台转到企业自家的SRC平台的时候,都会有一点的犹豫和不知所措,特别是一些大企业的SRC,很多人不敢去挖,为什么这么说呢,在很多人的心里认为这么大的企业,不可能有什么大漏洞,有的话也挖不到,或者被那些高手挖到了。这其实就是自己心理上的自我否定,这种自我否定会让你在挖洞过程当中错失很多漏洞。

        So,不要自我否定,在初期接触到SRC时,你只要拿出你所擅长的知识去挖掘,当你用你所擅长的知识去挖掘到不错的漏洞之后再去拓展挖掘的范围。不要一上来就这挖那挖,记住,你擅长什么就挖什么,比如你擅长挖越权,就去挖越权。 


0x02  明确初心

        明确初心,开始很多人我想都并没有接触到安全方面,我之前也就是学的很杂,偶然间发现,提交问题还可以有很高的奖励,于是当我第一次在一个SRC提交了一个高危漏洞,并且得到奖励时的心情我现在都记得,那是一种成就感,能够帮助大企业完善自身本身就是一件很自豪的事情,平时跟家人或朋友开玩笑说,看,我在给这么大的企业找问题呢!所以,挖洞我认为,初心很重要,明确自己的初心,有的人初心是挖掘高危漏洞,让企业更安全,有的人是希望通过自己挖掘漏洞得来的奖励帮助现实当中的家庭,这些都是初心,记住,明确自己的初心,这样在未来,你才会不迷茫。


0x03  专心专一

        刚开始挖掘的时候一定要专一,专一什么?专一挖掘一个企业的SRC,而不是改天这里挖挖,那里挖挖,专一一个SRC,会让你了解更多,学习到更多,专一能够提升你自己,也能够了解你所挖掘的这个SRC企业的网络系统布局以及大概架构,为什么我要这么说一定要专一?因为你如果不专一一个平台去长时间挖掘的话,那么你就无法体悟到努力和坚持在挖掘漏洞当中的重要性,因为当你遇到难点,觉得挖掘不到的时候,你就会自然去其它家的平台挖掘,当你做这个决定的时候,你其实也就是丧失了自我提升和自我突破的意识。所以,一定要专一。


0x04  自我保护

        刚在挖掘过程当中,难免会遇到一些比较敏感的数据或者系统等等,所以,在此之前,你要询问SRC审核部门或负责人,自己是否能够继续进行近一步的测试,如果不行,那么就停止,然后在提交这个问题的时候讲述这个问题大概会造成什么影响,因为你没有继续近一步进行测试,所以如果你觉得漏洞价值很大,那么近一步说明。很多白帽子就可能不是很明白,我在他家挖漏洞,为什么这时候还要去询问他们是否能够近一步挖掘呢?

        我相信,大部分白帽子并没有去认真查看SRC平台的漏洞评分细则,我看了大部分SRC,其公告上行已经很明显包含了类似于这样的细责:


反对和谴责一切以漏洞测试为借口,利用安全漏洞进行破坏、损害用户利益的黑客行为,包括但不限于利用漏洞盗取用户隐私及虚拟财产、入侵业务系统、窃取用户数据、恶意传播漏洞或数据。


这个定义对我们白帽子来说,是很模糊的,比如当你得到一个系统的账户和密码进行登录的时候,其实这已经是入侵系统了,可能这时会有白帽子说,我们在SRC挖掘,肯定早已经是授权的,但这只是没涉及敏感数据的情况下,如果涉及到敏感数据情况下,那么这个授权可能就会变的模糊了,当然很多白帽子基本都是这样测试也并没有什么问题,那是因为并没有出现什么问题。所以在挖掘过程当中,涉及到敏感数据或者敏感系统时,一定要询问SRC审核部门或负责人,自己是否能够近一步测试。这对企业来说,是为了防止一些危害较大的问题出现,因为挖掘漏洞提交漏洞这个过程当中,谁也不能保证挖掘的这个人他是出于什么目的,比如:他挖掘到了信息泄露,然后他以测试为由,批量获取了大批数据,然后他进行提交,此时我们用两方面,一方面他是好意:那么他会在漏洞详情里面贴出这些全部数据以此证明漏洞的危害真实存在,然后并不会保存。另方面他是坏意:那么他可能不会贴出数据,如果贴,也只是他测试时获取的少部分数据,然后他进行提交后,保存了数据,此时,出问题了,企业那边发现数据泄露,被他人恶意利用了,此时,你认为,企业会来找谁?这对于白帽子来说,这样的询问是保障自己,保障自己在接触到这些敏感数据时是出于什么目的而接触到的,当然,肯定是出于测试漏洞的目的而触及到这些敏感数据。所以一定要懂得自我保护,懂得跟SRC审核部门或负责人沟通。

安全脉搏 https://www.secpulse.com/archives/73559.html

0x05  学会申述

        很多时候,自我感觉不错都会被狠狠的打击,在挖掘漏洞当中也是,当你辛苦挖到了一个自己认为危害很高的漏洞,但是最后结果只是个低危或者中危时,难免会很气愤或者受到打击,所以,此时,你要懂的申述,去联系审核人员,讲述为什么这个漏洞可以是高危的,当然,也不要无理取闹,比如,这个漏洞是真的危害很大,但审核人员没有注意到,或者复现的时候位置搞错了等等,那么你这个善意的申述是好的,结果也是好的,如果这个漏洞真的并没有那么高危,那么你也不要固执,懂的接受,吸取经验,下次就不会有这么大的失望了。


0x06  这是职业

        在国外,很多人把挖掘漏洞已经当成了自己的职业,并且收入很可观,国内也是,把挖洞当成职业的人也很多,所以,明白当它成为你的职业时,那么你就要懂的该如何做,该如何看待这个事情以及要有职业精神。


0x07  学会查看

        很多白帽子都没有仔细去阅读SRC平台的审核制度细则,还有些白帽子对漏洞审核有异议与审核员去沟通之时,还没有仔细去看SRC平台的审核制度细则,这些都是不好的习惯,这样会造成两边的麻烦。所以,要学会实时查看SRC平台的最新公告,这样,当你遇到问题时,你就会知道怎么理性的解决。


0x08  学会小心

        作为一个白帽子,难免会加入很多群,认识很多同行,所以,在交流当中,避免透露自己漏洞产生的地方,为什么我要说这个点,因为当你透露了你挖的是什么域名,挖的是什么,那么那些知道的人也就会迅速去挖你没有挖到的或者残留的问题,那么这个对于企业来说是很好,又发现了问题了对吧,但是对于你自己来说,你清楚知道了透露了这个也就代表你下回挖的时候就可能挖不到什么有价值的漏洞了,这个我不想让大家有什么争议,历来如此,大家知道这点就行。

安全脉搏

0x09  细枝末叶

        很多白帽子喜欢参加会议或者发布博客或文章等等,但需要注意的是,当你要去公布你之前提交的漏洞的详细内容时,虽然此时你的漏洞已经审核并且修复而且漏洞评审细则里也是这样说的,有的漏洞评审细则里是这样说的,在漏洞未修复之前不可公开和传播,而有的公告里并没有这一条规定,但是你也要去询问审核部门的负责人或者运营部门负责人,询问是否能够用作于分析文章进行公布。这些都是白帽子们要注意的问题。


以上我讲述的是一些常识性的问题,当你作为一名白帽子的时候,你要懂得他的意义和责任,所以,这些都是你需要知道并且了解的。


        下面就是讲解挖掘漏洞的那些技巧,这些技巧会帮助你更高效的挖掘漏洞。而如今平台大部分接受的都是网站、APP、情报等一些问题,当然,也有硬件,但是不在我的知识范围内。


挖掘漏洞的那些技巧

0x01  学会实时跟近

        学会实时跟近,为的是可以早一步发现企业最新动态,比如企业最近收购了某某公司,或者上线了某某业务等等一些动态,这些动态信息你作为一名白帽子是需要特别注意的一个事情,比方说,一个企业SRC,最近收购了某公司,那么敏锐的白帽子此时他就会提前去挖掘收购的这个公司的漏洞,然后等SRC公告出来了,说可以提交收购的这个公司的漏洞,那么此时,你就比别人先行一步了。所以,这很重要,不是有一个公众号吗?里面有个采访,那位白帽子就讲到了这个点:


Wwww.jpeg


0x02  学会查找域名

        这个查找域名是真的重要,其实很多人水平都差不多,可能有些白帽子就很无语了,为什么他能够找这么多,同一个水平啊?这个其实跟上课差不多,大家同一个基础,同时上课,有些同学他会利用课余时间或者睡觉时间来进行学习,有些可能就并不会,下了课,该玩玩,放了学,该睡睡,那么差距就自然而然产生了,所以当你看到他进步比自己还快时,你只是没看到他进步快得背后一面是舍弃了多少玩乐所得来的进步。讲这个例子就是说,作为一名白帽子就要学会勤劳,坚持和耐心。找域名包含二级三级等等,有很多方法可以找,当然我还是比较喜欢域名爆破,而爆破的字典就是决定着你爆破出来的域名的质量如何了。当然,我以前的文章也说过很多方法,这里我再说一下吧,你可以通过不同的搜索引擎进行搜索,而搜索当中常用的应该是:site和inurl了,因为每个搜索引擎不一样,所以收录的内容以及数量也不一样,多善用搜索引擎进行搜索,会有意想不到的结果。也可以通过APP进行提取域名,很多APP里面包含了大量的域名信息。也可以通过Github搜索域名,比如搜索:
xxxx.com  那么就会出现很多二级,三级等等域名信息,也可以通过证书进行搜索域名等等都可以。

安全脉搏

0x03  学会利用漏洞库

        虽然某云已经关了,但是还有2016年左右之前的漏洞镜像,那么这就是一个好的漏洞库了,在这里面你可以查找你想查找的企业的漏洞历史信息,学习该企业都有过哪些漏洞,哪些偏多,哪些偏少,以及都涉及哪些域名还有学习他们是如果挖掘到的思路,除了某云漏洞库,漏洞盒子也有,在漏洞盒子首页的企业服务下方的漏洞认领当中,有公开的漏洞,但这些漏洞大多是2016之前的漏洞,很久以前的漏洞,但基本都可以看到详细,所以,也有学习的价值。同程SRC也很不错,他们的漏洞都是公开的,所以也是一个学习思路的好地方。


0x04  学会挖掘不同方面

        很多白帽子可能只擅长挖掘一个方面,比如越权,然后像XSS,任意URL跳转、爆破、等他都不去接触,那么其实吃亏是自己,不管你这些技术是否足够成熟,都应该要尝试,遇到一个点,就应该尝试把这些技术运用到测试当中。我以前就是,专门挖越权,但发现,我错过了很多漏洞,包括XSS,撞库,等一些问题。


0x05  学会积少成多

        这个尤为重要,看是不起眼的一个点和分,当积少成多的时候,结果也会让你大吃一惊,比如任意URL跳转,crossdomain配置错误等等一些问题,当大量站点存在这问题,那么自然就积少成多了。


0x06  学会及时关注CVE

        比方说大家都知道的ST2框架漏洞,Apache 、Tomcat问题等等,此时,如果公开了利用工具,一般在Github就有利用工具,直接搜索关键字就可,那么此时就不是靠技术了,而是靠速度,比方说你曾经挖到过ST2的问题,提交了,但那个站点还在,所以你可以很快拿到一个严重漏洞。


0x07  学会收集域名

        学会收集域名就跟写日记一样,要实时的,遇到了就马上记录下来,比如你遇到个系统,但是你能力有限,那么你可以先记录下来,后面有能力了,知道如何突破了那么再去测试,或者这个系统一时访问不了,那么也要记录下来,或者说这个系统你认为没有价值但也要记录下来。


0x08  学会回挖

        当你遇到瓶塞,觉得没有可挖的了,那么此时你可以查看你之前挖的一些系统或域名,然后再去测试一些自己没有测试到的问题,或者修复了但是修复的不够彻底,或者问题还存在,那么都可以进行测试提交。我之前就是一遇到瓶塞,我就会看看我之前的漏洞,然后就挖掘到了好几个高危,所以,学会回挖是很重要的。


0x09  学会挖掘APP

        可能很多白帽子很少挖掘APP,APP也是一个高危漏洞居多的点,当然,这里学会找核心APP也格外重要,你可以在Github当中,搜索相关域名,然后后面跟上app或者apk,例如:xxx.com apk或app。因为核心的系统APP很少能够在应用商店看到,所以当你下载到了这样的APP,那么一般它的防御做的就不是很好,问题很多,你可以提取域名,抓包获取域名都可以,然后用游览器在电脑端方面,看是否能够得到一个Web端的系统。当然,应用商店很多,只要是跟你所挖掘的企业的相关的APP都下载下来,不管它是否还在应用,因为有时候很久没更新的APP它的很多接口还可以用,比如登录接口,发送验证码接口,那么此时问题就很可能存在,比如没有验证码,可以爆破潜在用户,可以短信轰炸等等。


0x10  学会分析网站目录

        这点很重要,当你长时间挖掘一个SRC的时候,你可能会注意到它的目录命名规范,比如:xx.com/st-sy/ 然后后面有很多比如aa.xx.com/aa-sy/、bb.xx.com/bb-sy/可以看出来变化吗?还有比如aa.xx.com/aa-sy-admin/、bb.xx.com/bb-sy-admin/ 

等等,这个我只是举例,实际要跟你观察的有很大差别,我所想讲的就是注意这方面,然后学会延生和尝试。

安全脉搏

0x11  手工测试的重要性

        我挖掘漏洞一般都是手工测试,不管是挖掘越权、XSS、SQL等等一些问题,除了扫描域名和端口爆破等一些基础要做的事情,其它都是手工,为什么要用手工呢,因为很多批量工具并不是很好用,也没有想象当中的那么智能,当你用批量工具获得潜在结果的时候,你进行一一测试,发现一个问题都没有,那么会打击你挖漏洞的信心,我这里说的不用工具指的是大范围批量检测SQL注入、XSS等一些功能的工具,其它工具是可以应用的,比如常用的抓包工具。还有一点是很多SRC平台也禁止用批量工具,而且现在大厂商都有WAF,你扫不了几下就给你拉黑了,所以这会严重的妨碍你进行漏洞挖掘。曾经遇到一个很囧的事情,本来测试漏洞,测试了一半,想扫描一下目录,结果把网站给扫死了。所以挖掘漏洞,手工加工具(非批量工具),是最佳选择。


0x12  完善漏洞详细

        在提交漏洞的时候一定要注意,很多漏洞审核细则里也说到,要把完善的发现漏洞的过程进行提交,所以,不要只提交结果,不提交过程,一定要把整个测试过程,比如,怎么发现的,发现的点,所产生的问题等一一详细写清楚,然后提交,这样,才会让审核员能够明白你这个漏洞的缘由和价值,而且很多平台也会对提交详细过程的漏洞进行奖励。


以上就是一些挖掘漏洞当中的一些技巧

最近看了《我不是药神》,看了很多遍,很好看,带给我的意义就是健康每一天,不浪费时间和生命,做任何事情都要有希望的做下去。当然,曾经我的家庭也像这部电影里某个环节一样,所以我深有体会,体会到生命的可贵,以及得病的痛苦。所以大家能够在有限的生命当中,想去做什么就去做什么,我就是。我想分享我的这些挖洞技巧,所以我就写了这样的一片文章。我作为一名白帽子,我对白帽子的定义是:有着黑客的思想,极客的精神。

安全脉搏

总结:前半部分讲自我规划,后面讲挖掘技巧,希望很多选择或者作为一个白帽子的时候,要有担当,知道自己在做什么,作为一名白帽子,坚持以及耐心是很重要的,很多漏洞是靠这些才发现的。之前也有很多人跟我说感觉到迷茫,很多圈子也很浮躁,那么我都经历过一些,所以,很明白那种迷茫,不知该学什么,如何学,以及做这件事情的意义,以及害怕他人怎么看待自己。我觉得都不重要,重要的就是抛开一切与自己无关的事情和社交,去做自己真正想做的事情。这是我的第七篇文章,差不多写了2个多小时吧,文章当中有不足的也希望能够告诉我,祝大家2018下半年更上一层楼。


本文作者:HtM

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/73559.html

Tags:
评论  (5)
快来写下你的想法吧!

HtM

文章数:8 积分: 100

学习知识,要学会让自己放弃的稍晚一些。

安全问答社区

安全问答社区

脉搏官方公众号

脉搏公众号