2013-10-23 11:02:29 来源:51CTO
今年年初,某知名云端记事软件厂商惊传数据遭到窃取,迫使该公司重设5 ,000万名用户的密码,并紧急通知用户再次设定新密码。随后,该公司宣布采用双重验证(two-factor authentication)来保护用户数据。
其它同样在验证方法上已做改变的公司,包括Amazon、Apple、Dropbox、eBay、Facebook、Google和Microsoft。根据TechNavio的调查显示,全球双重验证市场在2011至2015年预计可成长20 . 8 %;MarketsandMarkets的市场调查报告则指出,多重验证市场在2017年将达54亿5,000万美元;此外,Fortinet自有双重验证产品FortiAuthenticator,最近呈现3位数的增长,这些迹象无疑显示这已是一个双重验证的新时代。
单因素验证已经过时
为何单因素(single-factor)验证的方法已经过时?以往网络威胁的攻击方式不像现在如此多元,处理器的运算能力也不够强。但如今,网络罪犯拥有更精巧的密码破解工具,以及无比强大的处理器,最重要的是:24小时连网的计算机到处都是,这些都使得传统采用明文(plain text)的密码形态,成为非常容易攻击的目标。
此外,随着云端密码破解服务的出现(例如利用分布式计算机运算的Cloud Cracker),让尝试300万次的密码破解只需不到20分钟,而且只花费17美元。这意味即使是更周全、加过密的密码,也只需要一点耐心就能破解。
目前有四种管理密码的方法,但没有一种是无懈可击的:
1.明文:这种密码管理方式非常危险,因为黑客只需窃得一个明文的密码文件,就能轻易地扫荡整个服务器的用户密码。澳洲税务局(ATO; Australian Tax Office)、英国通信总部(GCHQ)以及零售商Tesco,都曾发生过数据遭窃事件,最后都坦承是以明文的方式储存密码。
2.基本加密:这种方法是加密和储存个别的密码,即哈希加密过(hashed)的档案,例如透过MD5或SHA1来运算。不过,一个只是哈希加密过一次的档案若被偷走,也不会比明文密码安全多少。因为CPU处理速度越来越强,新的密码破解软件越来越容易取得,加上lookup(函数)和Rainbow table(数据结构表)的查表法攻击方式,使得解开hash加密过的档案只是迟早的问题,取决于运算的资源和时间而已。
3.随机字符串加密:这种方法是在每个密码中加入一个字符串后再进行加密,如此可以防止黑客取得运算前的储存值,使其无法查询比对(又称为Salted hash)。Salted hash当然也不是万无一失,因为如果加的「salt」太短,或是同样的料已经被使用加在所有的密码里,那么就可能相对地容易将它们破解开来。
4.多重加密:这指的是「再次加密」已经加过密的密码值,也就是延伸(stretching)再加密,让一个密码被加密多次。不过,这样的方法能否增强安全性仍有所争论。
Salted hash加密或是延伸再加密,就短期而言,是比单纯的明文或只加密一次的密码来得安全。然而,如果充份利用今日无比强大的CPU效能,那么结果只是何时被破解,而不在于哪一种加密方法会被破解。我们必须明白的是:只要有时间和运算资源,没有任何一种加密方法是绝对安全的。
[page] 加入另一个验证因素
双重验证或称之为多重、两阶段验证,基本上它包含下列前2种的验证方法:
1.某一个使用者知道的东西:它可以是一个密码、默认的问题,或是在手机上滑一下的动作,基本上它通常是个「知识因素(knowledge factor)」。
2.某一个使用者有的东西:这可以是一个小型的硬设备,例如智能卡、USB、电子狗或是智能型手机token。它们能产生独特的一次性密码,通常是由用户手机上的应用程序所产生或被传送过来的;这种验证方法被认为是「持有因素 (possession factor)」。
3.某一个使用者本身的东西:这通常需要一个生物特征辨识器,用来侦测某一个人拥有的身体特征,例如指纹、瞳孔周围的虹膜或是声音。这类的验证因素定义为「与生拥有因素 (inherence factor)」。
目前市场上有许多主要的双重验证的方法,包括第二密码、智能卡、手机或硬件token,或是应用渐广的各种生物辨识技术,每种都有其利弊之处。例如采用知识因素的第二密码或通关密语虽然方便,但简单的不安全、复杂的容易遗忘,而且一样容易被破解,或是遭键盘记录程序窃取。
至于持有因素的智能卡,手机或硬件token,优点虽然比密码安全,不易遭到黑客的破解,但因为必须在登入时持有它,甚至不同的网站(或服务)可能会有不同的智能卡或token,也会有遗失或被偷走的可能。最后一项与生俱有的因素-生物特征,主要分为两类:生理特征和行为特征。生理特征如指纹、脸、虹膜、视网膜或手部扫瞄等;行为特征则主要包括语音和笔迹。生物特征的优点在于不用记密码,也不用持有额外的对象,但因为需要比对样本文件,若样本文件损毁或辨识设备精准度不够,同样也会有问题。
双因子验证的实施
采用多因子验证保护敏感数据是保证数据安全性与完整性的相对最佳的实施策略。 但是,在采用匹配验证的方式之下,并不能保证任何两种方式都可以服务于特殊的目的。
应该明了的是,虽然双因子验证可提供较高的安全保护,仍然有两种类型的攻击(冒名攻击(masquerade attack) 与 会话劫持 (Session hijacking))可以破坏任何类型的验证。
规划验证策略时需要谨记的是:一些类型的双因子验证的安全性要明显略胜一筹。有时候,即使一种单因子验证因固有的天然属性可能也会比一些双因子更安全,譬如指纹扫描。
规划实施双因子验证之前需要考量的一些因素:
易用性:日常操作中投入多少精力去培训IT人员?初始化到应用的时间?
与现有软件平台的集成性: 是否对于现有架构来讲是“不速之客”?是否需要任何自定义的软件开发?
安全性/法规遵从: 所从事的行业是否有任何规定实施。
工具自身的安全: 所采用的加密算法是否足够强壮。
供应商支持: 所选产品的供应商可提供的协助。
成本:基于每个用户的平均成本、维护成本与售后支持。
可扩展性:是否可升级。
免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。