Find My Location

📍 自动化提取Find My精准位置

privacy-security榜 #2

通过截屏读取和辅助功能API获取Apple Find My联系人位置,实现街道级精度追踪,依赖第三方工具操作GUI

收藏
11.6k
安装
3k
版本
1.0.0
CLS 安全性认证2026-07-03
点击查看完整报告 >

使用说明

核心用法

Find My Location是一款通过自动化手段提取Apple Find My应用中共享联系人位置信息的工具。它结合macOS辅助功能API(通过peekaboo工具)和可选的Hammerspoon脚本引擎,实现无需人工干预的位置数据采集。工作流程为:自动打开Find My应用→选择目标联系人→捕获地图界面→解析可见地标或地址信息→返回结构化数据。

显著优点

  • 精度较高:能达到"街角级"(street-corner accuracy)的定位精度,优于普通API返回的城市级模糊位置
  • 零越狱/零破解:完全依赖官方macOS Find My应用和合法的iCloud位置共享,不涉及系统底层漏洞利用
  • 灵活输出:支持人类可读格式和JSON结构化输出,便于集成到自动化工作流
  • 上下文感知:可配置"家""工作"等已知地点,自动识别联系人所处场景

潜在缺点与局限性

  • 强环境依赖:必须保持Mac常开、Find My应用可访问、iCloud持续登录,稳定性受限于GUI自动化本身的脆弱性
  • 隐私合规风险:追踪他人位置需对方主动开启共享,但工具自动化采集可能超出对方对"共享范围"的合理预期
  • 苹果政策风险:依赖辅助功能和屏幕录制权限操作第一方应用,存在被macOS未来版本限制或封禁的可能
  • 维护成本高:GUI元素变化(如Find My应用更新)会导致脚本失效,需要持续维护

适合人群

  • 需要监控家庭成员(如老人、儿童)位置的安全关切者
  • 已将Find My纳入工作流但需自动化数据提取的效率工具用户
  • 地理位置相关的自动化爱好者(配合地理围栏、通知系统等)

常规风险

  • 数据泄露:配置文件中存储联系人信息、截图缓存路径,需确保文件权限正确(~/.config/findmy-location/
  • 权限滥用:Accessibility和Screen Recording属于macOS最高级别敏感权限,恶意代码可借此监控整个系统
  • 法律边界:自动化批量采集位置数据可能触及个人信息保护法规,建议仅限家庭成员间使用并明确告知被追踪方

安全解读

核心功能

findmy-location 是一款基于 Python 的 CLI 工具,通过 UI 自动化技术操作 macOS 原生 Find My 应用,实现共享联系人的实时位置追踪。核心工作流程包括:调用 Find My 应用、选取目标联系人、截取地图画面、读取辅助功能数据,最终输出结构化地址信息或标记需人工/AI 视觉介入的场景。

显著优点

  • 零网络依赖:仅使用 Python 标准库,无第三方依赖包,供应链攻击面极小
  • 精准定位:通过地标匹配实现街道级精度(street-corner accuracy),支持自定义家庭/工作等已知地点
  • 灵活输出:提供人类可读格式与 JSON 结构化数据,便于集成自动化流程
  • 扩展性强:可选 Hammerspoon 集成解决跨应用点击可靠性问题

潜在局限与风险

| 维度 | 说明 |
|------|------|
| **平台锁定** | 仅限 macOS 13+,且必须登录 iCloud 并开启 Find My |
| **隐私敏感** | 需授予屏幕录制、辅助功能、位置数据等多项高敏感权限 |
| **命令注入风险** | 代码中使用 `subprocess.run(shell=True)`,虽当前参数为内部构造,但不符合安全最佳实践 |
| **外部依赖** | 核心功能依赖第三方工具 peekaboo(屏幕读取)和可选 Hammerspoon(点击代理),需单独验证来源 |
| **T3 来源** | 个人开发者维护,GitHub 仓库信息无法验证,长期维护稳定性存疑 |

适合人群

  • 已深度使用 Apple 生态、熟悉 macOS 权限管理的进阶用户
  • 需要自动化家人/设备位置查询的智能家居开发者
  • 对供应链安全敏感、愿意审查代码后再部署的技术用户

常规风险

  • 临时截图文件存储于 /tmp 未自动清理,存在残留隐私数据
  • 需持续维护 peekaboo/Hammerspoon 的版本兼容性
  • iCloud 账户安全直接影响工具可用性

使用建议

建议在隔离环境(如专用 Mac 或虚拟机)中先行测试,严格审查 subprocess 调用点,并配置定时任务清理 /tmp/findmy-*.png 文件。

Find My Location 内容

手动下载zip · 6.3 kB
findmy-location.pytext/plain
请选择文件