为什么你挖不到漏洞,阿里前P8架构师教你速成大佬(五千字详解)

你为什么挖不到漏洞

你是不是在为学不会安全而烦恼?

你是不是在为挖不到漏洞而沮丧?

你是不是为实战挖洞毫无思路而丧失信心?

不要悲伤,不要心急忧郁的日子总会过去。假如生活欺骗了了你,不要沮丧,因为生活只是把你买了没空搭理你。

看完我这篇文章就会让你重拾信心

目录

一、你为什么挖不到漏洞

二、道理都懂如何操作

三、常用工具有哪些

四、都有哪些漏洞可以挖

五、挖到这些漏洞就可以了吗

       言归正传,我相信很多人学完网上的安全课程,都是充满信心,想找个网站来试试,结果是要么一堆error 要么就是IP被封。难度真的是自己太菜?

      不要怀疑人生,实话实说,就是你太菜

      难度菜就不配学安全?不配挖洞?当然可以,看我的分析。

一、你为什么挖不到漏洞?

原因无非是too young too and sometimes native,简单的说无非是没有理解渗透测试的本质。首先挖洞和渗透是有区别的,我们一般挖漏洞都是点到为止,确认存在漏洞即可提交给漏洞平台获取赏金。渗透的目的是尽可能的找到系统尽可能多的脆弱点,往往找到漏洞后还要进行深入测试。但是二者的步骤基本是一致的。

挖不到漏洞原因一:信息收集不到位

先介绍一下渗透测试基本步骤:

1、明确目标:

确定范围:测试目标的范围、ip、域名、内外网、测试账户。

确定规则:能渗透到什么程度,所需要的时间、能否修改上传、能否提权、等等。

确定需求:web应用的漏洞、业务逻辑漏洞、人员权限管理漏洞、等等。

注:渗透测试与网络攻击之间也就是一念之差,满足以上才算是渗透测试,否则法律上来讲就是违法的网络攻击

2、信息收集(情报收集)

方式:主动扫描,开放搜索等。

    开放搜索:利用搜索引擎获得:后台、未授权页面、敏感url、等等。

     基础信息:IP、网段、域名、端口。

     应用信息:各端口的应用。例如web应用、邮件应用、等等。

     系统信息:操作系统版本

     版本信息:所有这些探测到的东西的版本。

     服务信息:中间件的各类信息,插件信息。

     人员信息:域名注册人员信息,web应用中发帖人的id,管理员姓名等。

     防护信息:试着看能否探测到防护设备。

3、漏洞探测

   利用上一步中列出的各种系统,应用等使用相应的漏洞。

方法:

(1)   漏扫,awvs,IBM appscan等。

(2)   结合漏洞去exploit-db等位置找利用。

(3)   在网上寻找验证poc。

内容:

        系统漏洞:系统没有及时打补丁

        WebSever漏洞:WebSever配置问题

         Web应用漏洞:Web应用开发问题

         其它端口服务漏洞:各种21/8080(st2)/7001/22/3389

         通信安全:明文传输,token在cookie中传送等。

4、漏洞验证

   将上一步中发现的有可能可以成功利用的全部漏洞都验证一遍。结合实际情况,搭建模拟环境进行试验。成功后再应用于目标中。

  自动化验证:结合自动化扫描工具提供的结果

  手工验证,根据公开资源进行验证

  试验验证:自己搭建模拟环境进行验证

  登陆猜解:有时可以尝试猜解一下登陆口的账号密码等信息

  业务漏洞验证:如发现业务漏洞,要进行验证

公开资源的利用

  exploit-db/wooyun/

  google hacking

  渗透代码网站

  通用、缺省口令

  厂商的漏洞警告等等。

5、信息分析

为下一步实施渗透做准备。

  精准打击:准备好上一步探测到的漏洞的exp,用来精准打击

  绕过防御机制:是否有防火墙等设备,如何绕过

  定制攻击路径:最佳工具路径,根据薄弱入口,高内网权限位置,最终目标

  绕过检测机制:是否有检测机制,流量监控,杀毒软件,恶意代码检测等(免杀)

  攻击代码:经过试验得来的代码,包括不限于xss代码,sql注入语句等

6、获取所需

   实施攻击:根据前几步的结果,进行攻击

  获取内部信息:基础设施(网络连接,vpn,路由,拓扑等)

  进一步渗透:内网入侵,敏感目标

  持续性存在:一般我们对客户做渗透不需要。rookit,后门,添加管理账号,驻扎手法等

  清理痕迹:清理相关日志(访问,操作),上传文件等

7、信息整理

整理渗透工具:整理渗透过程中用到的代码,poc,exp等

     整理收集信息:整理渗透过程中收集到的一切信息

     整理漏洞信息:整理渗透过程中遇到的各种漏洞,各种脆弱位置信息

