hash认证概念与hash破解方式(工具使用方式)

VSole2021-08-04 08:37:29

目录:

一:hash认证与破解

Hash的概念

一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入,通过散列算法,变换成固定长度的输 出,该输出就是散列值。

这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所 以不可能从散列值来唯一的确定输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。

常用的Hash算法

MD4:它是基于32位操作数的位操作来实现的。

MD5:比MD4更复杂,并且速度较之要慢一点,但更安全。

SHA-1及其他:对长度小于264的输入,产生160bit的散列值,抗穷举性更好

本地认证SAM文件

Windows的登陆密码是储存在系统本地的SAM文件中的,在登陆Windows的时候,系统会将用户输入的”密码”与 SAM文件中的”密码”进行对比,如果相同,则认证成功。

SAM文件是位于 %SystemRoot%\system32\config\ 目录下的,用于储存本地所有用户的凭证信息,但是这并不代 表着可以随意去查看系统密码。

LM Hash

LM hash是NTLM hash的前身,它本身是非常脆弱的,LM与NTLM协议的认证机制相同,但是加密算法不同。

目前大多数的Windows都采用NTLM协议认证,LM协议已经基本淘汰了。

 

LM Hash的规则:

用户的密码被限制为最多14个字符

将明文密码转换为大写

密码转换为16进制字符串,不足14字节将会用0补全

密码的16进制字符串被分成两个7byte部分。

分别将两组数据,用str_to_key()函数处理得到两组8字节数据

这两组8字节数据将做为DESKEY对魔术字符串”KGS!@#$%”进行标准DES加密

将加密后的这两组数据简单拼接,就得到了最后的LM Hash

NTLM Hash

Windows本身是不会存储明文密码的,在SAM文件中所储存的是密码的hash值,在登陆对比的时候,也是先将用户 的输入转换为hash值,才进行对比的。

目前在Windows中所使用的密码hash被称为NTLM hash,全称为:NT LAN Manager,它是一个由数字和字母组成 的32位的值,是经过hex、Unicode、MD4三层加密后得到的。

Windows Hash格式

Username:RID:Lmhash:NThash

本地认证完整流程

首先,用户注销、重启、锁屏后,操作系统会让  winlogon.exe 显示登录界面,让用户输入密码

之后将密码交给lsass.exe,这个进程中会保存一份明文密码,将明文密码加密成NTLM Hash,与SAM数据库比较认证。

注意:

Winlogon.exe 是Windows NT用户登陆程序,用于管理用户登录和退出

Lsass.exe 是windows系统的安全机制,它用于本地安全和登陆策略

二、Hash获取常用工具

要在system权限 下获取hash。如果是普通 用户权限,要提权后获取

Wce

Wce既可以直接获取明文,也可以获取Hash

1.上传wce.exe到目标机中

2.在命令执行处运行wce.exe,获取hash值

Gethashes

一般使用“GetHashes $Local”来获取系统的Hash密码值,该命令仅在system权限下才能执行成功。

QuarksPwDump

Quarks PwDump必须在Dos命令提示符下运行

1.使用cmd打开QuarksPwDump

2.输入命令:quarksDump.exe –dhl #获取本地hash

Pwdump

上传pwdump,使用pwdump获取administrator的hash

Mimikatz

mimikatz是一款轻量级的调试神器,功能非常强大,其中最常用的功 能就是抓取明文或Hash

上传mimikatz,使用mimikatz获取hash

命令:privilege::debug        sekurlsa::logonpasswords

三、Hash破解常用方法

本地破解:Ophcrack

1.设置彩虹表:

在Ophcrack软件主界面中单击“Table”,接着就会出来如图所示的Table Selection界面,在缺省状态下,所有表 都没有安装,通过该界面我们了解到一共有8个彩虹表,其中有三个是免费的。

例如在本例中选择“Xp free small”,然后单击“Install”按钮,系统会自动到Ophcrack软件的安装目录

※注意:

在Ophcrack软件中其彩虹表的上级目录名称必须 为“tables”,否则彩虹表安装不会成功。

彩虹表安装成功后,其条目会变成绿色

2. 加载sam文件:

单击“Load”按钮,如图所示,一共有5个选项,第一个主要用于对单个Hash的破解,第二个是对获取的Pwdump文件进行破解,第三个是对加密的sam文件进行破解,第四个和第五个主要用来审计或者破解本地和远程Hash密码

3. 查看HASH值:

选择一个Pwdump文件,如果pwdump系统的hash密码没有错误,则会在Ophcrack软件主界面中正确显示

如图,在主界面中分别显示“User”、“LM Hash”、“NT Hash”、“LM Pwd1 ”、“LM Pwd2”以及“NT pwd” 等信息。

4.破解Hash值:

单击“Crack”开始破解,很快就破解出来了密码

本地破解:SAMInside

一款图形界面工具,可以获取包括Windows 2008 Server以下操作系统的用户密码Hash值。

在线破解:https://www.objectif-securite.ch/en/ophcrack

将NTHash 粘贴进网站,点击go,破解出密码

四、明文密码获取

windows 将登录密码加密后存在内存中,这样只要我们找到对应的内存段,然后解密那块内存,就得到了明文密码。

