已迁移平台:segmentfault,搜索 erma0
换平台了,简书发什么都锁定,广告一堆,趁早倒闭吧。
以前装没做记录,最近重装系统了,突然想再搞一下玩玩,记录一下过程,避免以后踩坑。
0x01 安装
1. 下载
2. 安装
对照文档安装就行。
总结就是:
- 安装Python2
- 安装(更新)pip,安装依赖库
python2 -m pip install --upgrade pip --force-reinstall
pip2 install -r requirements.txt -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
- 安装数据库
- 对照文档,启动数据库,指定数据库路径,设置数据库用户,导入数据库模板
- 修改
config.py
0x02 配置
- 修改run.bat
需要修改数据库路径,Python3共存的还需要改成Python2start mongod --port 65521 --dbpath E:\gitee\xunfeng\DBData --auth start python2 web.py start python2 aider/aider.py start python2 nascan/nascan.py start python2 vulscan/vulscan.py - 默认一个IP段最大10个B段
因为xunfeng\nascan\lib\start.py中限制不能超过655360个IP。
有需要可用自己去掉限制,不影响,但不建议。
因为masscan扫描较慢,所以IP段分批散开可以尽快更新资产列表。 - 任务界面(task)请求500
任务列表页会列出每个任务的扫描范围(ip:port),任务目标服务过大时,页面上会有大量的ip端口信息从而导致500。
如果确实扫描范围比较大的话,把显示ip端口的逻辑去除即可,
具体的话就是把xunfeng/views/templates/task.html中60到63行去除<!-- <div id="bg-primary{{ loop.index0 }}" class="panel-collapse collapse" style="margin-top: 20px"> {% for ips in i['target'] %} <div class="label label-ips" style="padding-bottom: 1px">{{ ips[0] }}:{{ ips[1] }} </div> {% endfor %} </div> --> - 开启masscan时,默认扫描全部端口,如果只想扫部分指定端口,要么不开masscan,要么手动修改masscan命令,修改位置为
\xunfeng\nascan\plugin\masscan.py
0x03 坑
- 安装数据库后打不开
- 检查环境变量
- 目录下不知道怎么多了个无效的mongod.exe文件,删掉就行了。
- 数据库新建用户卡住,无法添加
先启动数据库,再通过Navicat连接,在Navicat中添加用户。 -
ICMP存活探测开启的情况下无法探测资产
原因不明,关闭就行了 - 开启MASSCAN时,默认速度过大
一般情况下,发包速度和准确率是成负相关的,发包速度过大会导致扫描结果的准确率降低,可以根据网络环境自行修改,本地100M宽带,改为5000时不耽误日常使用(一般情况下跑不满,只有2-3kpps)。 - MASSCAN路径
巡风中自带masscan,路径为本地路径\xunfeng\masscan\windows_64\masscan.exe
Windows10下测试可用 - 资产探测时,内存飙升,直到卡死,输出一堆字符,疑似issue #213,网上查了下,没找到解决办法。【参考1】 【参考2—chargen】
0x04 使用
1. 【配置】——【爬虫引擎】
- 设置masscan路径(安装目录下有)、发包速度(默认也行)
- 修改资产探测周期,不常用,改为10|1(10天一次,夜里1点)(PS:更新资产列表后会立即探测,不需要监控资产的把周期改大点,需要扫描的时候改一下资产列表就行了)
- 存活探测(ICMP)关掉(本地测试时开着这个masscan不能扫描)
- 修改端口探测列表,加入一些常见的自定义端口(比如6666、8888等)
-
填入【网络资产探测列表(必填)】 。
其他的设置默认。
2. 检查是否在扫描资产列表
在Win环境下,巡风启动后,会出现4个python窗口,一个MongoDB窗口,更新完资产列表后,找到其中一个输出类似下方内容的python窗口
[10:05:20] 获取配置成功
[10:05:20] 扫描规则: 10|1
......
正常情况下会在一分钟内输出开始扫描,此时等待masscan扫描,完成后会输出IP并进行下一步扫描。
如果输出开始扫描后,没有其他输出就又输出扫描规则: 10|1,表示扫描失败了,再检查masscan及其他配置。
3. 新建任务开始扫描漏洞
- 转到【搜索】,输入条件,搜索IP(一般根据服务类型搜索,如
server:rdp) - 搜索结果页面中勾选【结果集全选】,【新增任务】,选择需要的插件,【保存任务】,等待漏洞扫描完成即可。
官方提示:选择插件时,优先选择kunpeng开头的插件;
PS:kunpeng-mssql弱口令需要本地安装SQLserver2008环境;
但是,经本地测试(Win10),kunpeng插件问题很大,漏报很严重,虽然自带插件有点误报,但是可以接受。不知道是不是环境问题,有机会再到Linux测试一波。
本地测试(Win10)结果:kunpeng-MySQL弱口令和ftp弱口令扫描时,漏掉的很多,每次扫描结果还不一样,比自带的弱口令插件结果差的多。
4. 手动输入目标
- 【搜索】—【自定义】—【新增目标】,好像可输入域名、URL等格式,没测试过
5. 查看/导出扫描结果
- 【任务】,点击任务名,即可跳转到结果页
- 【任务】,【下载】,即可下载全部结果