Okta Verify 中文文档 下载 App

防钓鱼原理:公私钥绑定设备与来源校验

动态码验证有个理论弱点:码是「算出来的一串数字」,钓鱼网站若把你的输入实时转发给真登录页,码就跟着失效。FastPass 之所以被称为防钓鱼(phishing-resistant)验证,是因为它的验证材料根本不是可转发的数字。

公私钥怎么工作

依据官方 FastPass 技术白皮书:

  1. 注册时,设备内生成一对公私钥——私钥存留在设备安全区域,绝不出设备;公钥交给 Okta 云端;
  2. 登录时,云端发起一个一次性随机数挑战;
  3. 设备用私钥对挑战做数字签名应答;
  4. 云端用公钥验证签名——通过,即证明「请求来自注册设备本身」。

整个过程没有可复用的「数字」,抄走任何一次交互内容都没有意义。

来源校验:假网站的死穴

FastPass 还会校验请求来源(origin):登录请求必须来自合法的组织域名。钓鱼网站伪装得再像,它所在的域名对不上合法来源,验证直接失败——官方白皮书原文:以防钓鱼方式部署时,FastPass 校验请求来源头,检测到与原网站不匹配即识别攻击,管理员与用户都会收到钓鱼尝试通知。

三种验证方式的防线对比

方式验证材料钓鱼场景下的表现
六位动态码30 秒滚动的数字可能被实时中继转发
推送批准一次性的批准动作号码匹配开启后基本失效(见号码匹配)
FastPass设备私钥签名 + 来源校验假站点来源校验失败,攻击被识别

设备绑定与生物识别的叠加

FastPass 的私钥绑定设备,并可与平台生物识别(Windows Hello、Touch ID、Face ID)结合,同时满足「持有证明」与「本人证明」两个要求;不支持生物识别时可用设备口令回退(此时属于「知识证明」档)。管理员还可以把用户验证设为强制档(含仅生物识别档),把确认强度拉满——见指纹面容与锁屏确认。

对普通用户的含义

延伸阅读