《信息安全技术》实验二 Windows口令破解

《信息安全技术》实验二 Windows口令破解

实验目的

  • 了解Windows口令破解原理
  • 对信息安全有直观感性认识
  • 可以运用工具实现口令破解

实验环境

  • 实验机Windows Server 2003虚拟机

实验工具

网络信息安全教学实验平台中打开:算法

  • LC5
  • SuperDic

实验原理

  1. 口令破解方法
    • 字典破解:经过破解者对管理员的了解,猜想其可能使用某些信息做为密码,例如其姓名、生日、电话号码等,同时结合对密码长度的猜想,利用工具来生成密码破解字典。若是相关信息设置准确,字典破解的成功率很高,而且其速度快,所以字典破解是密码破解的首选。
    • 暴力破解:对密码可能使用的字符和长度进行设定后(例如限定为全部英文字母和全部数字,长度不超过8),对全部可能的密码组合逐个实验。随着可能字符和可能长度的增长,存在的密码组合数量也会变得很是庞大,所以暴力破解每每须要花费很长的时间,尤为是在密码长度大于10,而且包含各类字符(英文字母、数字和标点符号)的状况下。
  2. 口令破解方式
    • 离线破解:离线破解攻击者获得目标主机存放密码的文件后,就能够脱离目标主机,在其余计算机上经过口令破解程序穷举各类可能的口令,若是计算出的新密码与密码文件存放的密码相同,则口令已被破解。能够将口令破解程序的工做流程用下图表示。
      dVM1H.png
      其中,候选口令产生器做用是不断生成可能的口令。有几种方法产生候选口令,一种是用枚举法来构造候选口令(暴力破解),另外一种方法是从一个字典文件里读取候选口令(字典破解);口令加密过程就是用加密算法对从口令候选器送来的候选口令进行加密运算而获得密码。这要求加密算法要采用和目标主机一致的加密算法。加密算法有不少种,一般与操做系统的类型和版本相关;密码比较就是口令比较,是将从候选口令计算获得的新密码和密码文件中存放的密码相比较。若是一致,那么口令破解成功,可使用候选口令和对应的帐号登陆目标主机。若是不一致,则候选口令产生器计算下一个候选口令。
    • 在线破解:经过在线破解攻击者可使用一个程序链接到目标主机,不断地尝试各类口令试图登陆目标主机。目标主机系统中某些低等级的帐号的口令每每容易被尝试成功,而后,攻击者使用其帐号进入系统获取密码存放文件(Windows系统是SAM文件,Linux系统是passwd等文件),再使用离线破解方法破解高权限的口令(管理员口令等)。

实验步骤

1、环境配置

  1. 打开实验机,启动VB中Windows Server 2003虚拟机;
  2. 双击“网络信息安全教学实验平台”软件,进入实验平台:dZk8g.png

2、字典破解

  1. 为本机建立新用户。为了达到实验效果,用户口令不要设置得过于复杂,以下图:dV3nI.png
  2. 进入实验平台,单击工具栏“字典生成器”按钮,启动“字典生成器”。选择“生日”标签页,输入的年份与月份信息应尽可能包含步骤(1)中用到的生日日期,在“生成字典”标签页中肯定字典文件存放的路径以及新用户口令位数,最后生成字典文件。dV8Bt.png
  3. 单击工具栏“LC5”按钮,启动LC5口令破解工具。选择“Session”(会话)-->“Session Options…”(会话选项)菜单项,在弹出的“Auditing Options For This Session”对话框中选中“Dictionary Crack”项的“Enabled”,取消其它项的“Enabled”。单击“Dictionary List”(字典列表)按钮,导入步骤(2)中生成的字典文件。dV5uR.png
  4. 返回LC5主界面,选择“Session”-->“Import…”(导入)菜单项,在弹出的“Import”对话框中导入本地用户列表,选择“Session”-->“Begin Audit”(开始审计)菜单项,开始字典破解用户口令。dVID1.png
  5. 字典破解成功!以下图:dVoHx.png

3、暴力破解

  1. 建立新用户,建议用户口令仅由英文字母和数字组成,长度不超过6位,如123abc。
  2. 选择LC5的“File”-->“New Session…”(新会话)菜单项,新建会话。从新导入本地用户列表。
  3. 在会话选项中仅选中“Brute Force Crack”(暴力破解)-->“Enabled”,并在“Character Set”(字符集)中选择“alphabet+numbers”(字母表+数字), 开始暴力破解新建用户口令。dVb4O.png
  4. 暴力破解成功!以下图:dZP58.png
  5. 不一样密码强度的破解时间比较
    • 再次新建4个用户,使用不一样强度的用户口令dZCUf.png
    • 新建LC5会话,在会话选项中选中暴力破解选项,字符设置选择“Custom”(自定义)。为了减小破解所需时间,请缩小自定义字符集。dZ9VP.png我选择的自定义字符集为26个字母(不分大小写)+10个数字+_+两个符号:dZFPS.png
    • 开始暴力破解,当破解完成后,查看LC5的破解信息,记录各自的破解时间。破解ing...dZA2Q.png
    • 暴力破解成功!以下图:dVljA.png根据实验结果不难发现长密码比短密码破解要更多的时间,复杂密码比简单密码须要更多的时间,这也就是设置复杂密码可以提升系统安全性的缘由。

