Pulsar 网络足迹扫描平台技术分析一、项目概述1. 项目背景A. 项目简介Pulsar 是一个自动化的网络足迹扫描平台，专为红队、渗透测试人员和漏洞赏金猎人设计。该平台专注于发现组织的公开资产，即使在对其基础设施了解最少的情况下也能有效运行。B. 核心特点100% 免费，无需任何 API 密钥提供网络数据可视化功能基础漏洞评分系统可用作自定义漏洞扫描器适用于广泛且未知的扫描范围C. 项目状态项目已于 2022 年 5 月 24 日被作者归档，仅进行安全补丁和修复。作者表示由于社区支持不足和关注度低，不再继续开发该项目。2. 目标用户红队成员渗透测试人员漏洞赏金猎人安全研究人员二、技术架构1. 技术栈A. 前端技术Vue.js 2.6.11：前端框架JavaScript：主要编程语言（占比 47.5%）CSS：样式表（占比 27.3%）B. 后端技术Django 3.2.12：Web 框架Django Rest Framework：API 框架Python 15.0%：后端逻辑Nginx：反向代理服务器Gunicorn：WSGI HTTP 服务器C. 容器化部署Docker：容器化平台Docker Compose：容器编排基于多容器架构的 PaaS 平台2. 系统架构graph TB Client[客户端浏览器] -->|HTTPS| Nginx[Nginx 反向代理] Nginx -->|WSGI| Gunicorn[Gunicorn 应用服务器] Gunicorn -->|WSGI| Django[Django REST Framework] Django -->|读写| PostgreSQL[(PostgreSQL 数据库)] Django -->|存储| Redis[(Redis 缓存)] Django -->|队列| Celery[Celery 任务队列] subgraph 扫描引擎 Amass[OWASP Amass] ZMap[ZMap] Nmap[Nmap] CloudEnum[CloudEnum] SSHAudit[SSH Audit] WhatWeb[WhatWeb] end Celery -->|调用| Amass Celery -->|调用| ZMap Celery -->|调用| Nmap Celery -->|调用| CloudEnum Celery -->|调用| SSHAudit Celery -->|调用| WhatWeb Django -->|查询| RIPEstat[RIPEstat API] Django -->|查询| NVD[NVD 数据馈送]3. 组件说明A. Web 服务层Nginx：处理 HTTPS 连接，静态文件服务，反向代理Gunicorn：管理 Django 应用进程，处理并发请求Django：提供 REST API，用户认证，任务调度B. 数据存储层PostgreSQL：持久化存储扫描结果、用户数据、配置信息Redis：缓存频繁访问的数据，任务队列代理C. 任务队列层Celery：异步任务处理，扫描任务调度支持定时任务和后台任务执行D. 扫描引擎层集成多个开源扫描工具通过统一的接口调用各类扫描器支持自定义扫描器扩展三、核心功能1. 资产发现功能A. 子域名发现使用 OWASP Amass 进行子域名枚举：被动信息收集主动DNS 枚举证书透明度日志查询搜索引擎爬取B. 顶级域名发现跨 TLD 资产识别新注册域名检测域名变体发现C. 云资源发现集成 CloudEnum 工具：AWS 资源发现Azure 资源发现GCP 资源发现存储桶识别云虚拟机发现2. 漏洞扫描功能A. 基础漏洞扫描端口扫描（ZMap）服务指纹识别（Nmap）Web 技术栈识别（WhatWeb）SSH 配置审计（SSH Audit）B. 漏洞评分系统基础漏洞严重程度评分资产关联性分析弱点识别与优先级排序C. NVD 数据集成实时漏洞数据库查询CVE 信息匹配漏洞影响评估3. 数据可视化功能A. 网络拓扑图资产关系可视化攻击面展示依赖关系图B. 扫描结果展示仪表板视图扫描进度追踪历史数据对比4. 协作与导出功能A. 多用户协作基于 OAuth 的认证角色权限管理团队共享空间B. 数据导出支持多种格式导出REST API 访问批量数据导出5. 任务调度与通知A. 定时扫描周期性任务调度自定义扫描策略扫描策略优化B. 通知系统邮件通知扫描完成提醒异常情况告警四、集成工具分析1. OWASP Amass功能：子域名枚举工具特点：多种数据源集成高度可配置支持被动和主动枚举社区活跃维护2. ZMap功能：高速网络扫描器特点：单台机器可扫描整个互联网适用于大规模端口扫描低调的网络负载3. Nmap功能：网络探测和安全审计特点：功能强大的端口扫描器服务版本检测操作系统指纹识别4. RIPEstat API功能：网络数据分析特点：提供丰富的网络数据IP 地址信息查询路由前缀信息5. CloudEnum功能：云资源枚举特点：跨云平台支持无需 API 密钥被动信息收集6. SSH Audit功能：SSH 服务器审计特点：SSH 配置安全检查密钥交换算法分析加密强度评估7. WhatWeb功能：Web 技术栈识别特点：超过 1700 个插件版本识别快速扫描8. NVD 数据馈送功能：国家漏洞数据库特点：实时 CVE 信息CVSS 评分漏洞详细描述五、部署架构1. Docker 容器结构graph LR subgraph 前端层 Nginx[Nginx 容器] end subgraph 应用层 Web[Web 应用容器] Worker[Celery Worker 容器] Beat[Celery Beat 容器] end subgraph 数据层 PostgreSQL[(PostgreSQL 容器)] Redis[(Redis 容器)] end Nginx --> Web Web --> PostgreSQL Web --> Redis Worker --> PostgreSQL Worker --> Redis Beat --> Redis2. 存储卷结构db_storage：PostgreSQL 数据持久化queue_storage：Redis 数据持久化secrets_storage：敏感信息存储sandbox_storage：沙箱环境存储3. 网络配置默认 HTTPS 端口：8443容器间通信：Docker 内部网络支持云端环境部署六、安装部署1. 系统要求A. 硬件要求CPU：建议 4 核心以上内存：建议 8GB 以上存储：建议 50GB 以上B. 软件要求操作系统：Linux 或 WindowsDocker：最新版本Docker Compose：最新版本Git：版本控制工具2. 安装步骤A. Linux 安装# 克隆仓库 git clone https://github.com/FooBallZ/pulsar # 运行安装脚本 ./install.sh # 访问控制台 https://localhost:8443/B. Windows 安装# 克隆仓库 git clone https://github.com/FooBallZ/pulsar # 运行安装脚本 .\install.ps1 # 访问控制台 https://localhost:8443/3. 配置说明A. 邮件通知配置在 portal/portal/settings.py 中配置 EMAIL_BACKEND 设置B. 外部 API 配置参考 USAGE.md 文档配置外部 API 集成七、REST API 接口1. API 端点基础路径：/pulsar/api/v1/认证方式：OAuth数据格式：JSON2. 主要接口A. 扫描任务管理创建扫描任务查询任务状态获取扫描结果B. 资产管理添加资产查询资产列表更新资产信息C. 报告生成生成扫描报告导出数据统计分析3. API 文档自动生成的 API 文档：/pulsar/api/v1/开发文档：/admin/doc/八、项目现状与挑战1. 项目归档原因A. 社区支持不足缺乏活跃贡献者用户反馈有限社区生态不完善B. 维护成本高多技术栈维护复杂安全更新工作量大功能扩展困难2. 技术挑战A. 性能优化大规模扫描性能瓶颈数据库查询优化任务队列调度优化B. 安全性扫描活动的法律合规性用户权限管理敏感数据保护C. 可扩展性支持更多扫描工具集成插件系统完善分布式扫描支持九、技术特点总结1. 优势A. 开箱即用Docker 容器化部署一键安装脚本预配置的扫描工具B. 功能全面覆盖资产发现全流程集成多个开源工具可视化分析能力C. 开放性100% 免费开源无需 API 密钥支持自定义扩展2. 局限性A. 性能限制单机部署架构扫描速度有限大规模任务处理能力弱B. 功能深度基础漏洞扫描为主不支持高级漏洞利用缺少 AI 辅助分析C. 维护状态项目已归档仅安全补丁更新长期维护不确定性十、应用场景1. 红队演练目标组织资产发现攻击面分析漏洞优先级排序2. 渗透测试信息收集阶段资产盘点安全基线检查3. 漏洞赏金大范围资产发现持续监控自动化初筛4. 安全监控资产变更监控新资产发现定期安全评估十一、法律合规提示1. 法律风险端口扫描在某些国家可能违法未经授权的扫描可能构成犯罪需确保获得目标资源授权2. 合规建议仅在授权范围内使用遵守当地法律法规做好使用记录和审计十二、替代方案1. 商业产品被动资产发现平台攻击面管理（ASM）工具漏洞管理平台2. 开源替代Subfinder + Naabu：子域名和端口发现Recon-ng：信息收集框架Assetnote：持续安全监控3. 自建方案基于开源工具组合定制化扫描流程集成内部工作流参考资料Pulsar GitHub 仓库OWASP Amass 官方文档ZMap 官方网站Nmap 官方网站RIPEstat API 文档