漏扫的一个感悟

活着的意义……是在你快死的瞬间划过你脑海的那些事啊……

关于广度优先原则

即再批量漏扫的时候,如果对网址又相同的网址请求,可以采用基于网址优先循环,即

http://www.langzi.fun/admin.php
http://www.123456.cn/admin.php
http://www.1111.com/admin.php
http://www.la.cc/admin.php

即基于网址循环,这样不仅可以减少目标服务器压力,不至于把目标扫死,还能隐藏一些身份。

关于可控参数

这是很深的感悟,即你的漏洞大部分都存在网址参数中,比如xss,sql注入,命令执行,任意文件包含,目录遍历等等,那么获取提升漏扫效率就要从下面两点开始:

1. 获取更加多更加深层的网址
2. 提高扫描验证的效率

关于sql注入扫描,我采用的是直接拉sqlmap过来验证,效率还是可以保证的,还有一些关于服务器层的,我都是直接调用nmap的脚本批量实现,虽然我自己也写了好几十种服务器,web层的未授权访问漏洞验证工具,但是个人终究还是比不上专业工具。

关于url的深度,除了从页面提取有效连接之外,还有更加深层的,我的想法是通过selenium+mitmproxy实现,我一开始是想使用requests实现,毕竟节省内存资源,但是一想到我都9900k孤独寂寞,并且requests不能模拟浏览器滑动触发ajax请求获取深层的url,还是放弃requests。

并且selenium本身就是专业的测试工具,自然能挖掘到更多深层的url,我本来想通过分析selenium的日志来获取网页的深层url请求和链接,但是这样比较慢,吃内存大,于是采用mitmproxy中间人代理,获取所有的深层url,然后通过算法获取到有效的深层url。

关于自动化生成报表

使用python操作word自然可以,但是感觉生成的结果不太美观,可以做一些优化,生成图表或者添加页眉,格式化等等。

当然如果不需要再编辑可以再转换成pdf文件。获取截图使用pillow,但是这个库转换成exe后,截图后保存只能保存为png格式的图片,勿忘。

关于数据存储

一开始我都是使用记事本存储数据,一来是方便,二来是数据量不大,但是漏扫总共会涉及到超大数据量。

所以建议使用数据库,个人推从mysql。数据库一开始一定要做好构架设计,这个非常非常重要,几乎占你漏扫全部的30%核心,一定要有可读性,方便拓展。

如果数据量大了,并发很大,并且你非常有钱拥有很多服务器可以做分布式(偷偷流下了羡慕的眼泪),可以使用mysql+redis做数据存储。

拓展漏洞功能

一些小白刚开始学会写漏扫的时候,看到别人有什么好东西就像加进去,然后发现数据库结构不行,代码也要重构,然后东改西改,最后自己都看不懂代码的真面目了。

一定要做好漏扫的结构设计,分好类,比如服务器端的,web层的,中间件层的存储不同的数据库结构,怎么样才能方便拓展,这些都要提前想好,但是像我这种人只能靠经验慢慢到磨砺了。

心态良好

这个因人而异,当看到别人写出了大规模全方便易拓展的漏扫,心里又是羡慕又是焦虑,这种心态不行滴~要好好告诫自己:做人不要太攀比,踏踏实实做自己~

只要不死,慢慢学,要相信你终究会成为别人眼里的技术大牛的,最后的加油送给正在努力路上的你。

坚持原创技术分享,您的支持将鼓励我继续创作!
------ 本文结束 ------

版权声明

LangZi_Blog's by Jy Xie is licensed under a Creative Commons BY-NC-ND 4.0 International License
由浪子LangZi创作并维护的Langzi_Blog's博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证
本文首发于Langzi_Blog's 博客( http://langzi.fun ),版权所有,侵权必究。

0%