APP下载

电子认证令牌安全研究

2013-08-20严霄凤

网络安全技术与应用 2013年2期
关键词:令牌口令攻击者

严霄凤

工业和信息化部计算机与微电子发展研究中心(中国软件评测中心) 北京 100048

0 引言

电子认证是电子政务和电子商务的核心环节,目的是建立以电子方式提交到信息系统的用户身份的可信性,确保网上传递信息的真实性、保密性、完整性和不可否认性。信息系统可以根据经过电子认证的身份确定某人是否被授权执行电子政务、电子交易等相关网络活动。

电子认证令牌包含电子认证过程中证明用户身份的秘密,通过一个或多个认证因素控制,由用户拥有,用于证明用户的身份。根据令牌使用的认证因素数量和类型的不同,其特点也不同。

对令牌的拥有和控制是认证用户身份的证据,如果令牌受到不法分子的攻击,被偷窃、篡改或复制,将使攻击者获得对令牌控制的机会,伪装成令牌的主人,实施不法行为,给令牌用户造成损失或危害。

1 令牌

传统的认证系统将知道的东西(如口令)、拥有的东西(如ID徽章、IC卡和动态口令卡)和自身的特征(如指纹、瞳孔、声音或其他生物特征)三种因素作为认证的基本要素。令牌的特点由其使用的认证因素的数量和类型决定,令牌可能是单因素或多因素的:

(1) 单因素令牌:使用三个认证因素之一获得认证。例如,口令是知道的东西。不需要其他因素激活令牌,被认为是单因素的。

(2) 多因素令牌:使用两个或多个认证因素获得认证。例如,通过PIN码激活智能卡上的私钥是一个多因素令牌,因为智能卡是拥有的东西,PIN码是知道的东西。

认证系统的安全程度在很大程度上取决于系统采用的认证因素的数量。使用两个认证因素的认证系统比只使用一个认证因素的认证系统更强;使用所有三个认证因素的系统比只使用两个认证因素的系统更强。

通常情况下,双因素令牌足以达到认证需要的安全水平,但在某些应用或环境中可能需要使用多个认证因素获得要求的认证强度。

令牌的一个抽象模型如图1所示。

图1 令牌模型

图的外框表示令牌,令牌可能存在一个硬件(如智能卡)、软件(如软件加密模块)或人的记忆中。内框代表存储在令牌中的令牌秘密。令牌的输出是提供给协议栈,以便传输给验证方,证明用户拥有和控制令牌的一个值——令牌验证码。令牌验证码可能是令牌秘密或令牌秘密的变形。

令牌有两个可选的输入:令牌输入数据和令牌激活数据。为了生成令牌验证码可能需要令牌输入数据,如一个挑战或随机数。令牌输入数据可由用户提供,或者是令牌本身的一个功能,如一次性口令(One-time Password,OTP)设备的时钟。为了激活令牌并允许生成令牌验证码,可能需要令牌激活数据,如一个PIN码或生物特征识别。当用户通过知道的东西或自身的特征控制令牌时,需要令牌激活数据。

验证码在使用令牌的过程中生成。一般情况下,通过使用令牌秘密和一个或多个可选的令牌输入值(如,一个随机数或挑战)执行数学函数生成验证码:

验证码=f(<令牌秘密>〔,<随机数>〕〔,<挑战值>〕)

在令牌是一个口令的情况下,验证码就是令牌秘密本身。

令牌中包含的秘密基于公共密钥对(非对称密钥)或共享秘密。公共密钥对由一个公钥和一个关联的私钥组成。私钥存储在令牌中,由用户用于证明其对令牌的拥有和控制。验证方通过一些凭证(通常是公钥证书)获取用户的公钥,通过证明用户拥有和控制关联的私钥令牌,使用认证协议验证用户的身份。存储在令牌中的共享秘密,可能是对称密钥或口令,虽然他们可以使用类似的协议,但两者之间的一个重要区别是如何与用户关联。对称密钥通常存储在用户控制的硬件或软件中,口令往往由用户记忆。因此,密钥是用户拥有的东西,而口令是用户知道的东西。因为口令需要记忆,所以通常达不到加密密钥可能的长度,在许多协议中,很容易受到网络攻击,不适合作为密钥。此外,将口令输入系统的入口(通常是键盘)为非常简单的键盘记录攻击提供了机会,还可能让附近的人通过偷窥输入获取口令。所以,密钥和口令代表了不同的认证属性。

