在 iOS 设备上拥有 SIM 卡的证明

信息安全 移动的 IOS 短信
2021-09-05 09:15:09

我需要证明我的应用程序的用户拥有正确的 SIM 卡。

在 android 设备上,这可以通过简单地在 SMS 中向相应号码发送挑战来实现(此处不讨论用户属于特定电话号码的证明)。由于 android 应用程序可以通过编程方式接收 SMS,因此可以使用数据连接将传输的质询发送回服务器。显然,要实现更多的安全性(例如挑战的数字签名),但这与这里无关。

iOS 无法以编程方式对传入的 SMS 做出反应。有谁知道如何在 iOS 中证明拥有正确的 SIM 卡?

提前致谢。

3个回答

我相信爱立信正在做类似的事情。我不确定他们取得了多大的进步,也不知道它有多容易或有多昂贵,但也许值得关注。

https://labs.ericsson.com/apis/identity-management-framework/

我所看到的只是一些不错的视频幻灯片,展示了该框架如何工作以允许您根据他们的 SIM 卡对人员进行身份验证。它使用称为通用引导架构的东西来检查 SIM/IMEI 组合的真实性。如果 iPhone 目前不支持它,它应该在未来支持,因为它是 3GPP 标准。

http://en.wikipedia.org/wiki/Generic_Bootstrapping_Architecture

抱歉,如果这不是您要找的东西。

如果您查看苹果开发人员示例,它有一个可达性框架,可以告诉您是否存在连接以及它是什么类型的连接。如果存在除 wifi 以外的有效连接,则表示设备中的 sim 卡有效。您可以在此处找到示例代码https://developer.apple.com/iphone/library/samplecode/Reachability/

这在越狱设备上是 100% 不可能的。或者换一种说法,如果用户有发言权,这将永远不可能。什么是 SIM 卡?它只是一个小型内存存储设备,与虚拟磁盘映像没有什么不同。无法验证此信息。最终用户可以像他们的 IMEI 号码一样容易地欺骗这些信息。

欺骗短信或拨出电话的来源是微不足道的。

我不相信在一个 100% 攻击者控制的平台上可以有任何唯一的识别信息。如果它没有完全控制,那么有人为它写越狱只是时间问题。