27.巡风:企业内网漏洞快速应急与巡航扫描系统
一、项目介绍
巡风是一款由同程安全应急响应中心(YSRC)开发的 企业内网漏洞快速应急与巡航扫描系统,专注于自动化资产发现与漏洞检测。其通过高效的资产识别引擎和插件化漏洞检测机制,帮助安全团队快速定位内网脆弱点,适用于企业安全加固、红队渗透测试等场景
1.1 核心功能
- 资产发现引擎:
-
- 支持配置 IP 段进行自动化端口探测(可调用 MASSCAN 实现全端口扫描)。
- 指纹识别能力覆盖服务类型(如 HTTP、FTP)、组件容器(Tomcat、Nginx)、脚本语言(PHP、Python)及常见 CMS(如 WordPress、DedeCMS)
- 漏洞检测引擎:
-
- 内置 70+ 漏洞插件(如弱口令、未授权访问、CVE 漏洞),支持 JSON 标识符和 Python 脚本两种插件类型
- 支持自定义插件开发,灵活适配企业特有漏洞场景
- 智能报告与搜索:
-
- 生成结构化漏洞报告(支持 HTML/PDF),提供资产分布统计与关键词搜索功能(如按 IP、端口、服务类型筛选)
1.2 适用场景
- 安全应急响应:快速定位内网暴露的脆弱服务(如未修复的中间件漏洞)。
- 资产测绘:自动化梳理内网资产拓扑,识别未知设备与服务。
- 合规检查:验证内网是否符合安全基线要求
二、安装教程
2.1 环境要求
- 操作系统:Linux(推荐 CentOS 7+/Kali)、Windows(需 Python 2.7 64 位)、macOS
- 依赖工具:
-
- Python 2.7、pip、MongoDB(数据库)、Redis(任务队列管理)
- MASSCAN(可选,用于全端口扫描)
2.2 安装步骤(以 CentOS 为例)
- 安装系统依赖:
yum install -y gcc libffi-devel python-devel openssl-devel libpcap-devel
- 获取源码:
git clone https://code.aliyun.com/ysrc/xunfeng.git # 国内镜像
cd xunfeng
- 安装 Python 依赖:
pip install -U pip
pip install -r requirements.txt -i https://pypi.doubanio.com/simple/ # 使用豆瓣源加速
- 配置 MongoDB:
systemctl start mongod # 启动服务
mongo # 进入数据库
> use xunfeng
> db.createUser({user: 'scan', pwd: 'scanlol66', roles: [{role: 'dbOwner', db: 'xunfeng'}]}) # 创建用户
- 初始化数据库:
mongorestore -h 127.0.0.1 -d xunfeng ./db/ # 导入初始数据
- 修改配置文件:
-
- 编辑
config.py
,设置 MongoDB 连接信息及管理员账号(默认:admin/xunfeng321
)
- 编辑
三、基础使用教程
3.1 配置与启动
- 设置扫描 IP 段:
-
- 登录 Web 控制台(默认
http://IP:8000
),进入 配置 > 网络资产探测列表,添加内网 IP 段(如192.168.1.0/24
)
- 登录 Web 控制台(默认
- 启用 MASSCAN(可选):
-
- 安装 MASSCAN 后,在 配置 > 爬虫引擎 中设置其绝对路径并开启
3.2 启动扫描任务
- 资产发现:
-
- 系统将按配置的周期(如每日 2 点)自动扫描,结果展示在 统计 页面
- 漏洞检测:
-
- 进入 任务管理,选择目标 IP 或服务类型,勾选插件(如
FTP弱口令
、Redis未授权
)启动扫描
- 进入 任务管理,选择目标 IP 或服务类型,勾选插件(如
3.3 查看结果
- 漏洞报告:在 漏洞列表 中查看详情(含风险等级、修复建议)。
- 资产统计:通过 统计 页面分析服务分布(如 Apache 数量、SSH 开放情况)
四、进阶使用教程
4.1 自定义插件开发
- Python 插件模板:
def get_plugin_info():
return {
"name": "自定义漏洞检测",
"info": "漏洞描述",
"keyword": "server:http" # 触发扫描的关键词
}
def check(ip, port, timeout):
# 检测逻辑,返回漏洞详情
return "存在漏洞:..."
-
- 将脚本放入
plugins/
目录,重启服务生效
- 将脚本放入
4.2 分布式部署
- 多节点扩展:
-
- 在多台服务器部署巡风,通过 Redis 共享任务队列,启动多个
celery_worker.py
进程实现负载均衡
- 在多台服务器部署巡风,通过 Redis 共享任务队列,启动多个
- 代理与隐蔽性优化:
-
- 配置代理服务器分散流量,避免触发内网安全设备的告警
4.3 结果深度利用
- 联动渗透工具:
-
- 导出扫描结果至文件(如
result.json
),使用nuclei
或Metasploit
进行深度漏洞利用
- 导出扫描结果至文件(如
- 自动化修复:
-
- 结合 API 接口将漏洞数据接入企业工单系统,实现闭环管理
五、官方下载地址
- GitHub 仓库:GitHub - ysrc/xunfeng: 巡风是一款适用于企业内网的漏洞快速应急,巡航扫描系统。
- 国内镜像:https://code.aliyun.com/ysrc/xunfeng.git
- Docker 镜像:支持快速部署(参考
docker-compose.yml
配置)
六、注意事项
- 合法合规:仅用于授权测试,遵守《网络安全法》
- 性能调优:
-
- 控制 MASSCAN 线程数,避免内网带宽拥塞
- 定期清理 MongoDB 历史数据,避免存储压力
- 误报处理:结合人工验证优化插件逻辑,调整指纹匹配规则
通过 巡风,企业可实现内网安全的自动化监控与快速响应,建议搭配 Nmap(端口扫描)和 Nuclei(漏洞验证)构建完整的安全防御体系。