课后测试(部分)

  1. 对于口令破解软件LC,下列描述错误的是( )。  数据库

    【答案】A. LC不可以提供远程登陆Windows系统的口令破解。windows

  2. 若是口令为security123,在字典中存在组合security,不存在security123,那么最好使用下列哪一种破解方式:()安全

    A. Dictionary attack网络

    B. Hybrid dictionary attack函数

    C. Brute force attack工具

    D. Precomputed hash attack测试

    【错选】C加密

    【答案】B操作系统

  3. 口令破解中,所谓词典就是一个()。

    A. 配置破解方式属性的文件

    B. 单词或数字字符组合列表文件

    C. 批处理文件

    D. 可执行文件

    【答案】B

  4. 口令破解实验中,密码词典的扩展名是( )。  

    【答案】C. dic

  5. 口令破解软件的功能模块不包括()。

    A. 候选口令产生器模块

    B. 口令加密模块

    C. 口令解密模块

    D. 密码比较模块

    【错选】B

    【答案】C

  6. 对于口令破解描述错误的是()。

    A. 理论上讲,任何口令都是可破解的,只是时间问题。

    B. 口令破解器一般是对口令密文进行解密破解。

    C. 复杂口令的破解一般会更耗费时间。

    【答案】B

  7. Windows系统中,保护用户帐户及口令的文件是以下哪一个文件()。

    A. %systemroot%system32\config\SAM

    B. %systemroot%system32\config\SECURITY

    C. %systemroot%system32\driver\SAM

    D. %systemroot%system32\driver\SECURITY

    【错选】B

    【答案】A

  8. 对于口令Sec16mASec16mA和Sec16mA来讲,下列描述正确的是()。

    A. 在LM算法中,Sec16mASec16mA比Sec16mA安全性要好。

    B. 在LM算法中,Sec16mASec16mA和Sec16mA安全性同样。

    【错选】A

    【答案】B

  9. 下列对于LM算法与NTLM算法描述错误的是()。

    A. LM-Hash算法是在DES的基础上实现的。

    B. LM-Hash不区分字母大小写,长度最长是14个字符。

    C. NTLM-Hash不区分字母大小写,长度可超过14个字符。

    D. NTLM-Hash基于MD4算法实现。

    【错选】B

    【答案】C

  10. 关于彩虹表,下列描述错误的是()。

    A. 彩虹表技术以时空折中理论为基础,即增大存储空间的开销缩短密码破解所须要的时间。

    B. 彩虹表是描述明文口令及其对应密文的一个大型数据库,破解时经过密文直接反查明文。

    C. 彩虹表为了节约空间,用哈希链的存储方式进行存储。

    D. 针对不一样的HASH算法,有不一样的彩虹表。

    【答案】B

思考题

  1. 分析口令破解软件L0phtCrack(简写为LC)的工做原理。
    • L0phtCrack是在NT平台上使用的口令审计工具。它能经过保存在NT操做系统中cryptographic hashes列表来破解用户口令的。一般为了安全起见,用户的口令都是在通过加密以后保存在hash列表中的。这些敏感的信息若是被攻击者得到,他们不只可能会获得用户的权限,也可能会获得系统管理员的权限。这后果将不堪设想。L0phtCrack可经过各类不一样的破解方法对用户的口令进行破解。
      • 最快也是最简单的方法是字典攻击。L0phtCrack将字典中的词逐个与口令hash表中的词做比较。当发现匹配的词时,显示结果,即用户口令。L0phtCrack自带一个小型词库。若是须要其它字典资源能够从互联网上得到。这种破解的方法,使用的字典的容量越大,破解的结果越好。
      • 另外一种方法名为Hybrid。它是创建在字典破解的基础上的。如今许多用户选择口令再也不单单只是由字母组成的,他们常会使用诸如”bogus11”或”Annaliza!!”等添加了符号和数字的字符串做为口令。这类口令是复杂了一些,但经过口令过滤器和一些方法,破解它也不是很困难,Hybrid就能快速地对这类口令进行破解。
      • 最后一种也是最有效的一种破解方式“暴力破解”。按道理说真正复杂的口令,用如今的硬件设备是没法破解的。但如今所谓复杂的口令通常都能被破解,只是时间长短的问题。且破解口令时间远远小于管理员设置的口令有效期。使用这种方法也能了解一个口令的安全使用期限。
  2. Windows 7的口令保护文件名称及存储位置是什么?
    • SAM文件,保存在C:\windows\system32\config\下。
  3. Windows保护系统账户口令的算法有LM和NTLM,这两种算法有什么区别?
    • 早期SMB协议在网络上传输明文口令。后来出现 LAN Manager Challenge/Response 验证机制,简称LM,它是如此简单以致很容易就被破解。
    • 微软提出了WindowsNT挑战/响应验证机制,称之为NTLM。如今已经有了更新的NTLMv2以及Kerberos验证体系。NTLM是windows早期安全协议,因向后兼容性而保留下来。NTLM是NT LAN Manager的缩写,即NT LAN管理器。
  4. 为了保护口令安全,设置口令应该遵循什么样的原则?
  5. Windows系统在什么地方可设置账户密码策略?账户密码策略包括哪些内容?
  6. 在密码破解中,常到彩虹表(Rainbow Table),彩虹表是什么?
    • 彩虹表对我来讲能够算比较熟悉了,由于前不久的第三届全国密码技术竞赛上,咱们小组就以彩虹表为研究方向提交了题为《基于彩虹表的动态口令程序分析及应用》的复赛做品,主要侧重于新型彩虹表的设计实现和具体应用:dZKaV.pngdZM5T.png
      简而言之,彩虹表是一个用于攻击Hash函数的预先计算Hash链集。与常见的暴力攻击和字典攻击相比,彩虹表在时间复杂度和空间复杂度上有着更平衡的优点,并对动态口令破解有着显著的效果。
  7. 你认为口令破解的技术将如何发展?

参考资料

相关文章
相关标签/搜索