首页 > 其他分享 >【域渗透】 域内密码喷洒详解

【域渗透】 域内密码喷洒详解

时间:2024-12-07 21:10:50浏览次数:4  
标签:用户名 渗透 REQ 用户 密码 详解 喷洒 日志

简介

域内密码喷洒(Passwoerd Spraying)一般和域内用户名枚举一起使用

在Kerberos协议认证的AS-REQ阶段,在密码正确和密码错误两种情况下,AS-REP的返回包不一样。所以可以利用这一点对域内用户名进行密码喷洒攻击。如果目标域设置了用户锁定策略,可以提高爆破成功率

域内密码喷洒工具

Kerbrute

kerbrute是一款使用Go语言编写的域内用户名枚举和密码喷洒工具,域内用户名枚举命令如下
攻击命令,指定攻击方式 指定域控 指定域名 指定用户字典 指定密码,可明文自动转换Hash

如下图所示

如果没有密码锁定策略,可以针对某个用户进行爆破

pyKerbrute

在密码喷洒模式下,可以使用明文密码或密码Hash。密码喷洒命令如下,域内开放端口389LDAP服务端口,kerberos88端口

使用mimkatz获取到Hash:f1d00e96169019e87a5846e3812ee536

使用Hash进行攻击

DomainPasswordSpray.ps1

默认该脚本是利用LDAP从域中导出用户列表,去除锁定的用户

Import-Module xxx.ps1
Invoke-DomainPasswordSpray -Password p@ss1234

域内密码喷洒抓包分析

我们针对user.txt字典中如下用户名使用pyKerbrut工具进行密码喷洒攻击
admin01是不存在用户、用户wangwu密码不为p@ss1234、用户test密码为p@ss1234

在密码喷洒攻击的同时,使用Wireshark抓包分析Kerberos流量,数据包均为AS步骤包

admin01用户AS-REQ包

admin01用户AS-REP包

wangwu用户AS-REQ包

wangwu用户ASREP包报错为密码不对

test用户AS-REQ包

test用户AS-REP包,认证成功包

域内密码喷洒攻击防御

由于域内密码喷洒是通过发送大量的AS-REQ包,根据返回包的内容判断密码是否正确,因此可以通过以下方法进行检测

1.流量层面:可以通过检测同一IP在短时间内发送是否发送了大量的AS-REQ包来判断。如果同一个IP在短时间内发送大量的AS-REQ包(如1min内大于30个AS-REQ包)则可以判断为异常

2.日志层面:当口令爆破成功时,会产生windows日志为事件ID4768日志且结果代码为0x0的审核成功的kerberos身份验证服务事件日志。而当口令爆破失败时,默认情况下并不记录任何日志,因此日志层面不太好检测

针对域密码喷洒攻击,可以要求员工设置强口令域密码,这对于域密码喷洒攻击有很好的防御作用

注意:默认情况下,windows系统并不会记录用户名正确但密码错误发起的AS-REQ包的日志。如果想要开启此记录,需要在组策略中配置审核策略和高级策略。日志记录还和通信KDC有关,如果域中存在多个域控,则在不同的域控上记录日志不相同,并不是每个KDC上都有记录所有日志。

原创 起凡安全

标签:用户名,渗透,REQ,用户,密码,详解,喷洒,日志
From: https://www.cnblogs.com/o-O-oO/p/18589633

相关文章

  • 【域渗透】域用户枚举详解
    简介域内用户名枚举可以在没有域内有效凭据的情况下,枚举出来域内存在的用户名,并对其进行密码喷洒攻击,以此获得域内的有效凭据在Kerberos协议认证的AS-REQ阶段,请求包cname对应的值是用户名,当用户状态分别为用户存在且启用、用户存在但禁用、用户不存在时,AS-REP包各不相同,可以利用......
  • 【springboot开发】Spring Boot 3 中的日志框架详解(含源码分析)
    一、引言二、spring-boot-starter-logging介绍四、日志框架加载源码分析五、结论一、引言SpringBoot3在日志处理方面提供了一套灵活且强大的解决方案。默认情况下,SpringBoot3使用SLF4J(SimpleLoggingFacadeforJava)作为日志门面,而Logback作为日志的实现框架。SLF4......
  • 详解LeetCode地下城游戏(动态规划)——区分两种状态表示形式
    地下城游戏题目链接:174.地下城游戏状态表示:按照以往题的表示,dp[i][j]表示:从起点(0,0)位置到达(i,j)位置时,所需的最小初始健康值。但是如果这么去表示,不仅要考虑到达(i,j)位置的最小初始健康值,由于魔法球的存在,还需要考虑到达(i,j)位置时的健康值,因为魔法球会对算后续位置的最小初始......
  • Java多线程与线程池技术详解(四)
    接受失败:“失败是什么?没有什么,只是更走近成功一步;成功是什么?就是走过了所有通向失败的路,只剩下一条路,那就是成功的路。”这句话很好地诠释了如何看待失败的问题,即每一次跌倒都是通往胜利道路上不可或缺的一部分。创造机会:“不要等待机会,而要创造机会。”这句话鼓励人们主动出......
  • .NET线程池技术详解与优化策略:提升高并发应用性能的关键
    在现代应用程序中,线程池是管理和调度线程的一种重要技术。它通过提供一个可重用的线程集合,避免了频繁创建和销毁线程的开销,从而提升了系统的性能和响应能力。.NET平台的线程池是一个高度优化的资源管理机制,它支持高并发应用的开发,尤其是在Web应用和服务中,广泛用于后台任务处理......
  • Windows环境下,.lib导入库 详解
    在Windows平台上,.lib 文件可以是静态库或动态链接库(DLL)的导入库。这两种类型的 .lib 文件虽然具有相同的扩展名,但它们的用途和工作方式有所不同。静态库 (.lib)静态库是一种包含一组预编译的函数、变量和数据的库,这些内容在编译时直接整合到最终的可执行文件(EXE)或其他库中。......
  • TCP/IP协议详解(小白)
    TCP/IP协议详解TCP/IP协议包含了一系列的协议,也叫TCP/IP协议族(TCP/IPProtocolSuite,或TCP/IPProtocols),简称TCP/IP。TCP/IP协议族提供了点对点的连结机制,并且将传输数据帧的封装、寻址、传输、路由以及接收方式,都予以标准化。说明:本文会以pdf格式持续更新,更多最新尼恩3高pd......
  • 域渗透提权:HTB--Administrator
    文章目录靶机信息域环境初步信息收集与权限验证FTP登录尝试SMB枚举尝试WinRM登录olivia域用户枚举获取Michael权限BloodHound提取域信息GenericAll获取Benjamin权限ForceChangePasswordftp登录benjamin获取Emily权限pwsafe+hashcat获取Ethan权限获取管理员(Admin......
  • DALL·E 2模型及其论文详解
    详细介绍DALL·E2的模型架构和训练过程,详细解读其论文《HierarchicalText-ConditionalImageGenerationwithCLIPLatents》。......
  • 【0x01】HCI_Inquiry_Complete事件详解
    目录一、事件概述二、事件格式及参数2.1.HCI_Inquiry_Complete事件格式2.2.参数三、HCI_Inquiry_Complete事件触发机制3.1.基于查询命令完成的触发3.2.受查询环境和设备状态影响的触发3.3.与蓝牙协议栈内部逻辑相关的触发四、事件处理流程4.1.事件接收阶段4.2......