身份与访问安全——基于口令的认证案例与分析南京师范大学计算机科学与技术学院陈波2011年12月21日上午,中国最大的开发者技术社区CSDN网站遭到黑客攻击,600余万用户资料遭泄露。此后陆续几天,天涯、人人、当当、凡客、卓越、开心、多玩等多家网站,相继被曝出密码遭网上公开泄露。目前,网上公开暴露的网络账户密码已超1亿个,包含用户密码的数据包仍然可以在网上找到下载。国内最大的漏洞报告平台——乌云()上还在不断有用户密码泄漏事件公布。案例:国内著名网站用户密码泄露事件信息安全案例教程:技术与应用2案例思考:31.在用户对信息资源的访问过程中,用户密码(口令)起到什么作用?2.基于用户口令的身份认证面临哪些安全威胁?如何确保口令认证的安全性?3.除了使用口令,人们还可以采用哪些方法标识身份,进行身份鉴别?信息安全案例教程:技术与应用1.身份认证的概念用户密码,严格地称为用户口令,实际上在人们的信息资源活动中起到标识用户身份,并依此进行身份认证的作用,防止非授权访问。身份认证(Authentication)是证实实体(Entity)对象的数字身份与物理身份是否一致的过程。身份认证技术能够有效防止信息资源被非授权使用,保障信息资源的安全。这里的实体可以是用户,也可以是主机系统。4信息安全案例教程:技术与应用1.身份认证的概念在计算机系统中,身份(Identity)是实体的一种计算机表达,计算机中的每一项事务是由一个或多个唯一确定的实体参与完成的,而身份可以用来唯一确定一个实体。根据实体的不同,身份认证通常可分为用户与主机间的认证和主机与主机之间的认证,不过实质上,主机与主机之间的认证仍然是用户与主机系统的认证。5信息安全案例教程:技术与应用1.身份认证的概念身份认证分为两个过程:标识与鉴别。标识(Identification)就是系统要标识实体的身份,并为每个实体取一个系统可以识别的内部名称——标识符ID。识别主体真实身份的过程称为鉴别(Authentication),也有称作认证或验证。户名或账户就可以作为身份标识。为了对主体身份的正确性进行验证,主体往往还需要提供进一步的凭证,例如密码(口令)、令牌或是生物特征。系统会将主体提供的账号和凭证这两类身份信息与先前已存储的该主体的身份信息进行比较,如果相匹配,那么主体就通过了身份鉴别。考虑到身份鉴别是身份认证的重要组成部分,鉴别与标识也紧密联系,所以后面不再对认证和鉴别做区分。6信息安全案例教程:技术与应用1.身份认证的概念创建和发布的身份信息必须具有3个特性:1)唯一性。标识符必须是唯一的且不能被伪造,防止一个实体冒充另一个实体。不同的计算机系统、不同的应用中,可以使用不同的方式来标识实体的身份:可以是一个唯一的字符串,可以是一张数字证书(类似于现实生活中的居民身份证),也可以是主机IP地址或MAC地址(MediaAccessControl,媒介访问控制)。例如:Windows系统的登录用户名和口令标识了一个用户的身份;打开Office文档的口令标识了用户的身份;校园网用户登录学校图书馆资源时根据用户的IP地址确认用户主机的合法身份等。7信息安全案例教程:技术与应用1.身份认证的概念创建和发布的身份信息必须具有3个特性:2)非描述性。任何身份的标识都不能表明账户的目的,例如Administrator这样的身份标识对于攻击者太具有诱惑力了。3)权威签发。有的身份标识,如数字证书应当由权威机构颁发,以便对标识进行验真,或在出现争执时提供仲裁。8信息安全案例教程:技术与应用案例思考:91.在用户对信息资源的访问过程中,用户密码(口令)起到什么作用?2.基于用户口令的身份认证面临哪些安全威胁?如何确保口令认证的安全性?3.除了使用口令,人们还可以采用哪些方法标识身份,进行身份鉴别?信息安全案例教程:技术与应用2.基于口令的用户身份认证安全性分析10用户U认证请求认证系统S用户ID密码admin123456chenbo456789…………用户信息安全意识不高;口令质量不高。攻击者运用社会工程学,骗取口令。伪造的登录界面;在输入密码时被键盘记录器等盗号程序所记录口令在传输过程中被攻击者嗅探到。口令在数据库中没有加密保存;数据库文件没有访问控制信息安全案例教程:技术与应用来看看大家最经常使用的密码是什么吧2.基于口令的用户身份认证安全性分析11信息安全案例教程:技术与应用使用最多的密码长度是8位竟然不要求长度2.基于口令的用户身份认证安全性分析12信息安全案例教程:技术与应用如何提高口令质量?对于用户增大口令空间。计算口令空间的公式:S=AM选用无规律的口令多个口令用工具生成口令对于网站登录时间限制。限制登录次数。尽量减少会话透露的信息。增加认证的信息量。2.基于口令的用户身份认证安全性分析13信息安全案例教程:技术与应用CSDN杯最强密码大决选总冠军:ppnn13%dkstFeb.1st。看不懂?密码解析:娉娉袅袅十三余,豆蔻梢头二月初。csbt34.ydhl12s密码解析:池上碧苔三四点,叶底黄鹂一两声14信息安全案例教程:技术与应用CSDN杯最强密码大决选(续1)for_$n(@RenSheng)_$n+=die密码解析:人生自古谁无死while(1)Ape1Cry&&Ape2Cry;密码解析:两岸猿声啼不住doWhile(1){LeavesFly();YangtzeRiverFlows();密码解析:无边落木萧萧下,不尽长江滚滚来15信息安全案例教程:技术与应用CSDN杯最强密码大决选(续2)Tree_0f0=sprintf(2_Bird_ff0/a);密码解析:两个黄鹂鸣翠柳CaCO3=CaO+CO2密码解析:无语16信息安全案例教程:技术与应用Windows8图片密码Windows8操作系统增加的“图片密码”。图片密码方便记忆,省去了用户记忆繁杂口令字符串的过程,且十分便于触控屏用户的使用,用户体验度高;与口令字符串相比,“图片密码”不会出现口令窃取以及口令丢失的安全威胁,安全性较好。17信息安全案例教程:技术与应用2.基于口令的用户身份认证安全性分析用户U认证请求认证系统S用户ID密码admin123456chenbo456789…………用户信息安全意识不高,口令质量不高。口令在传输过程中被攻击者嗅探到。键盘记录器视频攻击者运用社会工程学,骗取口令。伪造的登录界面;在输入密码时被键盘记录器等盗号程序所记录口令在数据库中没有加密保存;数据库文件没有访问控制18信息安全案例教程:技术与应用保护输入口令安全控件实质是一种小程序。由各网站依据需要自行编写。当该网站的注册会员登录该网站时,安全控件发挥作用,通过对关键数据进行加密,防止账号密码被木马程序或病毒窃取,可以有效防止木马截取键盘记录。安全控件工作时,从客户的登录一直到注销,实时做到对网站及客户终端数据流的监控。就目前而言,由于安全控件的保护,客户的帐号及密码还是相对安全的。要防止伪装的安全控件。19信息安全案例教程:技术与应用保护输入口令20信息安全案例教程:技术与应用2.基于口令的用户身份认证安全性分析用户U认证请求认证系统S用户ID密码admin123456chenbo456789…………用户信息安全意识不高,口令质量不高。口令在传输过程中被攻击者嗅探到。局域网密码嗅探视频攻击者运用社会工程学,骗取口令。伪造的登录界面;在输入密码时被键盘记录器等盗号程序所记录口令在数据库中没有加密保存;数据库文件没有访问控制21信息安全案例教程:技术与应用使用“验证码”实现一次性口令认证某客户端用户登录界面上设置了“验证码”输入框,此验证码是随机值。目前,得到广泛应用的验证码更多的是CAPTCHA(CompletelyAutomatedPublicTuringtesttotellComputersandHumansApart,全自动区分计算机和人类的图灵测试),是一种主要区分用户是计算机和人的自动程序。这类验证码的随机性不仅可以防止口令猜测攻击,还可以有效防止攻击者对某一个特定注册用户用特定程序进行不断的登陆尝试,例如防止刷票、恶意注册、论坛灌水等。22信息安全案例教程:技术与应用使用“验证码”实现一次性口令认证23信息安全案例教程:技术与应用使用“验证码”实现一次性口令认证24信息安全案例教程:技术与应用绑定手机的动态口令实现一次性口令认证支付宝的“手机宝令”是一款直接安装在手机客户端上的安全认证产品,不需要额外的硬件支持。用户手机安装了“手机宝令”软件后,该客户端软件与支付宝服务器按照同样的算法运算,软件每30秒与服务器端同步生成一条动态口令。用户开启手机宝令的安全服务后,在客户端进行修改密码、支付宝支付等操作时,除了需要输入自己的帐号和口令外,还需要输入手机宝令的动态密码。验证用户输入正确之后,用户才能进行下一步操作。25信息安全案例教程:技术与应用绑定手机的动态口令实现一次性口令认证动态口令也可以与手机号码绑定使用,通过向手机号码发送验证码来认证用户的身份。支付宝应用中,用户申请了短信校验服务后,修改账户信息、找回密码、一定额度的账户资金变动都需要手机校验码确认。支付宝服务器会将动态口令,即手机校验码,发送到用户账号注册时绑定的手机号码上。合法用户可以通过接收手机短信,输入动态口令,完成认证。当然,如果用户手机丢失,其支付宝账户将面临很大安全风险。26信息安全案例教程:技术与应用使用动态口令牌实现一次性口令认证动态口令牌是一种内置电源、密码生成芯片和显示屏,并根据专门的算法定时自动更新口令的硬件设备。动态口令牌的使用简单方便,动态口令定时更新,用户只要根据系统的提示,输入动态口令牌上当前显示的口令即可。支付宝和中国联通联合推出的“宝令”就是一款动态口令卡的产品。用户开启服务后,在进行付款时,需要输入支付密码以及动态口令,确保账户资金更加安全。27信息安全案例教程:技术与应用使用USBKey增强认证安全性USBKey是一种包含USB接口的硬件设备,它内置单片机或智能卡芯片,可以存储用户的密钥或数字证书,利用USBKey内置的密码算法实现对用户身份的认证。基于USBKey的应用包括支付宝的“支付盾”,网上银行的“U盾”等。“U盾”是银行推出的存放客户证书的安全工具。“U盾”服务于网上银行的数字认证和电子签名需求。它的工作原理和认证方式同“支付盾”类似。“支付盾”是支付宝推出的安全产品。用户登录支付宝进行在线支付时,需要插入包含用户数字证书的支付盾,服务器验证数字证书的真实性之后,用户才能进行支付操作28信息安全案例教程:技术与应用使用智能卡增强认证安全性智能卡(SmartCard)是一种更为复杂的凭证。它是一种将具有加密、存储、处理能力的集成电路芯片嵌装于塑料基片上而制成的卡片。智能卡一般由微处理器、存储器等部件构成。为防止智能卡遗失或被窃,许多系统需要智能卡和个人识别码PIN同时使用。29信息安全案例教程:技术与应用使用生物特征、生物行为增强认证安全性虽然网上银行广泛使用的U盾认证方式相比于“用户名+口令”的方式安全性要高,但它仍然有许多缺点,例如需要随时携带U盾,也容易丢失或被窃。与这两种认证方式相比,利用用户本身的特征进行认证,也就基于生物的认证技术(Biometrics),具有无法比拟的优点:用户不必再记忆和设置密码,使用更加方便。生物特征认证技术已经成为目前公认的、最安全和最有效的身份认证技术,将成为IT产业最为重要的技术革命。30信息安全案例教程:技术与应用使用生物特征、生物行为增强认证安全性基于击键特征的身份认证是利用一个人敲击键盘的行为特征进行身份认证。击键行为特征包括击键间隔、击键持续时间、击键位置,甚至击键压力等。北京微通新成网络科技有限公司的“键盘芭蕾”就是一款静态口令认证和击键特征认