您好,欢迎来到小侦探旅游网。
搜索
您的当前位置:首页对一个口令认证协议的可攻击性分析及改进

对一个口令认证协议的可攻击性分析及改进

来源:小侦探旅游网
第36卷 第7期 计算机工程 2010年4月 VoL36 No.7 Computer Engineering April 2010 ・安全技术・ 文章编号:10oo-_I3428(2o101o7—o142—02 文献标识码:A 中圈分类号:N945 对一个口令认证协议的可攻击性分析及改进 柯芳芳,唐西林,章启恒 (华南理工大学理学院数学系,广州5 i 0640) 擅要:Rhee H S等人(Computer Standards&Interlaces,2009,No.1)提出的协议使用移动设备代替智能卡记忆数据降低风险和成本,但该协 议仍存在一些不足。针对该问题,基于Chan.Cheng攻击案例,指出该协议难以抵抗假冒攻击和离线VI令猜测攻击,为克服这些缺陷,给 出一种改进方案,通过实验证明了该方案可以有效抵抗上述2种攻击,并能保证其[1令的秘密性及身份认证的安全性。 关键词:13令认证;智能卡;假冒攻击;离线VI令猜测攻击 Attack Analysis and Improvement of Password Authenticati0n Protocol KE Fang—fang,TANG Xi—lin,ZHANG Qi—heng (Department of Mathematics,School of Science,South China University of Technology,Guangzhou 5 1 0640) [Abstract]Thel protocol proposed by Rhee H S et al(Computer Standards&Interfaces,2009 No.1)uses mobile equipment to replace smart card to reduce risk and cost,but it exists some demerits.Aiming at this problem,based on Chan—Chcng attack case,it points out that the protocol can not resist impersonation attack and off-line password guessing attack In order to overcolne these drawbacks,it gives the improved scheme. It' Experimental results show this scheme is strongly resistant to both of these attacks,which keeps the password secret and authenticating ID. [Key word]password authentication;smart card;impersonation attack;off-line passxxord guessing attack l概述 线121令猜测攻击,并以安全的移动设备代替智能卡从而降低 口令认证协议是远程用户登录系统中必不可少的一个方 成本。而本文则认为文献[4]协议仍然存在一些不足,依然难 面。早在20世纪80年代,动态口令认证协议被广泛应用于 以抵抗假冒攻击和离线口令猜测攻击。 各种远程登录系统中。口令认证协议发展至今,远程用户登 2文献【4l协议 录系统一般分为3个阶段:(1)注册阶段。用户提供身份证明 本文用到的符号如下: 表示用户;S表示服务器; 和ICl令给服务器进行注册,成为合法用户。(2)登录阶段。用 表示用户身份证明;P 表示用户口令;P为一个大素数; 户输入口令,提交登录请求和登录信息。(3)验证阶段。服务 H(), ()为Hash函数;X 为服务器密钥;e为服务器公钥; 器验证用户合法性,验证通过后并向用户提交双向认证信息。 G为阶为P的群。 随着口令认证协议的发展,对于口令认证协议的发展,相应 的口令认证协议的攻击也发展起来。对于口令认证协议的攻 2.1注册阶段 击有几种:离线口令猜测攻击,假冒攻击,窃取凭证攻击, 注册阶段的步骤为:(1)U 通过安全信道提交 和PW, 拒绝服务器攻击,重放攻击等。在传统的口令认证方案中, 给服务器S。(2)S接收到1D 和PW,后,S产生一个随机数 服务器储存相应的二元对( ,P ),用户登录是输入口令与 并计算: =( . !),其中,l∈G, .=1Di ・H(P )modp, 其匹配即可。但这种储存用户口令的方法容易遭受窃取凭证 : modP。(3)S通过安全信道将( (), (・),P, )写入用 的攻击。此后的诸多协议中,虽然将二元对改为验证冈子列 户U,的移动设备保存。 表保存,这仍然难以抵抗诸多攻击方法且保存用户口令数据 2.2登录阶段 的问题认未解决。在E/Gamal签名认证方案lJ 和基于身份认 如果用户要登录服务器,将移动设备插入终端,输入他 证签名方案 的基础上,文献[3】提出一个智能卡13令认证方 的身份1D 和口令|D 。移动设备执行以下操作:(1)选取随 案,它具有以下意义:(1)用户可以随意修改密码;(2)远程认 机数 , ∈G。( )计算 万 Ii m0d 及 =(Yi )。 证系统不再储存口令相关的验证因子列表;(3)运用时问戳方 案,系统可以抵抗重放攻击。为减少风险和降低成本,许多 (IDi‘) modP。(3)计算M=H( 0T0IDi)modP, =( 2) ・ 协议多使用智能卡保存一些数据,以此不再增加服务器的存 MroodP,C3=( 2) =( ) roodP,其中,71为当前时间戳。 储负担。现存的VI令认证协议基本上是与智能卡结合使用, f4)发送C=( , , ,C2, ,T)到服务器S,同时,要求验证 可惜智能卡成本较高且申请对象。文献[4]协议是在现有 智能卡I:1令认证协议的基础上进行改进,使其协议能配合移 基金项目:国家自然科学基金资助项目(t0571061) 动设备使用,降低成本。移动设备虽然成本较低,但不具备 作者筒介:柯芳芳(1984--),女,硕士研究生,主研方向:密码学; 良好的防篡改性。文献[4]协议指出了Fan—chan—zhang 议难 唐西林,教授;章启恒,硕士研究生 以抵抗假冒攻击以及khan—zhang协议不能抵抗假冒攻击和离 收稿日期:2009—1O一1 0 E—mail:285797713@qq.corn 一142~ 登录。 2.3验证阶段 服务器S接收到f/ 的登录信息后,执行以下操作: (1)验证,D的合法性。如果不合法,则拒绝登录。 (2)检验,与, 的时间问隔是否超时,如果 一T )≥AT, 则拒绝登录。其中, 为当前时间戳,AT为时问参数。 (3)检验C (c ) roodp?H((r:)‘0T0IDi)modp,若相 等则接受登录请求,否则拒绝登录。 (4) 为当前时间戳,S计算C4= (c 。0T )roodP,并 发送(C ,T )到f/ 的移动设备。 (5)U,接收到( ,T )后, 检验( 一7' ≥AT,若然, 拒绝 录。其中, 为当前时间戳。 (6)U 计算C =☆(( 0T )roodP,验证 是否等于 ,若相等则认为服务器为真,双向验证完成。若不等则拒 绝登录。 3对文献I41协议的攻击 3.1 Chart—Cheng攻击案例及攻击可行性分析 文献[4]协议基于ELGamat密码,其安全性依赖于有 限域上计算离散对数的困难性。同样方案有Hwang~Li方案, 对这些方案的有效攻击有Shen—Lin—Hwang攻击和 Chan—Cheng攻击。本文所做的假冒攻击是基于Chan—Cheng 攻击的有效攻击。 3.1 1 Hwang—Li方案 注册过程为:服务器随机挑选1个数S∈[1,2.…,P一1】为 它的私钥且秘密保存。一个远程用户:博自己的身份 ,计算 该 产懿VI令pwd ,pwd =I 。照务器将P m 荇入一个氆 能卡中,并通过一个安全的信道将智能卡和VI令pwdi传给用 户U 。 登录过程为:如果用户要登录服务器,用户将其智能 插入终端,输入他的身份,D,和口令pwd,智能卡将进行如 下操作:计算Ct=ID mod ;『= (7 0Pwdi);M=[19 modp; C2=M H modP,将C=( ,Ci, ,T)发给服务器。 没想该远程服务器在时间 收到了消息C;T 是服务器 当前的日期和时间。认证过程如下:(1)检验 的合法性, 如果 形式是不合法的,则登录的请求就会被拒绝。(2)检 验71与7_ 的时问间隔是否超时,如果(丁一7 )≥AT,则拒绝 登录。其中,71 为当前时间戳;AT为时间参数。(3)检 验 C1~ =1DiI“ “ ’是否成立,如果成立,则服务器就会接 受请求,否则拒绝。 3.】.2 Chan-Cheng攻击 恶意用户如果有‘个合法的身份和口令对( ,|p ),则 可’、 很容易地伪造另一个合法身份和口令对,选1个随机数 j’,计算10l= (orod p).P =//9 =1D“=尸 modP。之 后,该恶意用户就可以用该口令成功登录服务器。 3 1.3 文献[4]协议的攻击可行性分析 在对文献[4】协议的攻击巾,恶意用户有一个合法的身份 和口令对(IDj,P ),根据注册时所得信息成功构造出登录请 求信息(,D_, ,c,-(=1= c:.T )也可以假冒用户1D,登录。 3.2对文献l4I协议假冒攻击1 对文献【4]协议假冒攻击的一种方法为: (1)攻击 挑选 :价 (m。d ), ’为随机数。发送 (ID ,Jp )发送到服务器S进行注册。S接收到ID.和尸 后, S产生一个随机数, 并计算: =( ., ), ∈G: , , Y.I=ID ・H(P 、=iD ” roodP Y =ID =强) roodP。S 通过安全信道将(日(・),厅(),P, )写入E的移动设备保存。 (2)E利用所得数据计算: X —HIP 、西 zi;l _、  IDt =lD roodp x :I一z DI 、:lD l 并发送(IDi,】 , , . ,T )到服务器,其中, = , Ct’= ,, =C3,C:= ・H(X 0T 0119i)。 (3)服务器检验IDi,( 一T )≥AT正确后,计算 (c7)=H(( )。0T 0IDi),则攻击者E可通过服务器 进行验证。 3.3对文献I4l协议假冒攻击2 对文献[4]协议假冒攻击的另一种方法为: (1)攻击者截获用户登录信息C=( , ,C ,C2,C3,丁),令 =1D, Ⅳ( ,), =, , = ,攻击者发送( , , , ,c:, )到服务器。 (2)服务器检验,D,【丁 T )≥AT正确后,计算: ・(c )=H(T )=爿(( )。0T0IDi),则攻击者E通过服 务器验证。 3.4窃取凭证+猜测口令攻击 假设攻击者有能力取得移动设备中储存的数据 ,那么 攻击者可以执行离线13令猜测攻击。 根据上述方法,令C3= ,当服务器通过验证后计算 , V (C3。7’ )= ‘万 ①7’ ),发送到E。那么E检验 1 矗( I iI 。r )是否等于C4,若相等则口令猜测成功。 4文献I4l协议的改进及安全分析 以下协议是对文献[4】协议的改进方案,分为3个阶段: 注册阶段,登录阶段,验证阶段。 4.1注册阶段 注册阶段的步骤如下: (1)U 通过安全信道提交 ,和P 给服务器S。 (2)S接收到1Di和J1) 后,S产生一个随机数ri并计算: =[19i T日(尸 )modP, =,D_, 0H([Di0 )roodP。 (3)S通过安全信道将(H(),, (),P, , )写入用户 的移 动设备保存。 4.2登录阶段 如果用户要登录服务器,将移动设备插入终端,输入其 身份,D和13令P 。移动设备执行以下操作:(1)计算 . = moQP,Cl=h(Y 0  ̄T)modp,其中,T为当 前时间戳。(2)发送C=( ,C.,r)到服务器S要求验证登录。 4.3验证阶段 服务器S接收到 的登录信息后,执行以下操作: (1)验证IDi是否正确。若不正确,则拒绝登录。(2)若 (71一T )≥AT,则拒绝登录。其中,71 为当前时间戳;△ 为 时问参数。(3)检验h(H(IDi0xi)0 71)roodP是否等于cI, (下转第146页) 一143— 实践中,尚未发现满足上述条件并且可以解码为一段有意义 表1 不同算法之间的比较 的指令序列的情况,因此,该算法具有较强的适用性,另外 在算法的第(5)步又添加了一些附加条件(判断指令类型)来确 Win32 Velost l1 86 保该方法对于识别call指令后保存有用字符串这种类型混淆 Wm32 Norther W¨132 Hahar】lq A 的有效性。 Wjn32 KaibI A W1n32 Armvvirus (2)算法第2阶段 1)考虑常量地址表的构造,该地址表是在解码的同时对 5结束语 指令中涉及到的常量地址记录而得到的,恶意代码经常使用 混淆与反混淆的斗争有愈演愈烈的趋势,病毒制作者总 一些方法把标号或变量传递给寄存器,再对寄存器操作从而 是不断利用各种新的技术方法来对源程序进行混淆以增加静 增加反汇编时数据分析的难度,因此,这个常量地址表的构 态分析的难度,而反病毒工作者也针锋相对,积极寻求新思 造可以将这些地址记录下来,以便于判断是否存在混淆。 路来应对新问题。本文提出的算法对call指令后插入数据这 一2)考虑子过程异常返回,即算法的第(2)步所做的判断, 类的混淆能够很好的解决,可以应用在静态反汇编过程中, 大多数的病毒通常采用的技术是通过push和ret指令使控制 提高反汇编的正确率。混淆手段是多种多样的,本文提出的 流到达栈顶的值确定的地址,而一些高级的技术可以通过对 算法也仅能解决一部分问题,而call指令后是非字符串或编 这2条指令变形来达到同样的目的l4 J。对于这种情况,通过 码后的字符串以及子函数不以ret指令返回时的情况,将是下 一简单的语义判断来确定它的行为。 步重点研究的内容。总之,为了得到更好的反汇编结果, 3)考虑call指令后混淆数据的确定,从常量地址表中确 必须考虑使用多种方法来对抗混淆 j。 定了大于addr3的最小地址addr4后,并不能就此确定2个地 参考文献 址间就是混淆数据,必须要判断addr4一addr3的值,若为0表 [1]Kruegel C,Robertson W,Valeur F,et a1.Static Disassembly of 明call指令的下一条指令是正常的指令,若大于设定的范围, Obfuscated Binaries[D].California,USA:University of California 则表明call指令后是大量数据定义或者这条call指令本身是 Santa Barbara,2004. 解码错误的。经过对大量病毒的分析确定该值范围值为 [2]Linn C,Debray S.Obfuscation of Executable Code to Improve 30 Byte,这样可以保证该算法的准确性,减少误报的可能。 Resistance to Static Disassembly[C]//Proc.of the 10th ACM 4)混淆数据的提取与错误解码指令的清除,解码错误的 Conference on Computer and Communications Security. 指令会导致基本块的划分以及控制流图的构造出错,因此, Washington D.C,USA:[S.n.],2003:290—299. 需要对它们产生的错误结果进行清除。此时需要注意一种情 [3]Eilam E.Reversing:Secrets of Reverse Engineering[M].[S.1.】: 况,解码错误的指令可能会涉及到后面的部分正常指令,这 Wiley Publishing,lnc.,2005. 时候要对解错的指令重新进行解码。 [4]Lakhotia A,Kumar E U,Venable M.A Method fur Detecting 4实验验证 Obfuscated Calls in Malicious Binaries[J].IEEE Transactions on 本文所设计的算法在课题组设计的原形系统 Software Engineering.2005,3 1(1 1):955—967. Radux(Reverse analysis for detecting unsafe executables)中得 [5]Udupa S K,Debray S K,Madou M.Deobfuscation:Reverse 到了应用,对几个知名病毒进行测试后,对call指令后混淆 Engineering Obfuscated Code[C]//Proc.of the 1 2th Working 数据的识别情况如表1所示。注:此处的混淆次数表示病毒 Conference on Reverse Engineering.Washington D.C.,USA:1EEE 使用的call指令后插入有用或垃圾数据的次数。结果显示本 Computer Society,2005:45—54. 算法在对call指令后混淆数据的识别方面是令人满意的。 编辑任吉慧 (上接第143页) 若相等则接受登录请求,否则拒绝登录。(4) 为当前时问戳, 5结束语 S计算:C2=h(H(1Di0t)0T )modP,并发送( ,T )到 本文利用假冒攻击和窃取凭证十猜测口令攻击的组合攻 的移动设备。(5)U 接收到( ,71 )后,U 检验( —T )≥AT, 击方法对文献[4]协议进行有效攻击,并在其协议的基础上提 若成立,则拒绝登录。其中, 为当前时间戳。(6)U,计算 出改进方案,该方案可以有效弥补其不足,抵抗假冒攻击和 C2 =h(Y 0 0T )modp,验证 是否等于 ,若相等则 离线H令猜测攻击,具有口令秘密性和身份认证性。 认为服务器为真,双向验证完成。若不等则拒绝登录。 参考文献 4.4安全分析 [1]Elgamal A Public Key Cryptosystems and a Signature Schemes 安全分析如下: Based on Discrete Logarithms[J].IEEE Transactions on Information Theory,1 985,3 1(4):469—472 (1)可以抵抗离线口令猜测攻击。在网络的发送信息中没 [2]Shamir A Dentity—based Cryptosystems and Signature Schemes[C]# 有关于VI令的敏感信息,因为攻击者无法获得 (IDi 0Xs), Proc.ofCRYPTO’84.Berlin,Germany:Is.n.],1984. 则无法通过验证,所以可保证口令的秘密性。 [3】Chan J F.Smart Card—based Security Password Authentication (2)可以抵抗假冒攻击。攻击即使采用上述方法中的假冒 Scheme[J].Computers and Security,1 996,1 5(3):1 3 1—1 37. 攻击,攻击者注册以,可以得到 ,r2,将两者比对后也无 [4]Rhee H S,Jeong O K,Dong H,et a1.A Remote User Authention 法得到日(z 0Xs)或者zD|t,因而无法通过验证,可以保证 Scheme Without Using Smart Cards[J].Computer Standards& Interfaces,2009,31(1):6・13 双方的身份认证安全。 编辑陈文 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- xiaozhentang.com 版权所有 湘ICP备2023022495号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务