在电子认证过程中,用户在网络上通过证明其拥有和控制令牌,从而表明用户是申请到令牌的用户,让系统或应用程序认证其身份。

2 电子认证令牌

电子认证令牌总会包含一个秘密,一些经典的认证因素并不直接适用于电子认证。例如,ID徽章是用户拥有的东西,当向门卫证明用户的身份时是有用的,但它不是一个用于电子认证的令牌。归类为知道的东西的认证因素不一定是秘密。在基于知识的认证中,用户被提示回答可以从公共数据库中得到证实的问题,也没有构成电子认证可接受的秘密。一般来说,自身的特征一般不构成秘密,因此不使用生物特征作为电子认证令牌,但他们在电子认证中具有自己的一席之地。例如,通过指纹保护访问一个其中包含加密密钥(令牌秘密)的硬件(令牌)。当与生物特征识别一起使用时,加密密钥产生一个输出(令牌验证码),用于在认证过程中验证用户。冒名顶替者必须通过偷窃硬件获取加密密钥并复制指纹,才能使用令牌。尽管在验证方与用户之间实际认证协议只简单地证明用户拥有密钥,但这样的设备有效地提供了双因素认证。

生物特征识别的特点是可以用个人惟一的特征属性验证身处验证点的人的身份。生物特征识别包括面部特征、指纹、DNA、虹膜和视网膜扫描、声纹及许多其他特性。生物特征识别可用于在注册过程中提高安全级别,防止以后用户否认注册,帮助识别提交注册欺诈的人,以及进行令牌解锁。

用于电子认证中的令牌主要有以下几种类型:

(1) 记忆秘密令牌:在用户和认证服务提供者(Credential Service Provider,CSP)之间共享的一个秘密。记忆秘密令牌通常是字符串(如口令)或数值串(如PIN码)。在认证过程中提交给验证方的令牌验证码是秘密本身(如口令本身)。记忆秘密令牌是知道的东西。

(2) 预注册知识令牌:对一组提示或挑战的一系列响应。这些响应可被看作是一组共享秘密。提示和响应组由用户和CSP在注册过程中创建。在一次认证过程中,令牌验证码是一组记忆中的对注册提示的响应。例如,对诸如“你第一个宠物的名字是什么?”的提示设置的响应。在认证过程中,要求用户提供对一个提示子集的正确响应。另外,用户可能在注册过程中选择和记忆了一个图像。在认证过程中,用户被提示从一组类似的图片中识别正确的图像。以前验证的会话交易可作为预注册知识令牌。预注册知识令牌是知道的东西。

(3) 查找秘密令牌:存储用户和CSP之间共享的一组秘密的物理或电子令牌。用户使用令牌查找响应验证方提示需要的秘密。如,验证方可能要求用户提供以表格形式印刷在一个卡上的数字或字符串的特定子集(如,工行口令卡)。令牌验证码是由提示符确定的秘密。查找秘密令牌是拥有的东西。

(4) 带外令牌:惟一可寻址的物理令牌,可以接收验证方选定的一次性使用的秘密。设备由用户拥有和控制,并支持在一个与主通道分离,用于电子认证的通道上进行私人通信。令牌验证码是接收的秘密,被提交给使用主通道进行电子认证的验证方。例如,用户试图登录到一个网站,在其注册期间预注册的手机、PDA、寻呼机或陆上线路上接收作为电子认证协议的一部分提交的随机验证码。带外令牌是拥有的东西。

(5) 单因素(SF)一次性口令(OTP)设备:支持一次性口令(或称动态口令)自生成的硬件设备。具有一个用作种子生成一次性口令的内嵌秘密,不需要通过第二个因素激活。通过提供一个可接受的一次性口令,证明拥有和控制设备来实现认证。令牌验证码是一次性口令。例如,一个一次可显示 6个字符的一次性口令设备。SF OTP设备是拥有的东西。

