mimkatz获取windows10明文密码

2024-06-01 09:04

本文主要是介绍mimkatz获取windows10明文密码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

mimkatz获取windows10明文密码原理

lsass.exe进程的作用

mimikatz的工作机制

Windows 10的特殊情况

实验

实验环境

实验工具

实验步骤

首先根据版本选择相应的mimikatz

使用管理员身份运行cmd

修改注册表

​编辑

重启

重启电脑后打开mimikatz

在cmd切换到mimikatz 64位所在路径

进入软件

进入调试权限

查看密码


mimkatz获取windows10明文密码原理

lsass.exe进程的作用

lsass.exe是Windows操作系统中的一个关键进程,它负责本地安全和登录策略。当用户登录时,lsass.exe会使用一个可逆的算法加密明文密码,并将密文保存在内存中。

mimikatz的工作机制

mimikatz通过注入代码到操作系统的内存中,能够读取和解密这些由lsass.exe进程保存的加密凭证。具体的操作是,mimikatz先利用管理员权限执行一些操作,如使用procdump等工具lsass.exe进程转储成一个dmp文件。这个dmp文件包含了加密的用户凭证信息。然后,mimikatz读取这个dmp文件,并利用其内置的解密算法还原出明文密码。

Windows 10的特殊情况

在Windows 10或更高版本的系统中,默认情况下,操作系统会在内存缓存中禁止保存明文密码。这意味着,直接读取lsass.exe进程的内存将无法获取到明文密码。为了在Windows 10上获取明文密码,需要采取一些额外的步骤。首先,通过修改注册表的方式让Wdigest Auth保存明文口令。具体是执行类似于reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f的命令。修改注册表后,需要等待系统管理员重新登录,此时Wdigest Auth会保存明文口令到内存中。然后,再次使用mimikatz等工具读取lsass.exe进程的内存,即可获取到明文密码。

实验

实验环境

windows10专业版

实验工具

mimikatz

实验步骤

首先根据版本选择相应的mimikatz

(我电脑是64位所以选择64位)

使用管理员身份运行cmd

修改注册表

在cmd中输入以下命令

reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f#命令各个字段解析
1、reg add:
2、这是Windows命令行工具reg的一个子命令,用于向注册表中添加新的项或值。
HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest:这是注册表项的完整路径。 HKLM:代表HKEY_LOCAL_MACHINE,这是Windows注册表中的一个根键,用于存储关于计算机硬件和软件的配置信息。接下来的路径SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest指定了我们要修改的注册表项的详细位置。
3、/v UseLogonCredential:
这指定了我们要添加或修改的注册表值的名称,即UseLogonCredential。
4、/t REG_DWORD
这指定了注册表值的类型,即REG_DWORD。REG_DWORD是一个32位数值,通常用于存储整数。
/d 1
5、这指定了注册表值的数据。在这种情况下,我们将UseLogonCredential的值设置为1。
在这个特定的上下文中,将UseLogonCredential设置为1允许Windows Digest身份验证(由WDigest提供)存储用户的明文密码。
/f:
这是一个强制选项,意味着命令将不会提示用户确认。它将直接修改注册表,而不会询问用户是否确定。

出现如下图所示提示说明修改成功,若修改失败请检查cmd权限

重启

上面命令执行后需要重启在会显示结果

重启电脑后打开mimikatz

在cmd切换到mimikatz 64位所在路径

进入软件

进入调试权限

在Windows环境中,调试权限是一种允许用户调试其他进程和系统组件的特殊权限。拥有调试权限的用户可以附加到任何进程上,这通常用于开发、故障排除或恶意活动。这通常是通过调Windows API或执行某些底层操作来完成的。

输入以下代码进入调试权限

privilege::debug

出现如下图所示提示进入调试权限成功

查看密码

输入以下命令查看密码

sekurlsa::logonpasswords full

这篇关于mimkatz获取windows10明文密码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1020569

相关文章

【青龙面板辅助】JD商品自动给好评获取京豆脚本

