G.O.S.S.I.P 阅读推荐 2022-12-09

admin 2022年12月10日11:53:23评论45 views字数 1848阅读6分9秒阅读模式

1935年12月9日在北平爆发的12.9运动,是广大青年爱国学生在中国共产党地下党组织领导下的一次伟大的抗日救亡运动。长期以来,学生们的爱国热忱和奋不顾身的救国行动,激励了一代又一代青年为振兴中华而奋斗!



今天分享的论文 Security and Privacy Failures in Popular 2FA Apps (目前已被USENIX Security '23接收)中,作者分析了Time-Based One-Time Password (TOTP) 2FA备份机制的安全和隐私泄漏问题,并推荐了更好的实现方法。

G.O.S.S.I.P 阅读推荐 2022-12-09

TOTP 是一种基于时间的动态口令认证方法。它通过一个称为密钥 (key) 的任意长度的随机字符串来生成一个一次性口令 (OTP)。这个 OTP 的生成是依赖于当前的时间,并且在一定的时间间隔内(通常是 30 秒或 60 秒)都是相同的。TOTP 常用于两步认证 (two-factor authentication) 的场景中,作为第二重认证手段。TOTP 相较于短信两步认证 (SMS 2FA) 主要有两个优点。首先,它更加安全,因为 TOTP 的 OTP 不会被网络中的攻击者截获,而短信口令则可能会被网络攻击者截获。其次,TOTP 也更方便,因为它可以通过手机应用程序来生成 OTP,而不需要依赖于网络信号或短信服务。

G.O.S.S.I.P 阅读推荐 2022-12-09

TOTP 也存在一些风险,如果 TOTP APP 被意外卸载或手机丢失,都会导致用户无法登录帐户。作者发现 Google Play 中所有下载量大于 100k 的 TOTP 应用都实现了备份机制来解决这个问题。作者的研究就聚焦于探索这种备份机制是否安全。

作者通过搜索关键词及其自动补全在 Google Play 搜索,获取 metadata 然后去重,最后人工确认一个APP是否为 TOTP 2FA APP,并排除只用于某一特定服务的APP和同时包含密码管理的APP,使得研究只聚焦于 TOTP。作者记录了数据集中的 APP 是否需要任何个人信息(PII)才能使用,应用支持哪些备份机制,如果远程备份可用,备份是否被加密,存储在哪些位置。如果创建备份需要密码,还会记录对于密码的策略,包括密码长度、字符种类等。大部分 TOTP APP都使用了 KDF(key derivation function) ,作者也通过手动分析其使用情况。

作者一共调查了22个TOTP APP,它们的备份及其存储情况如下图所示

G.O.S.S.I.P 阅读推荐 2022-12-09

G.O.S.S.I.P 阅读推荐 2022-12-09

作者的分析表明,7个TOTP APP 可以使用二维码在设备之间传输TOTP secret,而不存在通过网络发送数据。通过二维码的备份优先考虑机密性和完整性,但该机制缺乏可用性。12个 APP 可以通过剪切板复制粘贴,分享按钮等用明文发送备份。3个 APP 使用了明文云端备份。甚至超过 5M+ 用户使用的 Latch 只能通过明文备份到云端,没有其他选项。大部分样本只加密了 TOTP Secret,导致 TOTP label、issuer泄漏(对应的网站地址等)

作者还指出,有12个 APP 允许用户明文备份,而且在备份数据为明文的情况,甚至并不是所有APP都会警告用户的,只有部分(4/12)APP会明确在UI上提示:

G.O.S.S.I.P 阅读推荐 2022-12-09

在那些使用加密备份的APP中,所使用的密钥推导函数(KDF)的使用情况结果如下图所示:

G.O.S.S.I.P 阅读推荐 2022-12-09

Zoho OneAuth 和 TOTP Authenticator 的 KDF 算法都仅使用了一轮 SHA-256,存在很大被爆破的风险。Authenticator 和 App Authenticator 使用了在现在硬件条件下已经不安全的 PKCS#12 。大部分数据集中的样本使用了 PBKDF2,迭代次数都大于等于 10,000 。但是 Open Web Application Security Project(OWASP) 建议 PBKDF2-HMAC-SHA1 迭代 720,000 次,PBKDF2-HMAC-SHA256 迭代 310,000 次。数据集中只有 3 个 APP 使用了先进的 memory-hard KDF ( PBKDF2 仅为 CPU-hard )。Yandex.Key 和 Aegis Authenticator 使用了 scrypt,Duo Mobile 使用了 libsodium 中的 argon2i 算法,这些算法会根据计算机资源动态调整。

大家想知道自己用的TOTP APP 安全吗?那就好好去阅读一下原文吧!


论文PDF: https://www.usenix.org/system/files/sec23summer_198-gilsenan-prepub.pdf


原文始发于微信公众号(安全研究GoSSIP):G.O.S.S.I.P 阅读推荐 2022-12-09

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年12月10日11:53:23
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   G.O.S.S.I.P 阅读推荐 2022-12-09http://cn-sec.com/archives/1455388.html

发表评论

匿名网友 填写信息