渗透攻击思考题

news2024/11/20 8:40:52

目录

问题一:

存储过程:

密文存储:

问题二:

问题三:

问题四:

LM Hash的加密:

NTLM Hash 的加密:


问题一:

windows登录的明文密码,存储过程是怎么样的,密文存在哪个文件下,该文件是否可以打开,并且查看到密文 

存储过程:

在Windows系统中,用户密码不会以明文的形式保存在计算机中,而是通过保存密码的hash值来确保安全性。Windows默认使用NTLM或Kerberos身份认证协议进行加密存储密码。

在Windows本地认证流程中

1.winlogon.exe会接收用户输入的信息。

2.然后将密码交给lsass进程。这个过程中会存一份明文密码,但随后会将明文密码加密成NTLM Hash。

3.加密后的密码哈希值会与存储在SAM(Security Accounts Manager)数据库中的哈希值进行比较认证。

因此,Windows登录的明文密码在系统中并不直接存储,而是存储其加密后的hash值。这样的设计有助于保护用户密码的安全,防止未经授权的访问和泄露。

密文存储:

存储路径:本地用户的所有密码被加密存储在 C:\Windows\System32\config\SAM 文件中。

 

SAM 文件通常是受到系统保护和权限控制的,普通用户无法直接打开并查看其中的内容。只有具有管理员权限的用户才能够通过特定的工具访问SAM文件(如 mimikatz),可以看到NTML Hash,但不建议直接打开和编辑 SAM 文件,因为这可能会导致系统的安全性问题,并且可能违反用户隐私和安全政策。

问题二:

我们通过hashdump 抓取出 所有用户的密文,分为两个模块,为什么? 这两个模块分别都代表什么

通过hashdump抓取出所有用户的密文时,分为LMhash(LAN Manager Hash)和NThash两个模块的原因主要与它们所代表的安全级别兼容性有关。

LMhash是微软为了提高Windows操作系统的安全性而采用的散列加密算法,其本质是DES加密。然而,尽管其初衷是为了增强安全性,LMhash却相对容易被破解。这主要是因为它使用的密钥是固定的,且明文密码被限制在14位以内。由于这些安全缺陷,从Windows Vista和Windows Server 2008版本开始,Windows操作系统默认禁用了LMhash。

NThash,即NTLM Hash,是微软在Windows NT 3.1中引入的,旨在替代LMhash并提供更强的安全性。它支持Net NTLM认证协议及本地认证过程,并且其长度为32位,由数字与字母组成,这增加了破解的难度。

因此,hashdump工具在抓取密码哈希时,为了区分这两种不同的哈希算法以及它们所代表的安全级别和兼容性,将结果分为LMhash和NThash两个模块。这样,用户或分析人员可以清楚地看到系统中是否仍在使用较不安全的LMhash,以及哪些用户账户使用了更安全的NThash。这有助于评估系统的整体安全性,并采取必要的措施来加强安全防护。

hashdump抓取的密文分为LMhash和NThash: 

LMHash(LAN Manager Hash)

LMHash 是 Windows 系统早期版本中用于存储密码哈希的一种较旧的算法。它将用户密码转换成固定长度(16 字节)的哈希值。然而,由于 LMHash 的弱点和易于破解,现代的 Windows 操作系统通常不再使用 LMHash 存储密码,而是更安全的 NTLM Hash。

NTLM Hash

NTLM Hash 是一种更安全的密码哈希算法,用于在 Windows 系统中存储用户密码的哈希值。NTLM Hash 使用更复杂的算法和更长的哈希值来存储密码,通常是 32 个字符的长度。相比于 LMHash,NTLM Hash 更难以破解,并提供了更高的安全性。

问题三:

为什么第一个模块 永远是一样的aad3

因为LMhash容易被破解,为了保证系统的兼容性,Windows只是将LM Hash禁用了(从Windows Vista和Windows Server 2008版本开始,Windows操作系统默认禁用LM Hash),但仍然会生成LMhash并且是固定值aad3b435b51404eeaad3b435b51404ee

问题四:

这两个模块的加密算法有什么不同,如何加密的

LM Hash的加密:

1.用户的密码转换为大写,密码转换为16进制字符串,不足14字节将会用0来在后面补全。

2.密码的16进制字符串被分成两个7byte部分。每部分转换成比特流,并且长度位56bit,长度不足使用0在左边补齐长度