8、 形成报告

  按需整理:按照之前第一步跟客户确定好的范围,需求来整理资料,并将资料形成报告

  补充介绍:要对漏洞成因,验证过程和带来危害进行分析

  修补建议:当然要对所有产生的问题提出合理高效安全的解决办法

  对于我们挖洞来讲最多就走到第六步。其中最重要的一步就是信息收集,可以说信息收集是渗透测试的灵魂。对于一次渗透。尽可能多的收集到目标系统的信息,目标暴露的攻击面也就越大,攻击面大了,相对出现的脆弱点可能就多了,找到漏洞的可能性也就大了。为什么你们挖不到漏洞也就是这个原因。对于目标站点,不能只看主站,旁站,子站点也是可能存在漏洞的。总之信息收集的东西越多,渗透成功率就越高

挖不到漏洞原因二:实践太少,看的太少

   多学理论,多实践,少刷抖音,多挖洞。回想你学完后挖洞过程,找一个网站没漏洞,两个网站没漏洞……然后就放弃了。十年前漏洞可能是很多的,现在企业都慢慢重视安全这一块了,不可能每个网站都用漏洞。对于新手来说,推荐在网上找一些网站试试。前期挖洞建议手工挖洞,理论与实践相结合,来提升自己。一定要多实践 多实践 多实践 不要挖不到漏洞就放弃,挖不到漏洞才是正常现象,不可能到处都是漏洞。

 小时候课本上学过,不懂就要问,就算挨打也值得。自己不会操作就看别人怎么骚操作,学习别人的技术,就算花钱也值得。学到就是赚到。这里顺便说一下安全圈割韭菜的太多了,你们在网上看到的教程很多都是割韭菜的,讲师水平也一般。讲来讲去就是那么些东西,而且天天打靶场也没太大用处。真实环境攻防比靶场复杂多了。

二、道理都懂如何操作?

如何操作这是个很大的问题,当然我也不可能全部教你们。今天就先说一些,以后文章会写的具体一些。我之前也写过信息收集文章,可以看看。

信息收集 收集什么?

   包括企业的分公司、全资子公司、网站域名、企业及其子公司域名、手机app、微信小程序,企业专利品牌信息,企业邮箱,电话等等。你收集到了别人没有收集过的资产,往往离挖到漏洞就不远了。

收集这些有什么用?

   我们需要对这些信息进行归纳和整理,比如哪些是该公司的主资产,哪些是边缘资产,哪些资产看上去比较冷门,我们是可以重点关注和进行深入挖掘的。很多企业它的主站一般功能都不太多,甚至是静态的,没有用户交互功能我们就无法进行渗透测试的。所以要找尽可能多的企业名下的子公司及其子域名。邮箱,电话等个人信息收集主要用来进行密码爆破的,根据一般人使用密码的习惯猜测密码。

信息收集小例子:

举个简单的例子,教育类高校网站为例。

 这种需要高校类网站一般不登录你就无法进行深入测试,那怎么办?这个时候信息收集就变得特别重要了。举个简单的“小栗子”,一般学校登录都要学号,密码。或者学工号,密码。这些在网上都是很容易找到的。学生学号可以说是公开的,一般来说密码我们可以尝试使用默认密码。也可以简单的进行密码爆破,总会搞到几个的。收集这些信息我们可以借助搜索引擎,当然国内的百度呀 搜狗例外。

 很清除的就可以看到学号命名规则,有些学校没有这些。我们可以找他的本科招生网,或者研究生招生网站等,里面一般会有些公示信息,有的会有学号的。默认密码一般也能找到相关蛛丝马迹。

   当然如果你能混进学生群或者班群获取信息就更加容易,这就是属于社会工程学范畴了。如果能在渗透中用到社会工程学也是相当牛逼的。

    除了上述一些信息我们还可以收集其他信息。

具体的操作不在演示,注意未经授权的渗透都属于违法行为

   做到这一步如果能找到漏洞实际上依旧能够提交了,登录成功后可以进行进一步渗透测试。

三、常用工具有哪些呢?

   其实kali的那些工具很多不太适合我们国内做渗透测试。常用的就是Web常用的Burp、Cknife、nmap这些了,还有一些插件如:hackbar、wappalyzer、shodan等。工具只是手段,能达到同一目的工具有很多。渗透测试会使用工具不是目的,但好的工具能够帮助我们快速找到有用信息。

我只推荐一个工具:搜索引擎,无论是我们信息收集还是找漏洞利用工具也好,搜索引擎是我们最好用的工具。当然百度那种垃圾是不推荐的。首推谷歌浏览器,使用谷歌搜索。可以搜索国外爆出来的新漏洞,国外的网站还是有不少好东西的。


你需要什么,想找什么漏洞直接搜索,都可以找到。最好的工具没有之一

 使用谷歌是要翻墙的,这里不在细讲,而且这个也是违法的,在本期后面会单独发一篇科学上网文章,教大家如何翻墙,快速访问国外网站,高速稳定。

除了谷歌我推荐的就是微软的必应了 https://www.bing.com/

   虽然翻不了墙,访问不了国外资源,但是国内搜索用户体验也是相当好的,比百度,360,QQ等浏览器不知好了多少倍。

