# 2017-2018-1 20155232《信息安全技术》实验二——Windows口令破解

2017-2018-1 20155232《信息安全技术》实验二——Windows口令破解

【实验目的】
  • 了解Windows口令破解原理

  • 对信息安全有直观感性认识

  • 能够运用工具实现口令破解

【系统环境】
  • windows
【实验工具】
  • LC5
  • SuperDic
【实验原理】
  • 口令破解方法

口令破解主要有两种方法:字典破解和暴力破解。
字典破解是指通过破解者对管理员的了解,猜测其可能使用某些信息作为密码,例如其姓名、生日、电话号码等,同时结合对密码长度的猜测,利用工具来生成密码破解字典。如果相关信息设置准确,字典破解的成功率很高,并且其速度快,因此字典破解是密码破解的首选。
而暴力破解是指对密码可能使用的字符和长度进行设定后(例如限定为所有英文字母和所有数字,长度不超过8),对所有可能的密码组合逐个实验。随着可能字符和可能长度的增加,存在的密码组合数量也会变得非常庞大,因此暴力破解往往需要花费很长的时间,尤其是在密码长度大于10,并且包含各种字符(英文字母、数字和标点符号)的情况下。

  • 口令破解方式

口令破解主要有两种方式:离线破解和在线破解

离线破解攻击者得到目标主机存放密码的文件后,就可以脱离目标主机,在其他计算机上通过口令破解程序穷举各种可能的口令,如果计算出的新密码与密码文件存放的密码相同,则口令已被破解。
1065408-20171025195110816-306957059.jpg

  • 候选口令产生器作用是不断生成可能的口令。
  • 口令加密过程就是用加密算法对从口令候选器送来的候选口令进行加密运算而得到密码。
  • 密码比较就是口令比较,是将从候选口令计算得到的新密码和密码文件中存放的密码相比较。
【实验步骤】
  1. 首先通过快照X恢复Windows系统环境。
    1065408-20171025195140394-1635403387.jpg

  2. 字典破解

(1)为本机创建新用户。为了达到实验效果,用户口令不要设置得过于复杂,可以选择自己的生日,例如YYYYMMDD。将你创建的用户名及密码填入表13-1-1。
1065408-20171025195253973-1257550738.png

用户名5232
密码1029

(2) 进入实验平台,单击工具栏“字典生成器”按钮,启动“字典生成器”。选择“生日”标签页,输入的年份与月份信息应尽量包含步骤 (1)中用到的生日日期,在“生成字典”标签页中确定字典文件存放的路径以及新用户口令位数,最后生成字典文件。

1065408-20171025195639066-523993440.png
1065408-20171025195802488-1310037241.png

(3)单击工具栏“LC5”按钮,启动LC5口令破解工具。选择“Session”(会话)|“Session Options…”(会话选项)菜单项,在弹出的“Auditing Options For This Session”对话框中选中“Dictionary Crack”项的“Enabled”,取消其它项的“Enabled”。单击“Dictionary List”(字典列表)按钮,导入步骤(2)中生成的字典文件。

1065408-20171025200008363-1617232110.png

返回LC5主界面,选择“Session”|“Import…”(导入)菜单项,在弹出的“Import”对话框中导入本地用户列表,选择“Session”|“Begin Audit”(开始审计)菜单项,开始字典破解用户口令。
1065408-20171025200221176-2124274985.png

  1. 暴力破解

(1)创建新用户,建议用户口令仅由英文字母和数字组成,长度不超过6位,如123abc。
1065408-20171025200406473-1512431908.png
==新用户为52322,密码为123abc==

(2)选择LC5的“File”|“New Session…”(新会话)菜单项,新建会话。重新导入本地用户列表。

(3)在会话选项中仅选中“Brute Force Crack”(暴力破解)|“Enabled”,并在“Character Set”(字符集)中选择“alphabet+numbers”(字母表+数字), 开始暴力破解新建用户口令。

1065408-20171025200605738-767496950.png

密码破解成功如图:
1065408-20171025200745254-195129780.png

  1. 不同密码强度的破解时间比较

(1)再次新建4个用户,使用不同强度的用户口令。默认情况下该4个用户名及其口令如表。

用户名密码
user11234
user212abc
user3abc123
user412_ab+

1065408-20171025201127926-1450463121.png

1065408-20171025201133535-955141908.png

1065408-20171025201139348-1874288013.png

(2)新建LC5会话,在会话选项中选中暴力破解选项,字符设置选择“Custom”(自定义)。为了减少破解所需时间,请缩小自定义字符集。
1065408-20171025201332988-1998440064.png

1065408-20171025201340348-165662699.png

(3)开始暴力破解,当破解完成后,查看LC5的破解信息,填写表13-1-3。

1065408-20171025202141441-203195267.png

user1破解用时0s
user2破解用时1s
user3破解用时0s
user4破解用时2s
【实验中遇到的问题】
  • 在创建新的4个用户后,开始暴力破解,但是user1,user2,user3都可以破解出来,只有user4破解不出来
    1065408-20171025202708285-183740404.png