3.再分7bit为一组,每组末尾加0,再组成一组

4.上步骤得到的二组,分别作为key 为 "KGS!@#$%"进行DES加密。

5.将加密后的两组拼接在一起,得到最终LM HASH值。

例:Admin@123通过LM Hash加密

1.Admin@123 转换为大写 ADMIN@123

2.ADMIN@123转换十六进制

41444D494E40313233

3.密码不足14字节用0补全

41444D494E403132330000000000

4.分为2组7字节

41444D494E4031

32330000000000

5.将这两组7字节的十六进制转换为二进制

01000001010001000100110101001001010011100100000000110001

00110010001100110000000000000000000000000000000000000000

6.这两组每7bit一组末尾加0

0100000010100010000100101010100010010100011100100000000001100010

0011001000011000110000000000000000000000000000000000000000000000

7.将两组二进制转换为十六进制得到2组8字节编码

40A212A894720062

3218C00000000000

8.将2组8字节编码分别作为DES密钥,KGS!@#$%的16进制作为DES明文进行加密

4B47532140232425

两组结果:

6F08D7B306B1DAD4

B75E0C8D76954A50

9.拼接后得到最后结果

6F08D7B306B1DAD4B75E0C8D76954A50
NTLM Hash 的加密:

1.先将用户密码转换为16进制格式。

2.再将16进制格式的字符串进行ASCII转Unicode编码。

3.最后对Unicode编码的16进制字符串进行标准MD4单向哈希加密。

例:Admin@123通过NT Hash加密

1.Admin@123转换成十六进制

41646D696E40313233

2.将十六进制编码转换成Unicode格式(在每个字节后添加0x00)

410064006D0069006E004000310032003300

3.对Unicode格式的编码做MD4加密,生成32位的十六进制

570a9a65db8fba761c1008a51d4c95ab

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1629132.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据聚类:Mean-Shift和EM算法

目录 1. 高斯混合分布2. Mean-Shift算法3. EM算法4. 数据聚类5. 源码地址 1. 高斯混合分布 在高斯混合分布中,我们假设数据是由多个高斯分布组合而成的。每个高斯分布被称为一个“成分”(component),这些成分通过加权和的方式来构…

mysql-connector-java和spring-boot-starter-jdbc和mybatis-spring-boot-start

mysql-connector-java和spring-boot-starter-jdbc和mybatis-spring-boot-start JDBC是什么意思? JDBC是使用java语言操作mysql数据库的规范,java语言必须按照这个规范写才可以操作mysql数据库。 mysql-connector-java 在最开始的时候 程序中是不允许…

深入解析AI绘画算法:从GANs到VAEs

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

蛋糕购物商城

蛋糕购物商城 运行前附加数据库.mdf(或使用sql生成数据库) 登陆账号:admin 密码:123456 修改专辑价格时去掉¥以及上传专辑图片 c#_asp.net 蛋糕购物商城 网上商城 三层架构 在线购物网站,电子商务系统 …

Linux——终端

一、终端 1、终端是什么 终端最初是指终端设备(Terminal),它是一种用户与计算机系统进行交互的硬件设备。在早期的计算机系统中,终端通常是一台带有键盘和显示器的电脑,用户通过它输入命令,计算机在执行命…

redisson分布式锁的单机版应用

package com.redis;/*** author linn* date 2024年04月23日 15:31*/ import org.redisson.Redisson; import org.redisson.api.RedissonClient; import org.redisson.config.Config; import org.springframework.context.annotation.Bean; import org.springframework.context.…

SpringBoot 3.2.5 引入Swagger(OpenApi)

