PhoneInfoga 电话号码信息收集工具介绍:一条命令拿到运营商与线路类型
【免费下载链接】phoneinfogaInformation gathering framework for phone numbers项目地址: https://gitcode.com/GitHub_Trending/ph/phoneinfoga
PhoneInfoga 是一个面向电话号码的开源信息收集框架,属于 OSINT(开源情报)方向。给它一个完整的国际号码,它会解析出国家、运营商、线路类型,并按社交媒体、一次性号码服务商等多个角度生成搜索链接。它同时支持命令行和 Web 界面,也可以作为 Go 库接入你自己的程序。
一次扫描能拿到什么信息
以+4176418xxxx(一个瑞士号码)为例,一次扫描的输出大致包含四部分:
- 本地解析:Raw local、Local、E164、International 四种号码格式,外加国家码(示例输出为 CH)。这部分无需任何配置,开箱即用。
- Numverify 接口:号码是否有效、线路类型(如 mobile)、运营商。
- Google 搜索链接集:按社交媒体、一次性号码服务商、来电信誉、个人线索等类别,生成针对该号码的 Google Dorks 搜索链接,你在浏览器里逐个打开即可。
- OVH Telecom:判断号码是否属于 OVH Telecom 的 VoIP 号段,是的话还会给出号码段和城市。
官方文档同时写明了它的"反功能":不提供实时追踪、不提供精确位置、不保证数据经过核实。它是一个侦查辅助工具,不是核验权威——这点对正确预期它的能力很重要。
3 分钟跑通第一次扫描
📦 安装有三条路线,任选其一:
- 从 release 页面下载对应操作系统和架构的二进制,直接运行;
- macOS 用户可以用 Homebrew:
brew install phoneinfoga; - Docker 用户:
docker run --rm -it sundowndev/phoneinfoga version先验证镜像可用。
三种方式的完整步骤见仓库内的安装指南。装好后,扫一个号码就一条命令:
phoneinfoga scan -n "+1 (555) 444-1212" phoneinfoga scan -n "+33 06 79368229"⚠️ 几个注意点:
- 国家码是必需的,缺少国家码的号码无法解析;
( ) - +这类特殊字符会自动转义,美式写法照抄即可;- 需要 API 密钥的扫描器在未配置时会被自动跳过。密钥写在当前目录的
.env文件里,工具会自动读取;用别的文件名时加--env-file指定。
内置 5 个扫描器速览:谁要密钥,谁开箱即用
| 扫描器 | 拿到什么 | 需要配置 |
|---|---|---|
| local | 四种号码格式、国家码 | 无 |
| numverify | 有效性、线路类型、运营商 | NUMVERIFY_API_KEY |
| googlesearch | 分类搜索链接(社媒/一次性号商/信誉/个人) | 无 |
| googlecse | 通过 Google 自定义搜索 API 真实拉回搜索结果 | GOOGLECSE_CX、GOOGLE_API_KEY |
| ovh | 是否 OVH Telecom 号码、号段、城市 | 无 |
其中 googlecse 是唯一能自动取回结果的扫描器:官方文档说明 Google 自定义搜索 API 每天免费 100 次查询(约 50 次扫描),量更大则需开通计费。各扫描器的配置项和完整输出样例在 docs/getting-started/scanners.md 里都有。
命令行背后:并行执行与自动跳过
核心是 lib/remote/ 里的Library结构体,工作流程分三步:
- 启动时把各扫描器逐一注册进 Library,过滤引擎(lib/filter/filter.go)决定跳过谁;CLI 的
-D参数就是借这个机制在本次运行中排除指定扫描器。 - 执行
Scan时,每个扫描器各起一个 goroutine,先调用DryRun自检(例如缺 API 密钥就静默跳过),通过后再Run取数。 - 结果与错误分别汇总进两把锁保护的 map;某个扫描器 panic 会被 recover 记成错误,不影响其余扫描器继续。
这套设计的要点是"扫描器可插拔":每个数据源都是一个独立的Scanner实现,跳过和失败互不传染,加新源不改主流程。
Web 界面、REST API 与编写自己的扫描器
不想敲命令行的话,phoneinfoga serve会启动一个无状态的 Web 服务(API 用 Go 编写,前端是 Vue.js,不需要任何持久化存储)。默认监听 5000 端口,-p 8080可换端口,加--no-client则只跑 REST API。启动后浏览器访问http://localhost:5000,即可输入号码、选择扫描器并查看结果:
🔌 需要接入自己的数据源时,可以用 Go 插件模式:写一个实现 Scanner 接口的扫描器,用go build -buildmode=plugin编译,再通过phoneinfoga scan -n <number> --plugin ./customscanner.so加载,同一参数可指定多个插件。完整模板在 examples/plugin/,里面含一个带测试的示例实现。
下一步
装好后先扫一个带国家码的号码试试:
phoneinfoga scan -n "+1 (555) 444-1212"
密钥配置方式和全部参数说明见仓库内的使用文档。
【免费下载链接】phoneinfogaInformation gathering framework for phone numbers项目地址: https://gitcode.com/GitHub_Trending/ph/phoneinfoga
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考