Cookie
Web 服务器可以使用 HTTP cookie 将有状态信息与特定客户端相关联[56]。Cookie 信息(例如,添加到在线商店购物车的商品的 ID)由客户端存储。Cookie 允许客户端和服务器在每个 HTTP 请求-响应中包含其唯一的会话标识符,从而避免重复身份验证的需要。会话 Cookie 在会话关闭时过期(例如,客户端关闭浏览器),但持久性 Cookie 仅在特定时间后过期。
基于 Cookie 的身份验证允许客户端在每次使用有效 Cookie 向服务器发送请求时重新建立会话。基于 cookie 的会话管理容易受到会话标识符劫持 [57]。发布有效会话 cookie 的劫机者可以使用经过身份验证的受害者的权限连接到受攻击的服务器。
Cookie 还可用于通过提供商跟踪多个会话中的用户。这种行为通常会危及用户隐私(参见对抗行为CyBOK知识区[58]和隐私和在线权利CyBOK知识区[49])。
密码和替代方案
密码是部署最广泛的机制,可让用户对网站和移动应用程序进行身份验证,并保护其敏感信息免受在线非法访问。它们因其低成本、可部署性、便利性和良好的可用性而成为用户身份验证的主要方法。但是,大多数在线帐户使用密码会损害帐户安全性[18]。由于人类往往难以记住许多不同的复杂密码,因此他们经常选择弱密码并为 多个帐户重复使用相同的密码。攻击者很容易在离线或在线上猜到弱密码。重复使用的密码会放大所有密码攻击的严重性。一个被盗用的在线帐户会导致所有其他帐户受到与易受攻击相同的密码保护。虽然密码指南过去经常建议使用复杂密码,但目前的指南指出,要求复杂密码实际上削弱了密码安全性,并建议不要使用包含密码复杂性的策略[59,60]。这些方面在人为因素CyBOK知识领域[20]中进一步讨论。
在线服务提供商部署了各种对策来解决弱密码和密码重用的安全问题:
密码策略
密码策略是鼓励用户选择更强密码的规则集。一些密码策略还解决了记忆问题。为了支持更强的密码,大多数规则都解决了密码长度和组成,黑名单和密码有效期[61,62]。
密码强度计
密码强度计 (PSM) 追求与密码策略相同的目标,旨在鼓励选择更强的密码。PSM通常提供视觉反馈或分配密码分数以表示密码强度(见图7)[63]。
然而,通过部署限制性策略或PSM来解决弱密码和密码重用问题对整体密码安全性的影响有限[64]。因此,服务提供商可以使用简单密码的扩展来提高身份验证安全性。
密码管理器
密码管理器可以帮助用户生成、存储和检索强密码。使用安全随机数生成器和安全加密生成和存储强密码。它们作为本地可安装的应用程序、在线服务或本地硬件设备提供。虽然它们可以帮助用户使用更多样化和更强大的密码,但由于可用性问题,它们对整体密码安全性的影响有限[65]。有关更详细的讨论,请参阅人为因素CyBOK知识领域[20]。
多重身份验证
多因素认证系统不仅需要一个因素(例如密码),还要求用户在认证过程中提供多个因素[66]。网站密码通常辅以双因素身份验证 (2FA) 的第二个因素。最常见的是,第二个因素通常使用移动设备。因此,除了密码之外,用户还需要手头有他们的设备才能接收一次性令牌才能成功进行身份验证。欧洲支付服务指令2(PSD2)要求网络和移动环境中的所有在线支付服务都采用2FA(参见身份验证,授权和问责制)CyBOK知识领域[4])。
网络身份验证
WebAuthn(Web Authentication) [67] Web标准是FIDO2项目的核心组件(参见身份验证,授权和责任CyBOK知识领域[4]),旨在为基于Web的应用程序的用户身份验证提供标准化的界面使用公钥加密。大多数现代 Web 浏览器和移动操作系统都支持 WebAuthn。它可以在单因素或多因素身份验证模式下使用。在多重身份验证模式下,支持 PIN、密码、滑动模式或生物识别。