0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

内网渗透:获取Windows内Hash密码的方法

电子设计 来源:电子设计 作者:电子设计 2020-12-24 16:01 次阅读

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

Windows下安全认证机制

Windows下的安全认证机制总共有两种,一种是基于NTLM的认证方式,主要用在早期的Windows工作组环境中;另一种是基于Kerberos的认证方式,主要用在域环境中。

图1:NTLM认证流程图

这里主要对NTLM的认证流程做一下说明:

1、首先在客户端中输入username,password和domain,然后客户端会把密码进行Hash后的值先缓存到本地。

2、Client将username的明文发送给DC(域控)。

3、DC会生成一个16字节的随机数,也就是挑战码(Challenge),然后再传回给Client。

4、当Client收到挑战码以后,会先复制一份,然后和缓存中的密码Hash再一同混合Hash一次,混合后的值称为response,之后Client再将challenge,response以及username一并都传给server。

5、Server端在收到client传过来的这三个值以后会把它们都转发给DC。

6、当DC接到过来的这三个值的以后,会根据username到域控的账号数据库(ntds.dit)里面找到该username对应的hash,然后把这个hash拿出来和传过来的challenge值再混合hash。

7、将混合后的hash值跟传来的response进行比较,相同则认证成功,反之,则失败,当然,如果是本地登录,所有验证肯定也全部都直接在本地进行了。

在Windows2000以后,Windows机器都用NTLM算法在本地保存用户的密码,密码的NTLM哈希保存在%SystemRoot%System32configSAM文件中。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。

使用PwDump工具获取密码Hash

PwDump7可以在CMD下提取出系统中的用户的密码hash,使用管理员权限直接运行该工具即可:

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

审核编辑:符乾江
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • WINDOWS
    +关注

    关注

    3

    文章

    3524

    浏览量

    88398
  • 数据安全
    +关注

    关注

    2

    文章

    676

    浏览量

    29915
  • 内网
    +关注

    关注

    0

    文章

    37

    浏览量

    8975
收藏 人收藏

    评论

    相关推荐

    内网通过公网地址访问内网服务器的设置方法

    在一些场景下,内部网络中的服务器需要通过公网地址进行访问,尤其是在没有固定公网IP或需要在外部访问时。为了解决这一问题,可以使用以下几种方法实现内网穿透,方便地通过公网访问内网服务器。
    的头像 发表于 11-07 15:09 313次阅读

    常见的内网穿透工具对比

    国内的内网穿透工具有不少选择,适合不同的使用场景和需求。以下是一些比较常见的国内内网穿透工具:
    的头像 发表于 11-06 14:59 301次阅读

    如何通过内网IP安全访问云服务器?

    要通过内网IP安全访问云服务器,您需要考虑以下几个步骤: 1、获取内网IP地址:首先,您需要确定云服务器的内网IP地址。这通常可以在云服务提供商的管理控制台中找到。 2、配置安全组规则
    的头像 发表于 09-23 13:36 369次阅读

    远程桌面内网穿透是什么?有什么作用?

    远程桌面内网穿透指的是通过特定技术手段,将处于内网中的电脑或服务器,通过外部网络(互联网)进行访问。内网穿透的主要作用是解决在内网环境下,远程设备与外部互联网之间的连接问题,允许用户从
    的头像 发表于 09-13 08:10 320次阅读
    远程桌面<b class='flag-5'>内网</b>穿透是什么?有什么作用?

    锁相放大器参考信号的获取方法

    锁相放大器参考信号的获取方法主要依赖于对被测信号特性的了解以及实验的具体需求。以下是一些常用的获取参考信号的方法: 1. 已知信号源生成 直接生成 :如果已知被测信号的频率或波形,可以
    的头像 发表于 09-05 10:58 320次阅读

    内网穿透——windows系统中搭建私人影音平台

    Windows系统中搭建私人影音平台并实现内网穿透,可以让用户随时随地远程访问自己的影音资源。以下是详细的步骤和说明: 一、选择影音服务器软件 首先,需要选择一款合适的影音服务器软件。常见的影音
    的头像 发表于 07-25 11:08 320次阅读
    <b class='flag-5'>内网</b>穿透——<b class='flag-5'>windows</b>系统中搭建私人影音平台

    针对Windows系统和macOS系统的全局代理修改方法

    WINDOWS
    jf_62215197
    发布于 :2024年07月16日 07:30:54

    如何从esp32获取mac地址?

    如何从esp32获取mac地址,然后自动打印成标签贴在机身上呢 这玩意没有自动化的一套东西很麻烦啊
    发表于 06-14 07:50

    STM32F439的HASH模块DMA传输计算问题求解

    项目中需要使用439的的HASH模块计算文件的MD5值,使用的DMA方式,为了提高CPU效率,让其他任务在DMA传输数据、硬件计算MD5期间可以得到运行,DMA的数据来自FMC外扩的SDRAM
    发表于 04-19 06:42

    MySQL密码忘记了怎么办?MySQL密码快速重置方法步骤命令示例!

    MySQL密码忘记了怎么办?MySQL密码快速重置方法步骤命令示例! MySQL是一种常用的关系型数据库管理系统,如果你忘记了MySQL的密码,不必担心,可以通过一些简单的步骤来快速重
    的头像 发表于 01-12 16:06 719次阅读

    内网穿透工具FRP的快速入门

    在计算机网络中,内网穿透是一种通过公网建立安全通道,使得位于内网的计算机和服务可以被外部网络访问。对程序员而言,内网穿透可以帮助你干什么呢?
    的头像 发表于 01-02 11:47 619次阅读

    mysql密码忘了怎么重置

    mysql密码忘了怎么重置  MySQL是一种开源的关系型数据库管理系统,密码用于保护数据库的安全性和保密性。如果你忘记了MySQL的密码,可以通过以下几种方法进行重置。
    的头像 发表于 12-27 16:51 6299次阅读

    更改KUKA C 4 Windows系统的密码

    或者可以通过 WorkVisual 更改密码。如果在机器人控制系统上安装了 KUKA.NonAdmin,则只能通过 WorkVisual 更改该密码
    的头像 发表于 12-12 17:11 1056次阅读

    redis hash底层实现原理

    Redis是一个开源的内存数据库,使用键值对存储数据。其中,Redis中的数据结构之一就是哈希(Hash),它提供了一种将多个字段(Field)存储在一个键(Key)中的方法。那么Redis的哈希
    的头像 发表于 12-04 16:27 557次阅读

    忘记Console口密码的解决方法

    方法一:通过STelnet/Telnet登录设备修改Console口密码
    的头像 发表于 12-04 09:33 970次阅读
    忘记Console口<b class='flag-5'>密码</b>的解决<b class='flag-5'>方法</b>