下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

密码身份验证的具体要点解析

作者:课课家教育     来源: http://www.kokojia.com点击数:1400发布时间: 2017-06-16 09:27:00

标签: 数据库数据安全虚拟化

  身份验证的目的是确认当前所声称为某种身份的用户,确实是所声称的用户。在日常生活中,身份验证并不罕见;比如,通过检查对方的证件,我们一般可以确信对方的身份。虽然日常生活中的这种确认对方身份的做法也属于广义的“身份验证”,但“身份验证”一词更多地被用在计算机、通信等领域[1] 。

  很多在线服务无法保护用户密码免受攻击者的攻击威胁,同时,密码作为身份验证方式存在固有弱点,这正迫使政府和IT行业构建可行的长期的替代方案。

密码身份验证的具体要点解析_数据库_数据安全_虚拟化_课课家教育

  美国增强国家网络安全委员会希望看到“到2021年,能够消除因身份作为攻击主要方式(特别是使用密码)的重大数据泄露事故”。这是一个雄心勃勃的目标,因为根据Verizon公司2016年数据泄露事故调查报告显示,在所有成功的数据泄露事故中,63%都可追溯到使用不当的密码。对于使用密码作为身份验证的固有问题,这将需要我们开发和广泛部署更好的身份验证技术,但IT行业一直无法开发替代密码的技术,而现在FIDO身份验证标准等新发展已经开始改变这一局面。

  密码的可用性和可部署性优势是它被长期使用的主要原因,但要求用户记住更长更复杂的密码不现实。根据英国信贷参考机构Experian plc研究显示,在2012年,平均每个英国人拥有25个在线账户,25-34岁的人拥有超过40个账户。另一方面,尽管强大的身份验证产品已经存在多年,成本、缺乏互操作性、供应商锁定以及用户使用不便等问题使它们没有得到广泛部署。同时,使用图像识别(用户识别图片而不是输入密码)的做法提供的优势没有比密码好很多,而虹膜识别等可提供显著安全优势的解决方案通常太昂贵或者使用不方便。

  为了解决强验证技术之间缺乏互操作性的问题,在2012年7月,Paypal、联想和Nok Nok实验室等公司成立了线上快速身份验证(FIDO)联盟,其目的是定义一组开放标准和规范,以帮助多因素身份验证应该平衡安全性与可用性、隐私和互操作性。在2013年,谷歌、Yubico和NXP为强有力第二因素设备制定的开放标准并入FIDO联盟,在2014年年底,1.0版FIDO标准发布。那么,什么是FIDO,它的工作原理是什么,它能否取代密码?

  FIDO是设备为中心的模型,但它不是为任何特定身份验证技术而设计。它将身份验证服务器与特定验证模型分离,这意味着我们可更改身份验证方法或提供商,而不会影响应用性能。它提供两种方式来验证用户身份:Passwordless UX--使用通用验证框架(UAF)协议以及Second Factor UX--使用通用第二因素(U2F)协议(UX代表用户体验)。在未来版本中,FIDO希望这两个标准可进一步发展和协调。

  通过Passwordless UX,用户通过选择本地身份验证机制向在线服务注册其设备。这可以是生物特征,例如刷指纹、自拍或者对麦克风说话。在注册后,用户可在对服务进行身份验证时重复上述过程,而不需要密码。在线服务也可要求多因素身份验证机制,例如生物特征(例如指纹或语音扫描)以及知识(例如密码或PIN)。现在很多设备都有高像素相机、麦克风和指纹读取器,这比以往任何时候都更容易通过生物身份验证来在两方之间建立信任。

  Second Factor UX涉及使用密码或PIN以及符合FIDO的硬件设备来支持双因素身份验证:PIN或密码作为第一因素,而设备的所有权是第二因素。在登录时,系统会提示用户插入并触摸其个人U2F设备,用户的FIDO设备会创建新的密钥对,公钥与在线服务共享并与用户账户相关联。随后,该服务可要求注册设备通过密钥来验证用户身份。目前可移动USB令牌非常流行,还有很多其他选项,包括受信平台模块、嵌入式安全元件、智能卡、蓝牙低功耗和近场通信(NFC)芯片等。这意味着攻击者将需要窃取用户的登录凭证以及其U2F设备才能获取账户或者应用登录。

