hgentl/NetIntel

GitHub: hgentl/NetIntel

NetIntel是一个用Go编写的并发CLI工具,用于分析网络基础设施的安全风险并生成评分。

Stars: 0 | Forks: 0

# NetIntel NetIntel 是一个用 Go 编写的并发 CLI 基础架构分析和轻量级威胁情报工具。 它对网络目标进行多层检查(DNS、HTTP、TLS),分析潜在风险,并生成上下文感知的风险评分。 ## 项目目标 建立此项目旨在展示: * Go 语言中的后端工程基础 * 并发和系统设计 * 网络编程(DNS、HTTP、TLS) ## 功能特性 * 并发扫描多个目标 * 使用 goroutine 和通道高效地并行分析多个域名 * DNS 分析 * 解析和反向 DNS 检查 * 检测失败或不一致的域名配置 * HTTP 行为分析 * 状态码分类(4xx / 5xx) * 重定向链检测与分析 * HTTPS 强制检查 * 安全标头分析 * 检测缺失的标头(HSTS、CSP) * 识别潜在的客户端安全漏洞 * TLS 分析 * 证书过期和有效性检查 * 颁发机构检查 * 弹性网络处理 * 重试逻辑 * 超时处理 * 部分结果支持 ## 架构 NetIntel 遵循模块化流水线设计: ``` Collector → Analyser → Scorer → CLI Output ``` * **Collector(收集器)**: * 收集 DNS、HTTP 和 TLS 数据 * 实现重试和超时机制 * 设计为能容忍网络故障并返回部分结果 * **Analyser(分析器)**: * 应用基于规则的检查以识别风险和错误配置。 * 建模真实世界的行为,如 HTTPS 强制执行和重定向模式 * **Scorer(评分器)**: * 将发现转化为风险评分 * 综合考虑严重性、类别权重和上下文关系 * **CLI(命令行界面)**: * 协调跨目标的并发执行 * 提供结构化、人类可读的输出 ## 安装说明 ``` git clone https://github.com/hgentl/NetIntel.git cd netintel go build -o netintel ``` ## 使用方法 ### 单个目标 ``` ./netintel check example.com ``` ### 多个目标(并发) ``` ./netintel check example.com google.com github.com ``` ## 示例输出 ``` ================================= URL: https://example.com Status: 200 OK Latency: 120ms Server: nginx Findings: [LOW] (HTTP) Server header exposed nginx [MEDIUM] (Headers) Missing HSTS header Risk Score: 85 (LOW) ================================= [ERROR] https://bad-domain.cmo → DNS lookup failed ``` ## 测试 包含单元测试和集成测试,涵盖: * DNS 解析和边界情况 * HTTP 状态和标头验证 * TLS 过期和 HTTPS 强制执行 * 并发执行行为 * 风险评分逻辑 ## 未来改进 * 用于与其他工具集成的 JSON 输出 * 用于受控大规模扫描的速率限制 * 扩展威胁情报检查(例如信誉、ASN 分析) * 用于报告流水线的输出格式 ## 许可证 MIT 许可证 ## 作者 作为一个专注于网络安全、基础设施分析和 Go 开发的个人作品集项目构建。
标签:底层编程, 日志审计