第4章口令破解与防御技术张玉清国家计算机网络入侵防范中心2020/6/28网络入侵与防范讲义2内容安排4.1口令的历史与现状4.2口令破解方式4.3典型的口令破解工具4.4口令攻击的综合应用4.5口令攻击的防御4.6小结2020/6/28网络入侵与防范讲义34.1口令的历史与现状20世纪80年代,当计算机开始在公司里广泛应用时,人们很快就意识到需要保护计算机中的信息。如果仅仅使用一个userID来标识自己,由于别人很容易得到这个userID,几乎无法阻止某些人冒名登录。基于这一考虑,用户登录时不仅要提供userID来标识自己是谁,还要提供只有自己才知道的口令来向系统证明自己的身份。2020/6/28网络入侵与防范讲义44.1口令的历史与现状口令的作用就是向系统提供唯一标识个体身份的机制,只给个体所需信息的访问权,从而达到保护敏感信息和个人隐私的作用。虽然口令的出现使登陆系统时的安全性大大提高,但是这又产生了一个很大的问题。如果口令过于简单,容易被人猜解出来;如果过于复杂,用户往往需要把它写下来以防忘记,这种做法也会增加口令的不安全性。当前,计算机用户的口令现状是令人担忧的。2020/6/28网络入侵与防范讲义54.1口令的历史与现状另外一个和口令有关的问题是多数系统和软件有默认口令和内建帐号,而且很少有人去改动它们,主要是因为:不知道有默认口令和帐号的存在,并不能禁用他们;出于防止故障以防万一的观点,希望在产生重大问题时,商家能访问系统,因此不想改口令而将商家拒之门外;多数管理员想保证他们自己不被锁在系统之外:一种方法就是创建一个口令非常容易记忆的帐号;另一种方法就是和别人共享口令或者把它写下来。而以上两种都会给系统带来重大安全漏洞。2020/6/28网络入侵与防范讲义74.2口令破解方式4.2.1口令破解方式概述4.2.2词典攻击4.2.3强行攻击4.2.4组合攻击4.2.5常见攻击方式的比较4.2.6其它的攻击方式2020/6/28网络入侵与防范讲义84.2.1口令破解方式概述口令破解是入侵一个系统比较常用的方法。获得口令的思路:穷举尝试:最容易想到的方法设法找到存放口令的文件并破解通过其它途径如网络嗅探、键盘记录器等获取口令这里所讲的口令破解通常是指通过前两种方式获取口令。这一般又有两种方式:手工破解和自动破解。2020/6/28网络入侵与防范讲义94.2.1口令破解方式概述(2)手工破解的步骤一般为:产生可能的口令列表按口令的可能性从高到低排序依次手动输入每个口令如果系统允许访问,则成功如果没有成功,则重试。注意不要超过口令的限制次数这种方式需要攻击者知道用户的userID,并能进入被攻击系统的登陆界面。需要先拟出所有可能的口令列表,并手动输入尝试。思路简单,但是费时间,效率低2020/6/28网络入侵与防范讲义104.2.1口令破解方式概述(3)自动破解只要得到了加密口令的副本,就可以离线破解。这种破解的方法是需要花一番功夫的,因为要得到加密口令的副本就必须得到系统访问权。但是一旦得到口令文件,口令的破解就会非常的快,而且由于是在脱机的情况下完成的,不易被察觉出来。2020/6/28网络入侵与防范讲义114.2.1口令破解方式概述(4)自动破解的一般过程如下:找到可用的userID找到所用的加密算法获取加密口令创建可能的口令名单对每个单词加密对所有的userID观察是否匹配重复以上过程,直到找出所有口令为止2020/6/28网络入侵与防范讲义124.2.2词典攻击所谓的词典,实际上是一个单词列表文件。这些单词有的纯粹来自于普通词典中的英文单词,有的则是根据用户的各种信息建立起来的,如用户名字、生日、街道名字、喜欢的动物等。简而言之,词典是根据人们设置自己账号口令的习惯总结出来的常用口令列表文件。2020/6/28网络入侵与防范讲义134.2.2词典攻击(2)使用一个或多个词典文件,利用里面的单词列表进行口令猜测的过程,就是词典攻击。多数用户都会根据自己的喜好或自己所熟知的事物来设置口令,因此,口令在词典文件中的可能性很大。而且词典条目相对较少,在破解速度上也远快于穷举法口令攻击。在大多数系统中,和穷举尝试所有的组合相比,词典攻击能在很短的时间内完成。2020/6/28网络入侵与防范讲义144.2.2词典攻击(3)用词典攻击检查系统安全性的好处是能针对特定的用户或者公司制定。如果有一个词很多人都用来作为口令,那么就可以把它添加到词典中。在Internet上,有许多已经编好的词典可以用,包括外文词典和针对特定类型公司的词典。例如,在一家公司里有很多体育迷,那么就可以在核心词典中添加一部关于体育名词的词典。2020/6/28网络入侵与防范讲义154.2.2词典攻击(4)经过仔细的研究了解周围的环境,成功破解口令的可能性就会大大的增加。从安全的角度来讲,要求用户不要从周围环境中派生口令是很重要的。2020/6/28网络入侵与防范讲义164.2.3强行攻击很多人认为,如果使用足够长的口令或者使用足够完善的加密模式,就能有一个攻不破的口令。事实上,是没有攻不破的口令的,攻破只是一个时间的问题,哪怕是花上100年才能破解一个高级加密方式,但是起码他是可以破解的,而且破解的时间会随着计算机处理速度的提高而减少。10年前需要花100年才能破解的口令可能现在只要花一星期就可以了。2020/6/28网络入侵与防范讲义174.2.3强行攻击(2)如果有速度足够快的计算机能尝试字母、数字、特殊字符所有的组合,将最终能破解所有的口令。这种攻击方式叫做强行攻击(也叫做暴力破解)。使用强行攻击,先从字母a开始,尝试aa、ab、ac等等,然后尝试aaa、aab、aac……。2020/6/28网络入侵与防范讲义184.2.3强行攻击(3)系统的一些限定条件将有助于强行攻击破解口令。比如攻击者知道系统规定口令长度在6~32位,那么强行攻击就可以从6位字符串开始破解,并不再尝试大于32位的字符串。2020/6/28网络入侵与防范讲义194.2.3强行攻击(4)使用强行攻击,基本上是CPU的速度和破解口令的时间上的矛盾。现在的台式机性能增长迅速,口令的破解会随着内存价格的下降和处理器速度的上升而变得越来越容易了。2020/6/28网络入侵与防范讲义204.2.3强行攻击(5)一种新型的强行攻击叫做分布式暴力破解,如果攻击者希望在尽量短的时间内破解口令,他不必购买大批昂贵的计算机,而是把一个大的破解任务分解成许多小任务,然后利用互联网上的计算机资源来完成这些小任务,加快口令破解的进程。2020/6/28网络入侵与防范讲义214.2.4组合攻击词典攻击虽然速度快,但是只能发现词典单词口令;强行攻击能发现所有口令,但是破解的时间长。很多情况下,管理员会要求用户的口令是字母和数字的组合,而这个时候,许多用户就仅仅会在他们的口令后面添加几个数字,例如,把口令从ericgolf改成ericgolf2324,这样的口令利用组合攻击很有效。组合攻击是在使用词典单词的基础上在单词的后面串接几个字母和数字进行攻击的攻击方式。2020/6/28网络入侵与防范讲义224.2.4组合攻击(2)组合攻击是使用词典中的单词,但是对单词进行了重组,它介于词典攻击和强行攻击之间。2020/6/28网络入侵与防范讲义234.2.5常见攻击方式的比较词典攻击强行攻击组合攻击攻击速度快慢中等破解口令数量找到所有词典单词找到所有口令找到以词典为基础的口令2020/6/28网络入侵与防范讲义244.2.6其它的攻击方式口令安全最容易想到的一个威胁就是口令破解,许多公司因此花费大量功夫加强口令的安全性、牢固性、不可破解性,但即使是看似坚不可摧很难破解的口令,还是有一些其它手段可以获取的,类似大开着的“后门”。社会工程学偷窥搜索垃圾箱口令蠕虫特洛伊木马网络监听重放2020/6/28网络入侵与防范讲义25社会工程学社会工程学:是一种让人们顺从你的意愿、满足你的欲望的一门艺术与学问,并不直接运用技术手段,而是一种利用人性的弱点、结合心理学知识,通过对人性的理解和人的心理的了解来获得目标系统敏感信息的技术。简单来说,就是欺骗人们去获得本来无法访问的信息。在多数的公司里,如果得到信任,就会被允许拥有访问这个公司信息的特权,如雇员、合同方。如果攻击者能通过一些方式得到系统可用的访问账号和口令,或使公司内部的某个人确信他是被信任的实体,他就很可能获得系统的访问权限。社会工程学(2)攻击者:喂,我是大为。我在技术支持中心工作,现在我要对你的系统进行例行维护。受骗者:是吗?我从来没有听说支持中心要对我们的系统进行例行维护。攻击者:嗯,是这样,上个季度我们才开始做这个工作。我们正在为所有远程用户做例行维护。我刚刚做完北区的所有计算机的维护。实际上,绝大多数用户都说,经过这次维护之后,他们的计算机的速度明显加快了。受骗者:是吗?那好,如果其它人的机器速度都加快了,那么我也这样做一下。现在我需要做些什么?攻击者:嗯,你不需要做什么。我可以远程地把一切都为你做好,但为了能够这样做,我需要知道你的VPN用户名和口令。受骗者:你真的能够远程地做好这一切?真是太好了。嗯,我的用户名是abc,口令是chaodong。攻击者:太好了。谢谢你的协助。我将以VPN方式登录到你的计算机,并进行例行维护。这只需要几分钟的时间。至此,我们得到了用户名和密码2020/6/28网络入侵与防范讲义27偷窥得到口令的另一个简单而又可行的方法就是观察别人敲口令,这种办法就叫偷窥。在开放的三维空间,这一点并不难。有人曾经做过一个“偷窥”的实验:在一个纽约的冬天,他在一个公司后门的入口处停下汽车,当他从汽车里出来的时候身穿长大衣,提着一个似乎很重的箱子,跟在一个正要进入大楼的人的身后。询问那个人是否可以帮他把大门打开,而那个人也照做了,而且并没有询问他是否有徽章,第一步成功,成功地进入了建筑楼内;然后他找到了管理员的工作间,因为他想得到管理员的权限,通过桌子上的一份文件,他得到了管理员的名字,当管理员进来以后,他谎称他们公司正在做一个测试,给管理员电子邮件,想知道他是否有收到。当管理员登陆系统的过程中,他就站在管理员的身后,并成功地偷窥到了管理员的口令,也就偷窥到了系统的管理员权限。2020/6/28网络入侵与防范讲义28搜索垃圾箱有许多的人在丢弃垃圾的时候甚至不把电子邮件、文档、计划和口令撕成两半就丢弃了,更别说粉碎后再丢弃。而且许多公司的垃圾都是丢到一个垃圾箱里,大多数清洁工都是在晚上打扫办公室,如果凌晨2点到一些垃圾箱去找找,会很容易就找出一些相当有用的资料。2020/6/28网络入侵与防范讲义29口令蠕虫2003年,“口令蠕虫”突袭我国互联网,它通过一个名为dvldr32.exe的可执行程序,实施发包进行网络感染操作。数以万计的国内服务器被感染并自动与境外服务器进行连接。该“口令蠕虫”的特点如下:自带一份口令字典,对网上主机超级用户口令进行基于字典的猜测。一旦猜测口令成功,该蠕虫植入7个与远程控制和传染相关的程序,立即主动向国外的几个特定服务器联系,并可被远程控制。可以实现大规模的自动化口令攻击,扫描流量极大,容易造成网络严重拥塞。2020/6/28网络入侵与防范讲义30口令蠕虫(2)口令攻击是常见的黑客攻击方式,但像“口令蠕虫”这样形成大面积、大规模自动化的网上口令攻击,并致使被攻击系统与国外特定服务器进行连接,是一种新的网络攻击方式。与以往利用操作系统或应用系统的技术漏洞进行攻击不同的是,“口令蠕虫”所利用的是网上用户对口令等管理的弱点进行攻击。2020/6/28网络入侵与防范讲义31特洛伊木马特洛伊木马程序可以直接侵入用户的电脑并进行破坏,它常被伪装成工具程序或者游戏等诱使用户打开带有特洛伊木马程序的邮件附件或从网上直接下载,一旦