Second Factor UX涉及使用密码或PIN以及符合FIDO的硬件设备来支持双因素身份验证:PIN或密码作为第一因素,而设备的所有权是第二因素。在登录时,系统会提示用户插入并触摸其个人U2F设备,用户的FIDO设备会创建新的密钥对,公钥与在线服务共享并与用户账户相关联。随后,该服务可要求注册设备通过密钥来验证用户身份。目前可移动USB令牌非常流行,还有很多其他选项,包括受信平台模块、嵌入式安全元件、智能卡、蓝牙低功耗和近场通信(NFC)芯片等。这意味着攻击者将需要窃取用户的登录凭证以及其U2F设备才能获取账户或者应用登录。

  基于共享密钥的身份验证是指服务器端和用户共同拥有一个或一组密码。当用户需要进行身份验证时,用户通过输入或通过保管有密码的设备提交由用户和服务器共同拥有的密码。服务器在收到用户提交的密码后,检查用户所提交的密码是否与服务器端保存的密码一致,如果一致,就判断用户为合法用户。如果用户提交的密码与服务器端所保存的密码不一致时,则判定身份验证失败。使用基于共享密钥的身份验证的服务有很多,如:绝大多数的网络接入服务、绝大多数的BBS以及维基百科等等。

  基于生物学特征基于生物学特征的身份验证是指基于每个人身体上独一无二的特征,如指纹、虹膜等。例如Synaptics Natural ID指纹传感器解决方案,对指纹模板数据进行AES256位加密,对于在智能手机上快速部署生物识别身份验证技术,这种加密方法起到了关键作用。[2]

  基于公开密钥加密算法基于公开密钥加密算法的身份验证是指通信中的双方分别持有公开密钥和私有密钥,由其中的一方采用私有密钥对特定数据进行加密,而对方采用公开密钥对数据进行解密,如果解密成功,就认为用户是合法用户,否则就认为是身份验证失败。使用基于公开密钥加密算法的身份验证的服务有:SSL、数字签名等等。

  FIDO UAF身份验证凭证从不与在线服务提供商共享,仅提供与用户设备配对的公钥。这可避免当服务提供商受攻击时用户账户或个人数据泄露的情况。同时,FIDO身份验证中使用的生物识别信息也不会离开用户设备,设备也不会发出任何信息可被其他在线服务使用来协作以及追踪用户,即使相同设备可用于登录很多服务。

  FIDO正迅速成为全球公认的认证标志。FIDO联盟现在拥有来自世界各地250多名成员,其中包括技术公司、设备制造商、银行和医疗保健公司、所有主流支付卡网络,还有政府以及安全及生物识别供应商。奥巴马总统在增强国家网络安全委员会报告中特别指出FIDO联盟将帮助该委员会发挥重要作用。英国政府新的国家网络安全战略也旨在投资于FIDO身份验证。

  谷歌Chrome是第一个部署Second Factor UX的Web浏览器,但估计到2017年年初,所有主要浏览器都将提供支持。对于用户来说,这意味着不再需要输入通过短信接收的六位数密码来登录在线服务,用户只需要将符合FIDO标准的USB密钥插入计算机,并在按照浏览器提示操作即可。谷歌分析了其已部署两年的U2F安全密钥,并报告称现在支持成本已经下载。该公司使用这种密钥取代了一次性密码(OTP)作为验证其员工的方法,谷歌估计这每年将为其节省数千小时时间。同时,基于OTP的身份验证存在3%失败率,而新方法为0%。

  FIDO为用户和企业带来巨大利益,这也是其得到迅速部署而其他举措未能取代密码的原因。随着越来越多的用户FIDO身份验证的安全优势,在线服务会逐渐不再依靠密码来验证。如果FIDO减少因为账户登录困难而放弃的在线和移动购物车数量,零售商很快会收回升级其网站使其符合FIDO标准所花费的成本。Paypal、阿里巴巴和支付宝都提供基于FIDO身份验证的安全支付,Dropbox、GitHub、Dashlane和Salesforce.com等主要云服务现在都支持U2F。

  即将推出的FIDO 2.0提供本地平台支持以及利用FIDO公钥加密技术的设备到设备身份验证,这将提高很多IoT设备的安全性。客户端到身份验证器协议(CTAP)协议也将在2017年发布,这将使浏览器和操作系统可与外部身份验证器(例如USB密钥卡、NFC和蓝牙功能设备)通信,而不需要用户在他们使用的每台设备重新注册。同时,他们还在为移动钱包提供商和支付应用开发者开发标准以支持消费者设备持卡人验证方法(CDCVM),以便当用户在商店或者应用内进行移动支付时,可通过设备上FIDO认证的身份验证器(例如指纹或自拍生物认证)验证用户身份。