有了这个全网资源国内外资源你都可以找到,信息收集工具,漏洞利用工具什么的都可以。

企业相关信息收集

企查查 (https://www.qcc.com)

天眼查(https://www.tianyancha.com/)

启信宝(https://www.qixin.com/)

企查查、天眼查淘宝都有那种一天的会员。对于我们信息收集其实已经够用,个人更喜欢用企查查,因为它能一键导出域名,还可以直接查看企业关联的子公司,比较方便。

主要查询的信息:

1.一般大的src都有许多子公司,企查查可以在所属集团中查看该集团下子公司,并且可以导出。

2.查看同电话企业基本都是子公司。

3.查看股份穿透图,一般来说控股超过50%的子公司的漏洞SRC收录的可能性都比较大。

4.查看企业下的app、小程序、还有品牌的资产,直接在搜索引擎里搜索品牌可能会有意想不到的收获。(找到一些平常收集不到的资产)

站长之家:http://whois.chinaz.com/

o邮箱反查、注册人反查、电话反查。

o推荐个项目:https://github.com/code-scan/BroDomain 兄弟域名查询。

https://www.qimai.cn/

o七麦数据,可以查到企业下一些比较冷门的app。

对于一般网站我们还可以对网址进行目录扫描,有时候也能找到不少东西。推荐一款比较老的目录爆破工具,御剑。搞爆破嘛,最重要的是字典,以后我会分享给大家一些比较好的字典。

四、都有哪些漏洞可以挖呢?

我简单的给大家做了个小结

越权漏洞:

CSRF漏洞

短信轰炸漏洞:

弱口令漏洞:

XSS漏洞:

逻辑漏洞:

文件上传漏洞:

信息泄露:

SSRF漏洞:

URL跳转漏洞:

未授权访问漏洞:

等等,直接给个大图吧

公众号回复  大图  获取详细漏洞

在学习这些漏洞的时候建议首先本地搭建靶场来练习一下,感受一下漏洞是什么样的,这里推荐几个靶场:

DVWA、SQL-lib、bwapp、pikachu等。

靶场是其次,不会的可以在网上搜搜答案。然后多找几个网站练练手。送给大家一个漏洞表,可以按照表上的漏洞一个个来找。总共一 百多项,关注公众号回复 漏洞列表 即可获取

五、挖到这些漏洞就可以了吗?

 做到这些其实可以算是初级渗透测试工程师的水平了。要想进阶必须往内网方向走,学习代码审计。这也就是我上篇文章所讲的为什么学习安全难。在前面的挖洞过程中我想你应该已经遇到了各种障碍,很多东西不懂。其实Web渗透阶段也还好,你只需要会一些前端:HTML、CSS、JavaScrip即可,会使用一些工具,了解基本的SQL语句及网站的一些原理性东西。后面的进阶要起码要学习一门编程语言,这样方便深入理解漏洞原理,挖漏洞。现在主流的开发就是Java和PHP了。所以对于走代码审计方向的小伙伴来说都要学习的,很多人学习浮于表面,知道那一种漏洞产生原理,怎么审计就完了,在我看了这样是不行的。大家都是这样学这样做的,你这样学能找到的漏洞别人都能。所以最好还是稍微深入学习一下,起码学个框架自己能动手写代码。

   除了主流开发语言,大多数安全从业者还会选择学习Python。用Python做开发确实不太主流(千万别太网上傻逼逼),但作为中高阶安全从业者写一些脚本是必备技能,要写一些漏洞验证代码(POC)和利用代码(EXP)。能够自己写代码批量化验证利用漏洞的才能算是合格的Hacker,不然只是一个工具小子罢了,最多用用网上的脚本,做些毫无技术含量,可替代性很强搬运工而已。如果要走内网渗透方向,要对系统有比较好的基础,学习Linux系统和Windows系统。这个基本上就是运维学的那些东西了。会了这些后面如果做应急响应、漏洞修复也容易上手一些。

   所以我说学安全容易入门到放弃,是真的放弃,坚持下来的人不多。要学习的很多。既然选择了远方,便只顾风雨兼程!!!

最后送大家一个渗透三字经:

搞企业    先扫描

扫描器    商业好

默认密    都知道

社工库    找一找

邮箱号    先列好

九头蛇    跑一跑

搞不定    放大招

发邮件    凭伪造

没邮箱    搞网站

二级域    皆可爆

老漏洞    没修好

新漏洞    刷一票

干研发    Git 找

源代码    全都要

C D N     可以跳

防火墙    可以撬

堡垒机    可以绕

云防护    可以秒

    是企业    没有哪家搞不了!

一下子写的有点多,写道最后思路都有点乱了,有问题欢迎留言交流。后面会写一些具体的漏洞发出来。

如果觉得不错记得分享、点赞、在看三连哦,你的支持是我更新的动力!!!

你可能感兴趣的:(为什么你挖不到漏洞,阿里前P8架构师教你速成大佬(五千字详解))