0xsh4n/NumGather

GitHub: 0xsh4n/NumGather

一款基于 Python 的电话号码情报 CLI 工具,提供号码验证、归属地查询、格式标准化及可选的本地 LLM 推理分析。

Stars: 8 | Forks: 0

# NumGather 2.0 专为 SecHunt-OS 设计的电话号码智能 CLI —— 提供国家、运营商、号码类型、时区、印度 MSC 服务区查询,以及可选的 **Ollama** 本地 LLM 推理。 ## 功能 | 功能 | 描述 | |---|---| | 验证 | 通过 Google libphonenumber 进行号码可能性/有效性检查 | | 身份信息 | 国家、ISO 区域、国家代码、国内号码 | | 类型 | 手机、固定电话、VoIP、免费电话、付费电话…… | | 运营商 | 可用时提供 ISP / 网络名称 | | 时区 | 该号码可能的时区 | | 格式 | E.164、国际格式、国内格式、RFC3966 | | 印度 MSC 数据库 | 通过本地前缀数据库查询服务区及运营商 | | 规则洞察 | 携号转移提示、类型说明、不确定性标记 | | **Ollama** | 基于完整报告的本地 LLM 推理(包含推理模型) | | 批量 / JSON | 支持号码文件输入,提供机器可读输出 | ## 安装 **Linux / macOS** ``` git clone https://github.com/0xsh4n/NumGather.git cd NumGather chmod +x setup.sh ./setup.sh # 或者:pip3 install -r requirements.txt ``` **Windows** ``` git clone https://github.com/0xsh4n/NumGather.git cd NumGather setup.bat :: optional interactive run after install: setup.bat --run ``` ### 可选:Ollama(推理) 1. 安装 [Ollama](https://ollama.com) 2. 拉取模型: ``` ollama pull llama3.2 # 面向推理的示例: ollama pull deepseek-r1 ollama pull qwen2.5 ``` 3. 确保 daemon 正在运行(如有必要,请使用 `ollama serve`)。 环境变量覆盖配置: | 变量 | 默认值 | 含义 | |---|---|---| | `OLLAMA_HOST` | `http://localhost:11434` | API base URL | | `OLLAMA_MODEL` | `llama3.2` | 默认模型 | | `OLLAMA_TIMEOUT` | `120` | 请求超时时间(秒) | ## 使用说明 请始终包含国家前缀(`+`)。 ``` # 交互式 python3 NumGather.py # 直接查询 python3 NumGather.py +919874512362 # Full intelligence + Ollama 推理 python3 NumGather.py +14155552671 --ollama # Reasoning model + streaming python3 NumGather.py +919876543210 -o -m deepseek-r1 --stream # 用于脚本的 JSON python3 NumGather.py +447911123456 --json # 批处理文件(每行一个号码;支持 # 注释) python3 NumGather.py --batch numbers.txt -o # 列出本地 Ollama 模型 python3 NumGather.py --list-models ``` ### CLI 参数 ``` number Phone number (optional if interactive / --batch) -r, --region REGION Default region if no +country_code (IN, US, …) -o, --ollama Enable Ollama reasoning -m, --model NAME Ollama model name --host URL Ollama base URL --stream Stream LLM tokens --list-models Show models on Ollama host -j, --json JSON output -b, --batch FILE Analyze many numbers --no-color Disable ANSI colors -q, --quiet Skip banner -V, --version Print version ``` ## 输出示例(结构) 确定性报告包含有效性、国家/运营商、类型、时区、格式、印度服务区(当号码为 `+91` 时)以及基于规则的洞察。使用 `-o` 参数时,Ollama 会在此基础上添加基于这些事实的 OSINT 风格推理分析(不包含虚构的订阅者 PII)。 ## 项目结构 ``` NumGather.py CLI entry (v2.0) lookup.py Intelligence engine ollama_client.py Ollama chat / streaming client areadatabase.py India MSC prefix database requirements.txt Dependencies setup.sh Install helper (Unix) setup.bat Install helper (Windows) ``` ## 注意事项 - 运营商名称反映的是号码分配计划 / 库数据 —— **MNP**(携号转移)可能导致实际 ISP 与原始 MSC 前缀不符。 - Ollama 不会替代验证过程;如果 Ollama 宕机,确定性报告仍会正常输出。 - 此工具**不**执行实时的 HLR 查询或个人追踪。 ## 致谢 由 **H1DD3N_SH4D0W** 为 SecHunt-OS 开发 · [GitHub](https://github.com/0xsh4n/NumGather)
标签:AI风险缓解, DLL 劫持, GitHub, Linux安全, LLM评估, Ollama, Python, 大语言模型, 实时处理, 文档结构分析, 无后门, 网络安全, 逆向工具, 隐私保护