即将推出的FIDO 2.0提供本地平台支持以及利用FIDO公钥加密技术的设备到设备身份验证,这将提高很多IoT设备的安全性。客户端到身份验证器协议(CTAP)协议也将在2017年发布,这将使浏览器和操作系统可与外部身份验证器(例如USB密钥卡、NFC和蓝牙功能设备)通信,而不需要用户在他们使用的每台设备重新注册。同时,他们还在为移动钱包提供商和支付应用开发者开发标准以支持消费者设备持卡人验证方法(CDCVM),以便当用户在商店或者应用内进行移动支付时,可通过设备上FIDO认证的身份验证器(例如指纹或自拍生物认证)验证用户身份。

  多年来,由于基于密码身份验证的缺陷,攻击者已经获得巨大的利润。而FIDO身份验证让身份盗窃变得更加困难和昂贵,同时又不会牺牲安全的便利性。希望FIDO最终将终止密码作为主要身份验证因素的方式。

  PAP 口令验证协议 是一种简单的明文验证方式。NAS(网络接入服务器,Network Access Server)要求用户提供用户名和口令,PAP以明文方式返回用户信息。很明显,这种验证方式的安全性较差,第三方可以很容易的获取被传送的用户名和口令,并利用这些信息与NAS建立连接获取NAS提供的所有资源。所以,一旦用户密码被第三方窃取,PAP无法提供避免受到第三方攻击的保障措施。CHAP CHAP通过使用MD5(一种工业标准的散列方案)来协商一种加密身份验证的安全形式。CHAP 在响应时使用质询-响应机制和单向 MD5 散列。用这种方法,可以向服务器证明客户机知道密码,但不必实际地将密码发送到网络上。

  MS-CHAP 同CHAP相似,微软开发MS-CHAP 是为了对远程 Windows 工作站进行身份验证,它在响应时使用质询-响应机制和单向加密。而且 MS-CHAP 不要求使用原文或可逆加密密码。MS-CHAP v2 MS-CHAP v2是微软开发的第二版的质询握手身份验证协议,它提供了相互身份验证和更强大的初始数据密钥,而且发送和接收分别使用不同的密钥。如果将VPN连接配置为用 MS-CHAP v2 作为唯一的身份验证方法,那么客户端和服务器端都要证明其身份,如果所连接的服务器不提供对自己身份的验证,则连接将被断开。VPN服务端和VPN客户端之间一定要采用相同的身份验证,比如VPN服务端选择了MS-CHAP2,那么相应的VPN客户端也要选择MS-CHAP2,否则无法连接。PAP口令验证协议。由于是明文的。极为不安全,一般不采取这个方式!

  笔者建议至少使用管理员或根级登录凭证进行扫描;这样你将会发现大部分漏洞。然而,通过不同用户角色进行扫描(例如经理级别角色或基本用户角色),你可以更好地了解每个用户组可以看到和利用的资源。在一定程度上,你测试的用户角色越多,你得到的结果会越好(不过在某种情况下将会出现收效递减的规律)。当你看到你的结果不再根据权限而变化时,你会知道什么时候该适可而止。

  还有更多关于密码身份验证的内容,尽在课课家教育,我们期待您的咨询!

赞(14)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程