(6) 单因素(SF)加密设备:对提供给设备的输入执行加密操作的硬件设备。不需要通过第二个认证因素激活。使用内嵌的对称或非对称加密密钥。通过证明拥有设备完成认证。令牌验证码高度依赖于特定的加密设备和协议,通常是某种类型的签名消息。SF加密设备是拥有的东西。

(7) 多因素(MF)软件加密令牌:加密密钥存储在磁盘或一些其他“软”介质中,需要通过第二个认证因素激活。通过证明拥有和控制密钥完成认证。令牌验证码高度依赖于特定的加密协议,通常是某种类型的签名消息。MF软件加密令牌是拥有的东西,可通过知道的东西或自身的特征激活。

(8) 多因素(MF)一次性口令(OTP)设备:一个硬件设备,生成一次性口令用于认证,需要通过第二个认证因素激活。第二个因素可通过某些种类的集成输入板、生物特征(如,指纹)扫描器或直接电脑接口(如,USB端口)获得。虽然允许从设备直接通过电子方式输入到计算机,但通常一次性口令显示在设备上,作为一个口令手工输入到验证方。MF OTP设备是拥有的东西,可通过知道的东西或自身的特征激活。

(9) 多因素(MF)加密设备:一个硬件设备,包含一个受保护的加密密钥,需要通过第二认证因素激活。通过证明拥有设备和控制密钥完成认证。令牌验证码高度依赖于特定的加密设备和协议,但通常是某种类型的签名消息。MF加密设备是拥有的东西,可通过知道的东西或自身的特征激活。

3 令牌的使用

在认证过程中可能涉及到一个或多个令牌的组合使用。

(1) 单令牌认证:用户提供一个令牌验证码,向验证方证明其身份。例如,当用户试图登录到一个受口令保护的网站时,用户输入用户名和口令。在这种情况下,只有口令被认为是令牌。

(2) 多令牌认证:用户向验证方提供由两个或多个令牌生成的令牌验证码证明其身份。令牌组合的特点由令牌使用的、令牌本身固有的和激活令牌的因素的组合决定。例如,验证方要求用户输入口令,并使用单因素加密设备的认证。这里口令是知道的东西,加密设备是拥有的东西,组合被认为是多因素的。

(3) 多阶段认证:使用单因素令牌获得第二个令牌的多阶段认证过程,不构成多因素认证。多阶段组合解决方案的安全级别等于最弱令牌的安全级别。例如,一些加密移动解决方案允许将部分或全部加密密钥存储在网络服务器上,并在使用口令成功验证后下载到用户的本地系统。随后,用户可以使用下载的软件加密令牌来向电子认证的远程验证方验证身份。这种类型解决方案的安全级别仅与用户为获得加密令牌所提供的口令令牌的安全级别相同。

有一种特殊的多令牌认证的情况,其中使用一个主令牌建立一个安全会话,在会话中使用辅助令牌提供第二个令牌验证码。虽然两个令牌用在不同的时间,但其结果相当于多令牌认证,可提高用户与依赖方(Relying Party,RP)之间电子认证会话的整体安全级别。在这些认证情境中,两个阶段令牌组合所获得的安全等级与使用相同令牌集的多令牌认证方案相同。当组合两个令牌类型用于多令牌认证方案时,可以提高认证的安全级别。表1给出了通过两个令牌类型的组合可获得的最高安全等级。

表1 多令牌电子认证方案的安全等级

表1的生成原则是:

(1) 使用两个不同认证因素的2级令牌可以获得3级安全等级。2级令牌包括拥有的东西和知道的东西。

令牌(2级,拥有的东西)+令牌(2级,知道的东西)→令牌(3 级)。

(2) 在所有其他情况下,令牌组合获得的安全等级等于组合中各令牌的最高安全等级。

例如,一个记忆秘密令牌(知道的东西,最高安全等级为2级)与一个查找秘密令牌(拥有的东西,安全等级为2级)组合可以获得3级的组合令牌。一个MF软件加密令牌(安全等级为3级)和一个记忆秘密令牌(最高安全等级为2级)组合,整体上获得3级安全等级,这里增加记忆秘密令牌不能增加组合的安全等级。

