如何防止黑客入侵:[2]如何搞定你的口令/密码
操作方法
- 01
在 ,俺强调了高权限用户的潜在风险。接下来,咱要介绍一下,和口令相关的安全话题。毕竟在大伙儿的日常生活中,口令的使用是必不可少滴。 考虑到和口令相关的内容较多,俺分两部分来说:今天首先揭露攻击者的种种伎俩;下一帖再详述应对的措施。 ★使用密码的场合(密码的类型) 为了便于后面的叙述,俺有必要先总结一下,使用口令的几种场合。 针对这几种不同的场合,攻击者会采取不同的攻击手法;因此,大伙儿也要采取针对性的防范手法。 ◇操作系统用户的口令 这种场合应该好理解。目前主流的操作系统都具有口令验证的用户登录机制。 ◇各种网络应用的口令 随着网络(尤其是Web)的普及,这种场合越来越多。比如:Email、即时通讯(IM)、BBS、上网炒股、等,都需要有用户口令认证。 ◇各种本地应用程序的口令 此种场合可能不如网络应用的口令那么常见。比如:用口令加密的压缩文件、用口令加密的Office文档、PGP密钥的口令、Outlook设置的启动口令、等。 ◇其它 除了上述3种类型,其它那些比较少见、杂七杂八的,统统归为其它。比如:BIOS的开机口令。 ★攻击者如何通过技术手段搞定的你的密码? 前面列举了密码的不同使用场合。接着咱要介绍一下:攻击者会利用哪些技术手段,攻破你的密码。 ◇木马盗取 如果你的电脑已经被攻击者安装了木马,那你的一举一动有可能都会被监视。在这种情况下,你在这台电脑上输入的任何密码,都将会被攻击者获取。所以,这种情况是很危险滴——不管是哪种类型的密码,都可能被盗。 至于如何防止自己的计算机被植入木马,不是本帖的重点。俺会在 后续的帖子中专门介绍木马的防范。 ◇弱密码猜解 所谓的“弱密码猜解”,就是说:如果你的密码比较弱,攻击者可以猜出来。这种攻击手法,对于操作系统用户口令、网络应用口令、本地应用口令,都适用。而且攻击者在盗取口令的时候,通常会先尝试进行弱口令猜测。为啥捏? 因为大部分用户都不太具有安全意识,口令都会比较简单(比较弱)。并且,根据二八原理 ,绝大多数的傻瓜用户会使用极少数的弱口令。所以,攻击者先把最流行的那些个弱口令挨个试验一遍,没准就已经成功了。 为了让大伙明白弱口令的严重程度,来看看2009年底的“一个案例 ”。 话说国外一个小有名气的交友网站(RockYou)被攻破。里面大约3260万用户数据被盗。更加杯具的是,RockYou采用明文方式存储用户的口令。因此,这3260万用户的口令也统统暴露鸟。后来有好事者把被盗的用户口令拿来分析一番。结果发现,有相当多的用户在使用一些极其弱智的口令。 用的最多的TOP 10分别是:1、1234562、123453、1234567894、password5、iloveyou6、princess7、rockyou8、12345679、1234567810、abc123据说名列第一的口令(123456)有30万人使用,真是不看不知道,一看吓一跳啊! ◇暴力破解 除了对弱密码进行猜解,攻击者还可以通过穷举的的方式,破解中等强度的密码。所谓的穷举法,就是把所有可能的字母/数字的组合都试验一遍,直到找到正确的密码。 现在CPU的计算能力日新月异,尤其是多核CPU普及之后,暴力破解的效果会越来越好。除非你的密码很强,才能彻底消除暴力的风险。 由于这种攻击手法,需要进行成千上万次的试错,所以比较适合针对本地应用的口令(比如破解加密的压缩文件),而不太适合对网络应用进行在线口令破解。 在下一个帖子,俺会介绍,如何构造强度较高的密码。 ◇网络传输截获(嗅探) 在这种方式下,攻击者会通过嗅探 的方式,分析你的上网数据。如果你在上网过程中,存在明文传输的口令,就会被截获。 非安全专业的网友,可能不太明白什么是“嗅探”,俺来稍微解释一下。攻击者会利用某些嗅探软件,收集网络上传输的所有数据。这个过程好比电话窃听。嗅探软件类似于窃听器;你的上网数据类似于电话的通话内容。 这几年,随着现在无线网络(Wi-Fi)的普及,网络嗅探的风险大大增加,列位看官切不可掉以轻心哦。 ◇客户端截获 所谓“客户端截获”,通常是针对网络应用的口令而言。举几个例子。 例1: 很多网友上网时,为了免去输入口令的麻烦,会让浏览器帮忙记住口令。通常浏览器会把这些口令保存在某个文件中(可能以明文方式,也可能以密文方式)。如果某天你的电脑中了木马,那么木马程序有可能会盗走这个保存口令的文件。然后攻击者就可以通过分析该文件,破解出你保存过的所有网络应用的口令。 例2: 如果你是软件公司的开发人员,多半你会使用某种源代码版本管理工具(比如SVN、CVS、等)。为了免去每次操作时输入口令的麻烦。通常开发人员会让这些客户端软件记住用户名和口令。如果哪天你中了木马或者电脑被盗,那么攻击者同样可以破解你保存下来的口令,进而用你的身份盗取源代码。 ◇服务端截获 和“客户端截获”方式相对的,还有“服务端截获”。具体是啥意思捏?俺来解释一下。 凡是利用口令进行验证的软件系统,都需要存储和口令相关的信息。否则的话,软件系统就无法验证用户输入的口令,到底是不是正确的。如果攻击者能够拿到这些口令的关联信息,那他/她就有可能分析出口令是啥。 (如果你不是搞IT专业的,下面这段可能看不太明白) 通常用三种方式来存储口令的关联信息:1、存储口令的明文;2、存储口令经过加密后的密文;3、存储口令的散列值。第一种方式是最土鳖的,稍微先进一些的系统,都不会用了。后面两种方式,虽然看不到明文,但是攻击者还是有办法通过相应的算法,反推出口令的明文。具体细节,本文就不再多说了。 那攻击者如何获得存储在软件系统的口令关联信息捏?其实前面提到的RockYou网站的杯具,就是一个很好的例子。俺再举另一个例子。 比如:某个Linux/Unix服务器存在安全,攻击者利用此漏洞搞到了“/etc/shadow”文件。那么攻击者就可以采用上述提到的暴力破解的招数,攻破该服务器上所有强度较弱的口令。 ★攻击者如何通过“非技术”手段搞定的你的密码? 说完了技术手段,自然就得再说说非 技术手段。所谓的非技术手法,也就是社会工程学手法 。用于盗取密码的社会工程学手法,大概有如下几种。 ◇偷窥 偷窥是最简单的一种社会工程学攻击手法。虽然简单,但是有效。比如很多盗取银行卡的家伙,就是偷窥的手法,得到被害人的银行卡密码。 ◇钓鱼 另外一个骗取口令的方式,就是通过网络钓鱼。比如某些攻击者,会伪造一个银行的网站。其界面和真实的网站一模一样。然后通过某种方式(比如:虚假链接、欺诈邮件、DNS欺骗、等),引诱你到这个网站上。由于假网站和真网站的界面很像,你可能信以为真,然后在假网站中输入你的用户名和密码。 有些高明的钓鱼网站,会采用类似Web代理的技巧:把你的所有输入操作,转而提交给真网站;然后把真网站输出的界面,再转回给受害者看。这样的话,受害者就跟在真实网站进行插作,没啥区别,不易看出破绽。 ◇分析 如果攻击者对你比较了解,那么他有可能通过深入的分析,攻破你的口令防护。是不是觉得很神奇?很匪夷所思?其实这种招数很常见,且不算太难。俺来举个例子。 相信很多网友都用过电子邮箱的找回口令功能。当你口令遗忘之后,可以通过回答事先预设的问题,来找回口令。很多不太专业的用户,预设的问题都很简单(比如:你的手机号是多少?比如:你的生日是哪天?)。对于这类过于简单的问题,攻击者可以很容易地找到答案,从而窃取到你的邮箱口令。 ◇欺骗 最近几年,通过电话诈骗,骗取银行卡密码的案例越来越多。这种作案手法,就属于社会工程学中,“欺骗”的范畴。其实在IT领域,某些黑客也会利用这种手法来获取口令。 ★结尾 介绍到这里,列位看官对黑客盗取口令的手法,应该有一个初步的认识了。本系列 的下一个帖子,将会具体介绍如何构造安全的口令/密码 。