gOSINT手机号查询指南:PNI模块如何用OCR识别验证码获取机主姓名 📅 发布时间:2026/8/18 17:18:06 👁 浏览次数: gOSINT手机号查询指南PNI模块如何用OCR识别验证码获取机主姓名【免费下载链接】gOSINTOSINT Swiss Army Knife项目地址: https://gitcode.com/gh_mirrors/go/gOSINT你是否曾经接到陌生来电却不知道对方是谁作为一款用 Go 编写的开源 OSINT 瑞士军刀gOSINT 提供了强大的手机号查询能力——其内置的 PNIPhone Number Investigation模块只需一条命令就能通过 OCR 识别验证码的方式自动帮你查出一个手机号码对应的机主姓名。本指南将面向新手一步步讲解 gOSINT 手机号查询的完整流程与 PNI 模块的工作原理。gOSINT 是什么集多功能于一体的 OSINT 工具箱 gOSINT 是一个跨平台的开源情报OSINT收集工具作者将其称为OSINT 瑞士军刀。它集成了众多实用模块Git 邮箱收集、PGP 密钥查询、密码泄露检测HIBP、Shodan 主机扫描、Telegram 群组爬取、子域名枚举、反查 Whois以及我们今天的主角——手机号机主查询PNI 模块。从上图可以看出gOSINT 采用了高度模块化的架构设计各功能模块相互独立、按需调用PNI 模块正是其中负责手机号情报收集的关键组件。PNI 模块能做什么一条命令查出机主姓名 PNI 模块即 Phone Number Investigation的核心功能只有一个给定一个带国家代码的手机号自动查询并返回机主姓名。它的实现源码位于 internal/pni/pni.go整个查询逻辑完全自动化你无需手动操作浏览器或填写任何表单。安装准备两分钟完成环境搭建 ⚙️在开始手机号查询之前需要先准备好运行环境。由于 PNI 模块依赖 tesseract-ocr 引擎来识别验证码请先安装以下依赖tesseract-ocrOCR 识别引擎本体libtesseract-dev开发库libleptonica-dev图像处理库安装完依赖后克隆项目并编译git clone https://gitcode.com/gh_mirrors/go/gOSINT cd gOSINT dep ensure make编译完成后当前目录下就会生成gosint可执行文件。如果想了解所有子命令直接运行./gosint --help即可。PNI 手机号查询的完整工作流程 很多新手会好奇gOSINT 是如何做到自动识别验证码、无需人工参与的其实整个过程分为三步代码逻辑一目了然。第一步模拟移动端浏览器获取验证码查询并非直接发送请求而是先模拟 Android 移动端浏览器的 User-Agent 访问 sync.me 的搜索页面。PNI 模块会从返回的 HTML 中通过正则表达式提取出验证码图片的 ID再根据该 ID 下载验证码图片。这一步对应源码中的sendGETRequest函数它负责维护 Cookie 会话确保后续请求状态一致。第二步OCR 识别验证码自动破解人机验证这是整个模块最精妙的部分。拿到验证码图片后gOSINT 调用 Go 语言的 gosseract 库tesseract-ocr 的 Go 封装对图片进行 OCR 文字识别并设置了字母数字白名单来提升识别准确率对应源码中的solveCaptcha函数。识别出的验证码会随 POST 请求一起提交从而通过网站的验证门槛。第三步提交手机号解析返回的机主姓名验证通过后模块会携带同样的会话再次提交 POST 请求查询目标手机号服务器返回的 JSON 数据中包含机主姓名。如果返回的error_code为 0说明查询成功如果返回 8203则说明未能找到机主信息。gOSINT手机号查询最快上手方法 环境就绪后手机号查询操作简单到只需一行命令。注意手机号必须以开头并带上国家代码否则模块会直接报错退出。查询单个号码默认输出机主姓名./gosint pni 8613800138000使用 JSON 格式输出适合脚本二次处理./gosint --json pni 8613800138000一次查询多个号码也完全支持只需在命令后依次列出所有号码即可。命令入口定义在 cmd/gosint/main.go模块入口则是 internal/pni/pni.go 中的StartPNI函数。常见问题与排错指南 ️提示Unable to complete the challenge correctly说明 OCR 识别验证码失败这通常是因为验证码图片模糊或字符变形。此时程序会输出提示重试即可若反复失败可考虑更换验证码识别策略。提示Unable to find owner返回错误码 8203表示该号码在 sync.me 数据库中查无记录换一个号码试试。输出乱码或解析失败可以在命令后追加--debug参数把调试输出反馈给开发者排查问题。忘记带国家代码模块会明确提示is invalid, You must specify the country code with 补上前缀即可。写在最后合规使用提醒 ⚖️gOSINT 手机号查询功能展示了 OSINT 自动化的魅力一个命令行工具配合 OCR 验证码识别就能自动完成原本需要人工多次点击的查询流程。PNI 模块是学习 Go 语言编写爬虫与 OCR 集成的绝佳示例其代码风格简洁、模块边界清晰非常适合新手阅读。不过请务必牢记手机号属于敏感个人信息查询机主信息请仅用于合法授权范围内的场景如反诈骗取证、自有号码核实等切勿用于骚扰、诈骗或其他非法用途。技术本身没有对错善用工具才能让 OSINT 发挥正向价值。想进一步了解其他模块不妨看看 README.md 中的完整功能清单逐一体验这份瑞士军刀的更多用法。【免费下载链接】gOSINTOSINT Swiss Army Knife项目地址: https://gitcode.com/gh_mirrors/go/gOSINT创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考