SpringBoot 3.2.5 引入Swagger(OpenApi) pom文件配置文件启动类Controller 层ApiFox题外话 springdoc-openapi 和 swagger 都可以用,用其中一个就行,不用两个都引入。 这里简单记录以下springdoc-openapi。 springdoc-openapi(J…

【AI相关】模型相关技术名词

目录 过拟合和欠拟合 1.过拟合 2.欠拟合 特征清洗、数据变换、训练集、验证集和测试集 1.特征清洗 2.数据变换 3.训练集 4.验证集 5.测试集 跨时间测试和回溯测试 1.跨时间测试(OOT 测试) 2.回溯测试 联合建模与联邦学习 1.联合建模 2.联…

用友政务财务系统FileDownload接口存在任意文件读取漏洞

声明: 本文仅用于技术交流,请勿用于非法用途 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。 简介 用友政务财务系统是由用友软件开发的一款针对政府机…

OPPO手机支持深度测试+免深度测试解锁BL+ROOT权限机型整理-2024年3月更新

绿厂OPPO手机线上线下卖的都很不错,目前市场份额十分巨大,用户自然也非常多,而近期ROM乐园后台受到很多关于OPPO手机的私信,咨询哪些机型支持解锁BL,ROOT刷机,今天ROM乐园正式盘点当前市场上可以解BL刷root…

树莓派4-通过IIC实现图片循环播放

一、环境 1、树莓派4; 2、串口连接电脑; 3、树莓派由杜邦线连接0.96寸OLED1306协议 4、树莓派能够联网,便于安装环境。离线情况也可以安装,相对麻烦; 二、目标 1、树莓派可以开启IIC并识别已连接的IIC; …

机器人-轨迹规划

旋转矩阵 旋转矩阵--R--一个3*3的矩阵,其每列的值时B坐标系在A坐标系上的投影值。 代表B坐标系相对于A坐标系的姿态。 旋转矩阵的转置矩阵 其实A相对于B的旋转矩阵就相当于把B的列放到行上就行。 视频 (将矩阵的行列互换得到的新矩阵称为转置矩阵。&…

4月26日 阶段性学习汇报

1.毕业设计与毕业论文 毕业设计已经弄完,加入了KNN算法,实现了基于四种常见病的判断,毕业论文写完,格式还需要调整,下周一发给指导老师初稿。目前在弄答辩ppt(25%)。25号26号两天都在参加校运会…

【蓝桥杯省赛真题38】python字符串拼接 中小学青少年组蓝桥杯比赛 算法思维python编程省赛真题解析

目录 python字符串拼接 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 七、 推荐资料 1、蓝桥杯比赛 2、考级资料 3、其它资料 python字符串拼接 第十三届蓝桥杯青少年组python编程省赛真题 一、题目…

Cadence OrCAD学习笔记(2)OrCAD原理图

最近换份工作主要用到Cadence,之前都是用AD居多,所以现在也开始记录下Cadence学习过程,方便后面复习。 参考教程: OrCAD视频教程第2期:10分钟学会OrCAD原理图_哔哩哔哩_bilibili 本期主要介绍原理图中的基本操作&…

ZooKeeper 搭建详细步骤之二(伪集群模式)

ZooKeeper 搭建详细步骤之一(单机模式) ZooKeeper 及相关概念简介 伪集群搭建 ZooKeeper 伪集群是指在一个单一的物理或虚拟机环境中模拟出一个由多个 ZooKeeper 节点构成的集群。尽管这些节点实际上运行在同一台机器上,但它们通过配置不同的…

【学习笔记二十八】EWM和QM集成的后台配置和前台展示

一、EWM和QM集成概述 SAP EWM(扩展仓库管理)和QM(质量管理)的集成是SAP系统中一个重要的特性,它允许企业在仓库管理过程中实现质量控制和检验流程的自动化。以下是关于EWM和QM集成的一些关键点概述: 集成优势:通过集成,企业可以确保仓库中的物料在收货、存储、…

flutter笔记-主要控件及布局

文章目录 1. 富文本实例2. Image2.1 本地图片2.2 网络图片 笔记3. 布局4. 滑动相关view4.1 GridView类似九宫格view4.2 ListView 关于widget的生命周期的相关知识这里就不做介绍,和很多语言类似; 1. 富文本实例 Dart中使用richtext,示例如下…

深入浅出MySQL-02-【MySQL支持的数据类型】

文章目录 前言1.数值类型2.日期时间类型3.字符串类型3.1.CHAR和VARCHAR类型3.2.ENUM类型3.3.SET类型 4.JSON类型 前言 环境: Windows11MySQL-8.0.35 1.数值类型 MySQL中的数值类型,如下: 整数类型字节最小值最大值TINYINT1有符号 -128无…

C#反射应用

1.根据类名名称生成类实例 CreateInstance后面的参数部分一定要和所构造的类参数数量对应,即使设置参数默认值,也不可省略。 2.只知道类名,需要将该类作为参数调用泛型接口。 3.只知道类名,需要将该类的数组作为参数调用泛型接口…