前言

学习了一年的ctf后感觉自己还是入门水平,新做的题目还是都有新花样,每次比赛考察的知识点也让我措手不及。可能对一些知识点理解的还是不够深入,所以打算挖洞在实战中丰富经验。关于src之前并未了解,所以本文难免有理解错误的地方,这些以后再回来改正,下面是最近这半个多月来挖掘src入门的一些经验总结。

规则

在着手实战的前几天由于没什么经验,对于公益src可测试范围也不太了解,所以一些扫描工具都是不敢用于实战的,毕竟对于一些小型网站来说,可能一个dirsearch跑起来就能让它崩溃掉。后来通过自己搜集各方面关于src挖掘经验的文章才逐渐清楚了一些规则。一些多线程的工具尽量不要去使用,非要使用的话也要加上delay延时参数,不然可能会被网站锁ip,而且一旦影响网站正常工作就属于违法行为了。同时在一些xss和sql注入测试时也要注意,测试xss时,储存型xss弹窗可能会干扰网站正常工作,测试sql注入时要点到为止,爆出库名就可以提交了,将用户名密码等字段爆出来也属于违法行为。对于弱口令等漏洞登入后台不能修改数据,得到漏洞后及时提交。

实战

就我自己感觉,src入门最难的就是不知道从哪里开始,平时的ctf题目一般都会有明确的目标或漏洞,围绕着这个目标进行测试,但实战不一样,你不确定这个网站哪里会有漏洞,或者说有没有漏洞。刚开始的几天基本上就是找sql注入的注入点,像php?id=这种地方就加一个引号,观察异常,但这种测试并不理想,多数时候都是打开一个公益src,找到参数id=,输入一个引号回车,然后弹出一个宝塔页面,您的请求带有不合法参数,退出继续下一个src,又弹出创宇盾,疑似黑客攻击已被拦截,继续下一个,WTS-WAF拦截。。。。就这样测试了两天,常见的waf页面都认全了,也没什么太大的成果。我也意识到这样无头苍蝇般乱撞可不行,于是就去学习了一些大佬们的文章,拓展了些测试面,在经过自己实践,逐渐有了一套流程。一般来说,进到一个src网站最重要的还是信息收集,先用wappalyzer看一下网站的编程语言,有没有cms,是什么中间件,一般Java的网站我了解的少,通常不会在这里浪费太多时间,php的站相对来说简单点。如果发现了cms,就去百度相关版本的漏洞复制payload测试下。然后可以收集一些子域名,看看子站里有没有什么漏洞,相对主站来说,子站存在漏洞的概率更大。 同时使用谷歌语法搜索对应网站有没有后台页面,有的话可以测试弱口令密码碰碰运气或者SQL注入,有些对于危险字符虽然有拦截但只是js前台判断,登陆时候可以进行抓包测试POST包的SQL注入,我发现的第一个SQL注入漏洞就是通过前台判定的,同时验证码也会有些逻辑漏洞,比如验证码重复利用,验证码无限重发,以及任意用户密码修改等。前台如xss等漏洞也可以进行测试,如果实在无法找到漏洞也没有关系,把这次测试内容简要的记录下来开始下一个网站的挖掘,这里也应该记录一些问题和可能存在漏洞但我无法证明的点,以便那天读到解决办法时回来验证。所以每一次测试并非找到漏洞才算收获,这些经验也是收获的一部分。

总结

在初期的思想应该偏重于学习,选择适合自己量级的站去测试,尽量把自己已经学习到的知识都带入实践验证,告诫一定要沉稳,不能因为多次测试没有回应就浮躁起来,草草了结而错过了本应发现出问题的点。本着学习的心态,把每一处可能存在漏洞的地方都测试一遍,毕竟坚持才是成功挖洞的关键。