1.Hash基本知识

在了解Windows用户密码之前,我们先认识一下Hash。

Hash,我们称之为单向散列函数(也直接音译为哈希函数)。它是把任意长度的输入,通过散列算法,变换成固定长度的输出的一个函数。

它具有以下几个特点:

(1).算法本身是不可逆的,即可以由输入得到散列值,但是不可能从散列值中得到输入值。

(2).不同的算法会得到不同长度的散列值,但使用同一个算法,无论输入的数据有多长,得到的散列值长度总是固定的。

(3).不同的输入必然产生不同的散列值,两条相似的数据产生的散列值可能会大相庭径。

常用的Hash算法:

(1).MD4:MD4(RFC 1320)是MIT的Ronald Rivest在1990年设计的,MD是Message Digest(消息摘要)的缩写。它适用于32位字长的处理器上用高速软件实现。

(2).MD5:MD5(RFC 1321)是Rivest于1991年对MD4的改进版本。它对输入仍以512位分组,其输出是4个32位字的级联,与MD4相同。MD5比MD4复杂,并且速度较之要慢一点,但更加安全,在抗分析和抗差分方面表现更好。

(3).SHA-1:SHA1是由NIST NSA设计为同DSA一起使用的,它对长度小于264的输出,产生长度为160bit的散列值,因此抗穷举(brute-force)性更好。SHA-1设计时基于和MD4相同原理,并且模仿了该算法。

2.Windows密码

Windows用户密码存放在C:\Windows\System32\config\SAM文件中。该文件被Windows系统独占打开,用户尝试打开该文件会显示如下:

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值。

为了用户密码的安全性,我们可以修改注册表,使SAM文件中只存放NTLM-Hash值。在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa下,修改名为“nolmhash”的DWORD值(如果没有这个值就添加它),将它设置为1,重启系统即可。

转载于:https://blog.51cto.com/qlxmy/1675464

Windows用户密码基础知识相关推荐

  1. 《商用密码-应用与安全性评估》学习1:密码基础知识

    目录 第一章 密码基础知识 1.1 密码应用概述 1.1.1 密码的概念与作用 1.1.2 密码的概念与作用 1.1.3 密码应用中的安全性问题 1.2 密码应用安全性评估的基本原理 1.3 密码技术 ...

  2. 密码基础知识——密码的概念与作用

    密码基础知识--密码的概念与作用 密码的概念与作用 密码的概念 密码的重要作用 密码的功能 密码应用技术框架 密码应用中的安全性问题 密码应用安全性评估的基本原理 信息安全管理标准 PDCA 管理循环 ...

  3. 神兵利器 - 在没有任何权限的情况下获取任何 Microsoft Windows 用户密码

    神兵利器 - 在没有任何权限的情况下获取任何 Microsoft Windows 用户密码. 项目地址:https://github.com/DarkCoderSc/win-brute-logon 目 ...

  4. Windows用户密码的加密方法与破解

    再研究Hastcat的时候涉及到了Windows的Hash破解,感觉这个地方还是有一些姿势点和细节的,特此写文章记录之. Hash简介 Hash 一般翻译为"散列",也可直接音译为 ...

  5. 记录Windows 的一些基础知识(包括基础命令,文件系统,注册表项)

    Windows基础命令 ## windows输入命令```powershell win+R 打开cmd 右键管理员运行 目录和文件操作 目录分为相对路径和绝对路径 相对路径(以当前为起点) " ...

  6. windows用户密码已经过期怎么办

    用户名已过期那就更改密码啊.用户密码过期是你的组策略的问题,做了限制,对密码有使用的期限.超过这个期限后系统会提醒你密码过期.告诉你修改的方法.开始--运行,输入 gpedit.msc,打开组策略管理 ...

  7. Windows RDP协议中对 Windows 用户密码加密库使用

    远程桌面协议(RDP, Remote Desktop Protocol)是一个多通道(multi-channel)的协议,让用户(客户端或称"本地电脑")连上提供微软终端机服务的电 ...

  8. windows系统安全基础知识——系统进程与病毒

    如何强制结束一个运行中的进程 Windows操作系统中只有System.SMSS.EXE和CSRSS.EXE不能杀.前两个是纯内核态的,最后那个是Win32子系统,ntsd本身需要它.ntsd从200 ...

  9. 《商用密码应用与安全性评估》第一章密码基础知识1.6密钥交换协议

            密码协议是指两个或者两个以上参与者使用密码算法时,为了达到加密保护或安全认证目的而约定的交互规则. 密钥交换协议         公钥密码出现之前,密钥交换很不方便,公钥密码可以在不安 ...

最新文章

  1. Hibernate和iBATIS 优缺点比较
  2. 一文打尽目标检测NMS | 精度提升篇
  3. java字体颜色编程_java Applet 程序设计讲解2 字体,颜色的使用
  4. 关于OPENGL的各个变换的顺序
  5. javascript 数组排序
  6. 人工智能大地图之分布式人工智能篇
  7. android中shape资源定义,Android中drawable使用Shape资源
  8. 第一章 ---- Spring IOC
  9. java日志系统简介: 从tomcat大量打印debug日志说起
  10. zookeeper学习之环境搭建
  11. 黑莓7290 使用说明
  12. IAST 被动扫描 WebGoat
  13. Tableau自定义调色板
  14. 数据结构:自组织线性表
  15. 教你一个免费白嫖域名的方法
  16. JAVA练习10-累加数
  17. dell服务器驱动安装安装系统安装,dellR720服务器安装系统win server2012X64方法
  18. calcite mysql_jsqlparser和calcite和druid功能对比
  19. vue 页面跳转路由 不显示内容Component inside <Transition> renders non-element root node that cannot be animated.
  20. 子查询(exists子查询)

热门文章

  1. python中日志logging模块和异常捕获traceback模块的使用
  2. 安装slide后Powerpoint 不自动退出的解决方案
  3. 二维码识别超级解决方案,工业级别
  4. remote Incorrect username or password ( access token)问题解决
  5. window 和 linux 环境下杀死tomcat进程——也可以解决其他端口被占用的问题
  6. VMware虚拟机CentOS7 - VMnet8网络配置及常见问题解决
  7. canvas生成图片toDataURL报错的原因和解决方法
  8. openstack上创建vm实例后,状态为ERROR问题解决
  9. windox与ubuntu18.04安装clion及导入qt库
  10. swagger 使用