已经知道 windows 的加密密码内存段是在lsass.exe的进程空间里,所以攻击者只要注入到进程空间,定位到那块内存,剩下的事就是逆向一个字符串加密算法的过程了

注意事项:

一定要在system权限下获取明文密码

版本问题:

当系统为win10或2012R2以上时,默认在内存缓存中禁止保存明文密码。如下图,密码字段显示为null

解决方法: 可以通过修改注册表的方式抓取明文,但需要用户重新登录后才能成功抓取。

修改注册表命令:reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\Wdigest /v UseLogonCredential /t REG_DWORD /d 1 /f

补丁问题:

在 KB2871997 之前, Mimikatz 可以直接抓取明文密码。安装 KB2871997 补丁后,系统默认禁用 Wdigest Auth , 内存(lsass进程)不再保存明文口令。

Wce

wce抓取明文密码命令:wce.exe -w

Getpass

直接运行Getpass.exe,即直接获取明文密码

Mimikatz

命令:

privilege::debug //提升权限

sekurlsa::logonpasswords //抓取密码

CS与MSF拿到shell,后命令获取


五、实验:Win2012获取hash、密码

实验说明

windows从win10开始,默认不会在 lsass.exe 里存储明文密码,可以在管理员权限下修改注册表,再迫使管 理员重新登录,获取明文密码

1. 连接目标机的webshell

2. 修改注册表

reg add hkey_local_machine\system\currentcontrolset\control\securityproviders\wdigest\ /v uselogoncredential

/t reg_dword /d 1 /f

3.锁屏或者注销已登录的账户,迫使用户重新登录

该实验,设置了系统自动登录,cmd下重启系统,账户重新登录

立即重启:shutdown /r /t 0

4.使用procdump获取内存中的密码信息,并将lsass.dmp下载到本地

procdump64.exe -accepteula -ma lsass.exe lsass.dmp

5.使用mimikatz读取密码信息

本地读取:mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" exit >> 1.txt

在目标机读取:需上传mimikatz到目标机

mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords full" exit >> log.txt

软件hash函数
本作品采用《CC 协议》,转载必须注明作者和本文链接
浅谈程序的数字签名
2022-08-17 08:31:54
发送方通过私钥加密后发送给接收方,接收方使用公钥解密,通过对比解密后的Hash函数值确定数据电文是否被篡改。android中的数字签名有2个主要作用:1、能定位消息确实是由发送方签名并发出来的,其他假冒不了发送方的签名。它是一个全文件的签名方案,它能够发现对 APP的受保护部分进行的所有更改,从而有助于加快验证速度并增强完整性保证。
1985 年Deutsch进一步阐述了量子计算机的基本概念,并证实了在某些方面,量子计算机相比经典计算机而言确实具有更强大的功能。除此之外,欧盟、加拿大、中国等组织、国家和地区在量子计算机领域的研究也做出积极响应并取得了一系列的研究成果。2001 年, 一 个 由 IBM 公司成功研发的 7qubit 的示例性量子计算机成功领跑了该领域的研究。
一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入,通过散列算法,变换成固定长度的输 出,该输出就是散列值。
ChaMd5病毒分析组发现一新型勒索软件AXLocker,该勒索软件不仅会加密数据文件索要赎金,还会窃取感染用户的Discord帐户。
写这个是因为考虑到在渗透过程中,对目标机器上的第三方软件的信息收集很大程度决定后续能不能横向移动,内网密码搜集的越多,横向渗透也就越方便,这里将列举常见的软件,远程控制,浏览器,常见数据库相关软件和系统的凭证获取方式。 而有时候因为环境特别严苛,在线解密的工具用不了的时候离线就显得特别重要,做个记录,也当了解一下各个软件之间不同的认证方法,可能有些许理解错误,看官们轻锤。
本次一共截获了两个和KingSqlZ组织有关的可疑样本。
思科发现,当暴露于互联网或不受信任的网络时,Cisco IOS XE 软件 (CVE-2023-20198) 的 Web 用户界面 (Web UI) 功能中的一个先前未知的漏洞会被主动利用。这会影响运行 Cisco IOS XE 软件且启用了 HTTP 或 HTTPS 服务器功能的物理和虚拟设备。
例如,木马病毒、勒索程序、系统漏洞等安全威胁给人们带来了巨大的经济损失,引发隐私泄露等安全问题。HMM-CBOW行为模型是王焱济在 2019 年提出的一种改进型序列行为模型。图 3 HMM-CBOW 行为模型HMM-CBOW 行为模型主要对软件运行过程中的系统调用序列、参数及返回值等进行细粒度的刻画,将序列进一步划分为方便存储、处理与查找的若干不同长度的短序列。
第1步:检查系统语言 与许多恶意软件类似,BAZARLOADER会手动检查系统的语言以避免在其母国开展恶意攻击。如果语言标识符大于0x43或小于0x18,则将其视为有效,这样BAZARLOADER才会继续执行。如果这个互斥对象已经存在,恶意软件也会自行终止。线程首先尝试获取临界区对象的所有权并检查是否启用了创建标志。
VSole
网络安全专家