然后看资料上说由于user4的密码设置比较复杂,所以破解的时间非常长。根据实验结果不难发现长密码比短密码破解要更多的时间,复杂密码比简单密码需要更多的时间,这也就是设置复杂密码能够提高系统安全性的原因。于是进行字符自定义集的缩小(如图):
1065408-20171025203016988-1903112227.png

但是在等待很久依旧没有结果。

  • 解决:
    后来仔细检查发现在字符缩小的时候忘记加入“+”字符导致无法破解。修改如下:
    1065408-20171025203208363-969533399.png

则成功:
1065408-20171025202141441-203195267.png

【思考问题】
  1. 分析口令破解软件L0phtCrack(简写为LC)的工作原理。

口令破解主要有两种方法:字典破解和暴力破解。
字典破解是指通过破解者对管理员的了解,猜测其可能使用某些信息作为密码,例如其姓名、生日、电话号码等,同时结合对密码长度的猜测,利用工具来生成密码破解字典。如果相关信息设置准确,字典破解的成功率很高,并且其速度快,因此字典破解是密码破解的首选。
而暴力破解是指对密码可能使用的字符和长度进行设定后(例如限定为所有英文字母和所有数字,长度不超过8),对所有可能的密码组合逐个实验。随着可能字符和可能长度的增加,存在的密码组合数量也会变得非常庞大,因此暴力破解往往需要花费很长的时间,尤其是在密码长度大于10,并且包含各种字符(英文字母、数字和标点符号)的情况下。

  1. Windows 7的口令保护文件名称及存储位置是什么?
    1065408-20171025203952816-69740431.png

参考

  1. Windows保护系统帐户口令的算法有LM和NTLM,这两种算法有什么区别?

Windows的用户密码有LMi-Hash和NTLM-Hash两种算法。
(1).LM-Hash:
LM-Hash算法是在DES的基础上实现的,它不区分字母大小写,长度最长是14个字符,密码被分成2串7个字符进行存放。
(2).NTLM-Hash:
NTLM-Hash算法是微软基于LM-Hash算法的弱点而设计的算法。它对字母大小写敏感,摆脱了LM-Hash的魔术字符串“KGS!@#$%”。它是基于MD4实现的,穷举难度较大。

默认时,当Windows用户密码小于或者等于14个字符时,SAM文件中既存放着LM-Hash值,也存放着NTLM-Hash值。当用户密码大于14个字符,SAM文件中只存放NTLM-Hash值。

  1. 为了保护口令安全,设置口令应该遵循什么样的原则?

我觉得对于自己财产类的,要设置一个比较复杂一些的密码,可以考虑使用字母大小写+数字的方法。同时不要用自己的名字、自己名字的缩写、常用昵称或这ID做为密码的一部分。例如银行网上银行密码、支付密码等。
还有老师课上讲的用诗歌古诗词或者绕口令的每个字的开头字母作为密码也很不错。

  1. Windows系统在什么地方可设置帐户密码策略?帐户密码策略包括哪些内容?

参考windows密码策略在哪里查看及设置

在Windows操作系统中,帐户策略包含三个子集:
(1)密码策略:对于域或本地用户帐户,决定密码的设置,如强制性和期限。
(2)帐户锁定策略:对于域或本地用户帐户,决定系统锁定帐户的时间,以及锁定谁的帐户。
(3)Kerberos 策略:对于域用户帐户,决定与 Kerberos 有关的设置,如帐户有效期和强制性。

  1. 在密码破解中,常到彩虹表(Rainbow Table),彩虹表是什么?
  • 彩虹表(Rainbow Table)是一种破解哈希算法的技术,是一款跨平台密码破解器,主要可以破解MD5、HASH等多种密码。它的性能非常让人震惊,在一台普通PC上辅以NVidia CUDA技术,对于NTLM算法可以达到最高每秒103,820,000,000次明文尝试(超过一千亿次),对于广泛使用的MD5也接近一千亿次。更神奇的是,彩虹表技术并非针对某种哈希算法的漏洞进行攻击,而是类似暴力破解,对于任何哈希算法都有效。
  • 原理:安全界中常提及的彩虹表,它是以Windows的用户帐户LM/NTLM散列为破解对象的。简单说明一下,在 Windows2000/XP/2003系统下,账户密码并不是明文保存的,而是通过微软所定义的算法,保存为一种无法直接识别的文件,即通常所说的SAM文件,这个文件在系统工作时因为被调用所以不能够被直接破解。但我们可以将其以Hash即散列的方式提取,以方便导入到专业工具破解。

参考彩虹表详细介绍

  1. 你认为口令破解的技术将如何发展?

在将来口令加密会越来越复杂化,破解技术也将越来越复杂,肯定会出现更加快速有效的口令破解技术。

【感悟】

这次实验不是很难,根据步骤一步一步就能很快做出结果,但是仅仅做出结果是不够的如果没有理解其中的破解原理的话,所以在做完实验后,又看了看资料和实验原理,了解和加深了印象。

转载于:https://www.cnblogs.com/lsqsjsj/p/7732389.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值