
我们很高兴地宣布推出TOKEN2的新系列可编程硬件TOTP密钥。 主要创新是能够使用特殊应用程序通过NFC API同步硬件密钥的系统时钟的功能-当前正在准备针对Android和Windows 10的发行版。
目前还没有适用于iOS的应用程序:尽管最新的iPhone型号上实际存在NFC芯片,但Apple尚未提供使用它们的公共API。
这是为了什么
与移动TOTP应用程序不同,在硬件密钥中,无法通过蜂窝网络或无线电信号通过NTP同步时间:设备的硬件密钥是完全隔离且独立的,并且使用板上的时钟作为准确时间的来源。 1933-1934年。 柏林帝国物理技术研究所的物理学家Scheibe和Adelsberger研究了使用压电效应来测量时间的可能性。 正是这种影响是硬件密钥的系统时钟的基础。 根据质量的不同,此类手表的精度范围为每天±0.3至±1.1 s。 如果该精度对于常规手表而言足够,则在硬件按键中的时间差大于某个限制会导致拒绝激活和/或认证。 第一次注册硬件密钥时,此限制取决于特定的系统(例如,Microsoft Azure MFA允许双向最多600秒的偏移)。 此外,
RFC 6238中已经明确描述了在使用密钥输入期间的偏移同步过程。
RFC 6238 /6。重新同步由于客户端和验证之间可能存在时钟偏移
服务器,我们建议对验证器设置特定的限制
证明者可以“不同步”之前的时间步长
被拒绝。
可以从计算得出的值向前和向后设置此限制
收到OTP值的时间步长。 如果时间步是
建议30秒,验证器设置为仅接受
向后两个时间步长,则最大经过时间漂移为
大约89秒,即计算出的时间步长为29秒,
两个后退时间步长为60秒。
这意味着验证者可以针对
当前时间,然后对每个后退步骤进行两次进一步验证
(总共3次验证)。 成功验证后,
验证服务器可以记录检测到的令牌的时钟漂移
在时间步长方面。 收到新的OTP时
在此步骤之后,验证器可以使用当前的验证器来验证OTP。
通过记录的时间步时钟漂移数调整时间戳
为令牌。
另外,请务必注意,证明者未发送的时间越长
验证系统的OTP越长(可能),
证明者和验证者之间的累积时钟漂移。 在这样的
在这种情况下,上述自动重新同步可能无法正常工作
如果漂移超过允许的阈值。 额外的
应使用身份验证措施来安全地验证
证明者并明确重新同步两个时钟之间的时钟漂移
证明者和验证者。
也就是说,如果身份验证服务器符合RFC的所有要求,并且如果密钥很少用于身份验证,例如一年至少使用两次(可以通过考虑振荡器的精度和服务器允许的时间偏移来计算准确的次数),那么将考虑时间偏移在服务器端,应该不会出现问题。 仅在这种情况下使用按键时,原则上不需要时间同步功能。
但是,在以下情况下,时间同步功能可能会有用:
- 如果TOTP的服务器实现未遵循RFC6238建议#6。 这样的实现的一个示例是DUO :
不支持TOTP令牌漂移和重新同步。 结果,导入的TOTP令牌可能无法在Duo Security上进行身份验证,或者在一段可变的时间后可能无法进行身份验证...
- 如果长时间购买了一批硬件密钥,但是必须在一段时间后才激活它们-在这种情况下,许多系统中根本没有同步机制。
- 如果加密狗用于登录的频率少于同步所需的频率。 例如,如果用户想将相同的TOTP配置文件(更确切地说是共享机密)“复制”到两个设备:a)在雨天,在电话上的移动应用程序上用于日常使用,b)在可编程硬件密钥上作为备份,以备不时之需。 因此,如果这个雨天在3-4年内到来,则由于时差的原因,硬件令牌将无法再使用。 而且,令牌上的电池(长时间未打开)几乎不会失去容量。 因此,在这种情况下,将时钟“拉紧”以使其恢复工作非常简单。
安全分析与往常一样,这种创新始终基于舒适性/便利性和安全性之间的平衡。 可编程密钥具有同步网络攻击(网络钓鱼,中间人等)时间的能力,在大多数情况下,我们的客户使用TOTP令牌正是为了防御此类攻击,他们肯定会完全保护自己,但这种可能性意味着通过重播攻击(重播攻击)进行攻击的可能性可以忽略,并且在
理论上纯属
虚假 ,而攻击者可以:
- 获取第一个因素(密码)。
- 在所有者不知情的情况下 ,可以足够长时间物理访问硬件密钥(请参阅第3步)。
- 通过NFC使用该应用程序,将密钥上的时间转换为特定日期,并记录足够数量的生成代码。 这将无法用脚本解决,因为要生成代码,您需要单击物理按钮,并且当前代码只能在屏幕上看到(它不会通过NFC传输)。
- 退回时间( 这样所有者就不会猜测任何东西 )。
- 最后,使用密码(步骤1)和在步骤3中收到的代码之一登录。
如我们所见,这种风险只有在物理访问设备的情况下才会发生,例如,可能由坐在附近的同事(由于某种原因也知道密码)进行攻击。 但是在这种情况下,使用经典的TOTP令牌将导致同样的风险。 顺便说一句,使用时间同步功能破坏令牌的风险可与fido u2f设备的风险相提并论-如果攻击者在拥有密码的情况下暂时且无法察觉地获得了u2f密钥的访问权限,则他可以使用此密钥登录系统并添加另一个(他的)密钥,并且然后就像将原始密钥悄悄地退还给所有者一样-根据规范,一个帐户可以拥有多个u2f密钥,并且任何一个都可以用于并行登录。 诸如
完美纸质密码之类的因素也面临相同的风险。
如您所见,攻击非常复杂且不太可能发生,并且通常可以将使用此类令牌的风险级别与在没有PIN码,无法访问网络且用户始终随身携带的智能手机上使用诸如Google Authenticator之类的应用程序进行比较。
对于仍然认为这种风险仍然很大的客户,我们在此问题上的建议如下:
- 限制对这种类型的密钥的物理访问与对银行卡的访问大致相同(顺便说一下,我们的密钥采用银行卡的格式)。
- 使用不带时间同步功能的可编程键( miniOTP-1 )
- 使用具有时间同步功能的可编程密钥,并结合使用秘密密钥。 也就是说,当令牌时间更改时,种子将被重置并且有必要再次输入(miniOTP-3,该模型的发布日期将另行宣布)
在哪里买?在我们的网站上可以
预订 。 使用
HABR2019促销代码可获得10%的折扣(优惠券数量有限)。 通过常规邮件(瑞士邮局或法国邮政)投递。 交付到独联体国家后,仍然没有问题。