4 令牌安全风险及缓解措施

攻击者获得对令牌控制的机会,就可能伪装成令牌的主人,实施不法行动。基于对构成令牌各种认证因素的攻击,令牌面临的安全风险可分为以下几类:

(1) 拥有的东西被丢失、损坏、偷窃或被攻击者克隆。例如,获得对令牌所有人的计算机访问机会的攻击者可以复制一个软件令牌。硬件令牌可能被偷窃、篡改或复制。

(2) 知道的东西被泄露给攻击者。攻击者可能猜测到口令或PIN码。当令牌是一个共享秘密时,攻击者可能获得对CSP或验证方的访问机会,并获得秘密值。攻击者可能安装恶意软件(如键盘记录器)捕获秘密。此外,攻击者可能通过对认证尝试网络流量的离线攻击确定秘密。攻击者可能通过研究用户或通过其他社会工程技术,获得用户的预注册信息,如用户可能在一次谈话或博客中曾提到她的第一只宠物。

(3) 自身的特征被复制。攻击者可能会获得一个令牌所有者指纹的拷贝并制作一个复制品。

表 2列出了电子认证令牌面临的安全风险以及一些例子,给出了缓解令牌安全风险的有关措施。

表2 令牌安全风险及缓解措施

安全风险 描述 举例 缓解措施网络钓鱼或网址嫁接通过欺骗用户,使其把攻击者当成验证方或RP,从而捕获令牌秘密或验证码。用户将口令泄露给仿冒验证方的网站。银行用户在响应来自钓鱼者假装代表银行的电子邮件查询时泄漏口令。用户通过DNS重新路由登录假冒网站泄漏口令。使用具有动态验证码的令牌,保证不能用其验证码信息导出后续的验证码。社会工程为了让用户提供其令牌或令牌秘密,攻击者使用户对其建立一定程度的信任。用户将口令告诉代表用户的老板询问口令的同事。用户在电话查询中将口令告诉伪装成系统管理员的攻击者。使用具有动态验证码的令牌,保证不能用其验证码信息导出后续的验证码。在线猜测攻击者连接到网上的验证方,尝试在验证方上下文中猜测有效的令牌验证码。使用在线字典攻击猜测口令。使用在线猜测获取注册到合法用户的一次性口令令牌的验证码。使用产生高熵验证码的令牌。

另外,实施以下几项措施可用于减轻表2中描述的安全风险:

(1) 多因素:可以抬高攻击成功的门槛,增加攻击的难度。

(2) 物理安全机制:可以保护被盗的令牌使其不被复制。

(3) 口令复杂性规则:可以降低猜测攻击成功的可能性。要求使用不出现在普通字典中的长口令,将迫使攻击者尝试每一个可能的口令。

(4) 系统和网络安全控制:可以减少攻击者获得对系统访问或安装恶意软件的机会。

(5) 定期培训:可以确保用户明白何时和如何报告受损或怀疑受损,识别攻击者尝试破坏令牌的行为模式。

(6) 带外技术:可以用来验证拥有注册设备(如手机)的证据。

[1]Electronic Authentication Guideline,NIST SP 800-63-1.December.2011.

[2]E-Authentication Guidance for Federal agencies.OMB Memorandum M-04-04.December 16.2003.

[3]Security Requirements for Cryptographic Modules,NIST FIPS PUB 140-2,May 25, 2001.

[4]严霄凤.G2C/B2B核心 美国联邦电子认证模型研究.IT168.2012.

[5]光大银行推出阳光令牌.电子银行首次实现统一身份认证.金融周刊.2011.

猜你喜欢

令牌口令攻击者
称金块
机动能力受限的目标-攻击-防御定性微分对策
基于路由和QoS令牌桶的集中式限速网关
高矮胖瘦
口 令
动态令牌分配的TCSN多级令牌桶流量监管算法
正面迎接批判
好玩的“反口令”游戏
SNMP服务弱口令安全漏洞防范
有限次重复博弈下的网络攻击行为研究