您好,登錄后才能下訂單哦!
本篇文章為大家展示了通過SSL加密通信進行橫向滲透的LAME技術怎么用,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
這里主要討論一項用于紅隊的被稱之為“LAME”的新橫向滲透技術及其緩解措施。“LAME”技術就是利用受信任的SSL證書,在內部網絡中建立加密通信信道的一項技術。在今年的8月份,Deloitte Greece道德黑客團隊成員vangelos Mourikis和Nikos Karouzos,在都柏林舉辦的實踐社區(CoP)峰會上,確定并展示了該項技術。
在滲透測試或紅藍對抗期間,我們都會盡一切努力獲得對目標內網的遠程訪問,并在環境范圍內提升權限,建立持久通信信道持續監控,并不斷擴大戰果直至實現方案目標。
為了建立一個隱蔽持久的通信信道,紅隊往往會采用許多橫向滲透技術。而通常他們的做法是建立基于TCP/IP通信協議的信道(如DNS,SMB和HTTP),模擬預期的網絡流量和用戶行為,從而保持不被發現。但這些協議都使用未加密的通信,因此我們可以通過一些網絡監控工具,NIDS/HIDS等來輕松識別這些流量。另外,就算你使用了帶有自簽名證書的加密通道(例如HTTPS),也同樣會觸發入侵檢測/監控系統的警報,因為它是中間人(MiTM)攻擊的一種非常常見的攻擊媒介。
更新后的殺毒軟件可以輕松識別這些技術,并使用了最新的啟發式引擎,它們能夠關聯和阻止這些類型的通信信道。
圖1 - 未加密的通信信道(HTTP):
圖2 - 嘗試使用自簽名SSL證書,執行payload會產生許多錯誤消息,并為入侵檢測/監視系統留下大量痕跡:
那么,如果我們可以使用受信任的SSL證書在內網中進行橫向滲透結果又會如何呢?
域實現和規范 RFC 1035(1987年11月)指出“主文件中A行的RDATA部分是一個Internet地址,表示為四個十進制數字用點分隔,且沒有任何嵌入空格(例如,“10.2.0.52" 或 "192.0.5.6")。”
私有IP地址分配稍后介紹(RFC 1918 - 私有Internet地址分配,1996年2月),未指定與公共DNS記錄分配給私有IP地址有關的任何安全考慮事項。
雖然許多出版物提出了不同建議,但仍然可以將公共域名的A記錄分配給私有(內部)IP地址。
證書頒發機構(RFC 6125)執行的SSL證書的驗證和簽名,在很大程度上依賴于對相應DNS名稱的檢查。為了提高效率,簽名證書不會被綁定到相應的IP地址上,因此底層架構中的更改并不會影響證書的有效性。所以,我們可以為解析到私有(內部)IP地址的公共DNS名稱頒發受信任的SSL證書。
出于概念驗證(PoC)的目的,我們使用了像Cloudflare和LetsEncrypt這類的免費服務。
為了執行LAME技術,我們還需要進行以下操作:
使用LetsEncrypt的DNS驗證方法,為internal.dotelite.gr頒發SSL證書。
使用CloudFlare將DNS A記錄internal.dotelite.gr分配給內部IP地址:192.168.72.141。
圖3 - 公共DNS名稱的受信任SSL證書解析到內部IP地址上:
圖4 - 以下是“LAME”技術的執行流程圖:
紅隊已在IP地址192.168.72.141上,部署了一個命令和控制(CNC)服務器,并使用簽名的SSL證書為internal.dotelite.gr配置了一個HTTPS服務器。
在受害者機器(192.168.72.140)上獲取遠程代碼執行后,紅隊建立了一個加密的通信信道。使用PowerShell oneliner,受害者將經歷以下過程并最終連接到internal.dotelite.gr:
1.受害者在內部DNS服務器上,請求internal.dotelite.gr的DNS記錄。
2.內部DNS服務器將DNS記錄請求轉發到Internet上的根DNS服務器。
3.公共DNS服務器(例如CloudFlare)使用指向內部IP 192.168.72.141的DNS記錄進行響應。
4.內部DNS服務器接收上述DNS記錄。
5.DNS記錄存儲在內部DNS服務器的緩存中,并且可以在內網中提供多個類似的請求。
6.DNS記錄被轉發給受害者。
7.受害者將使用受信任的SSL證書與攻擊者的內部IP 192.168.72.141建立加密通信信道。
圖5 - PowerShell oneliner“LAME”技術(Step 0):
圖6 - 將internal.dotelite.gr子域解析到IP 192.168.72.141的DNS解析流量(Steps 1-6):
圖7 - TLS通信(Step 7):
圖8 - 內網中功能齊全的加密通信信道(Step 7):
圖9 - 上述命令執行的網絡流量(Step 7):
獲得解析為內部IP地址的公共DNS名稱的受信任SSL證書并非不可能。一旦獲取,我們則可以將其用于在內部網絡中建立加密通信信道。這不僅可以讓我們的通信信道更加隱蔽,還可以幫助我們躲過入侵檢測/監控系統。
此外,LAME技術還可用于APT中。結合端口轉發和代理,紅隊可以在內部網絡獲得初始立足點后在目標環境中創建多個隱蔽樞紐點,并通過Internet上的外部CNC服務器進行控制。
由于通信的加密性和交換SSL證書的有效性,導致這種橫向滲透技術難以被檢測發現。而阻止內部網絡中主機之間的HTTPS流量,則可能會導致合法服務的可用性問題,因此似乎并不是一個可行的解決方案。我們的建議是在內部網絡中強制使用集中式DNS服務器,并為所有請求的DNS條目創建特定的監控用例。分析已解析的DNS記錄,并進一步調查分配給內部IP地址的潛在可疑條目。此外,我們建議增強主機級別的監控功能,以便及時的識別可能具有相同結果的替代攻擊路徑(例如,監控本地“etc/hosts”文件的變化)。
除了上述建議之外,你還可以在內部集中式DNS服務器中啟用反重綁定保護(例如--stop-dns-rebind ,dnsmasq中的--rebind-domain-ok選項)。
上述內容就是通過SSL加密通信進行橫向滲透的LAME技術怎么用,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。