1.打开链接 开下面的链接进入待评价商品页面 https://club.jd.com/myJdcomments/myJdcomments.action?sort=0 2.登陆后执行脚本 登陆后,按F12键,选择console,复制粘贴以下代码,先运行脚本1,再运行脚本2 脚本1代码 可以自行修改评价内容。 var content = '材质很好,质量也不错,到货也很快物流满分,包装快递满

Spring 内部类获取不到@Value配置值问题排查(附Spring代理方式)

目录 一、实例问题 1、现象 2、原因 3、解决 二、Spring的代理模式 1、静态代理(Static Proxy) 1)原理 2)优缺点 3)代码实现 2、JDK动态代理(JDK Dynamic Proxy) 1)原理 2)优缺点 3)代码实现 3、cglib 代理(Code Generation Library Proxy) 1)原理 2)优缺点 3)代码实

获取Windows系统版本号(转)

https://blog.csdn.net/sunflover454/article/details/51525179

混合密码系统解析

1. 概述         混合密码系统(hybrid cryptosystem)是将对称密码和非对称密码的优势相结合的方法。一般情况下,将两种不同的方式相结合的做法就称为混合(hybrid)。用混合动力汽车来类比的话,就相当于是一种将发动机(对称密码)和电动机(非对称密码)相结合的系统。         混合密码系统中会先用快速的对称密码来对消息进行加密,这样消息就被转换为了密文从而也就保证

ApplicationContext 获取的三种方法

spring为ApplicationContext提供的3种实现分别 为:ClassPathXmlApplicationContext,FileSystemXmlApplicationContext和 XmlWebApplicationContext,其中XmlWebApplicationContext是专为Web工程定制的。使用举例如下:    1. FileSystemXmlApplicati

如何给文档设置密码?电脑文件安全加密的详细操作步骤(10种方法)

在数字化时代,电脑文件的安全和隐私至关重要。通过给电脑的文件或者文件夹设置密码和加密,可以有效保护你的重要文件不被未经授权的人员访问,特别是公司的重要岗位,一些特殊的机密文件,投标文件,资金文件等等,更应该注重文件日常使用安全性。下面将为你介绍10种电脑文件,文件夹加密的详细操作步骤,帮助你更好地保护你的电脑文件安全。 加密方式一、Windows系统内置加密(电脑自带的文件加密) 选中需要

LSSS算法实现,基于eigen和pbc密码库【一文搞懂LSSS,原理+代码】

文章目录 一. LSSS简介1.1 概述1.2 线性秘密分享方案(LSSS)与 Shamir的秘密分享方案对比LSSS1.2.1 Shamir的秘密分享方案1.2.2 线性秘密分享方案(LSSS)1.2.3 主要区别 二. 基于矩阵的LSSS加解密原理分析2.1 LSSS矩阵构造2.1.1 定义2.1.2 规则 12.1.3 规则 22.1.4 规则 32.1.5 形成线性共享矩阵M 2.

C语言封装获取本机IP地址的程序

文章目录 0.概要1. 设计2. 完整的代码`ip_address.h``ip_address.c``main.c`编译命令执行结果 0.概要 本文介绍用C语言编写一个函数来获取本机的IP地址。 1. 设计 将获取IP地址的逻辑封装到一个独立的函数中,并定义一个结构体来存储IP地址和接口名称。 将获取IP地址的逻辑封装到一个函数中,该函数遍历本机的所有网络接口并获取其IP

WinCE的C#程序中获取当前应用程序的路径

WinCE中获取当前路径的两种方法: string appPath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase); string appPath = System.IO.Path.GetDirectoryName(System.R

利用AT命令获取所在位置的小区号LAC和基站号ID,基站ID转换成经纬度

最近在做一个基站ID转换成经纬度的功能。     1.先发AT指令:AT+CREG=2     2.再发AT指令:AT+CREG?     获得返回值:     +CREG:     2,1,"A530","0161F10F",6 A530为LAC,0161F10F为基站ID 然后将获取的LAC,和基站ID,通