您好,登錄后才能下訂單哦!
Linux內核SegmentSmack嚴重漏洞示例分析,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
在Linux內核處理特定TCP數據包的方式中發現了一個名為SegmentSmack的漏洞。遠程攻擊者可以利用這一缺陷通過TCP請求觸發耗時耗CPU的tcp_collapse_ofo_queue() 和tcp_prune_ofo_queue()系統調用,可能導致CPU跑滿。維持拒絕服務條件需要連續的雙向TCP會話到可達的開放端口,因此無法使用欺騙的IP地址執行攻擊。
在Linux內核處理特制TCP數據包的方式中發現了一個名為SegmentSmack的漏洞。遠程攻擊者可以利用這一缺陷觸發耗時大量計算的tcp_collapse_ofo_queue()和tcp_prune_ofo_queue()調用使得CPU耗盡。該漏洞無需傳入大量網絡流量就可以導致系統CPU耗盡從而造成Dos攻擊。在最壞的情況下,攻擊者可使小于2 kpps攻擊流量的對攻擊主機產生影響主機和停頓。
Juha-Matti Tilli發布的一封電子郵件消息報告了Linux內核中另一個與安全相關的問題。 CVE-2018-5390咨詢是一個新發布的安全公告,其中提供了有關Linux內核漏洞的詳細信息。該文檔顯示4.9+版本可能受特定服務條件的影響,這些條件可能導致DOS(拒絕服務)攻擊。問題的確切性質與用戶對行為的修改有關。可以強制內核為每個傳入的數據包調用兩個函數:
tcp_collapse_ofo_queue(),只要接收隊列的內存配額已滿,此例程就會釋放無序隊列,以便為到達的數據段騰出空間。這用于緩沖控制。
tcp_prune_ofo_queue(),這是網絡數據包的修剪功能。它在隊列操作期間使用。
每個傳入的數據包都可以修改為通過這兩個函數。這可能導致行為模式導致拒絕服務的可能性。攻擊者可以通過在正在進行的TCP網絡會話中發送修改的數據包來誘導此類情況。分析表明,維護此狀態需要通過目標計算機上的可訪問開放端口進行連續的雙向TCP會話。這意味著攻擊只能通過真實IP地址執行,不能使用欺騙地址。
遠程攻擊者能夠針對具有可用開放端口的系統觸發拒絕服務條件。
因為維持拒絕服務條件需要連續的雙向TCP會話到可達的開放端口,因此無法使用欺騙的IP地址執行攻擊。
如下圖使用4 TCP流進行攻擊的結果就可以使得4 CPU內核的完全飽和以及導致網絡數據包處理的延遲:
由于SegmentSmack攻擊基于Linux內核網絡堆棧中使用的算法,紅帽官方文檔指出對其產品具有中等新Linux內核版本產品都會受到影響:
· Red Hat Enterprise Linux 6
· Red Hat Enterprise Linux 7
· Red Hat Enterprise Linux 7 for Real Time
· Red Hat Enterprise Linux 7 for ARM64
· Red Hat Enterprise Linux 7 for Power
· Red Hat Enterprise Linux Atomic Host
Ubuntu官方指出受影響的版本有:
Ubuntu 12.04 ESM (Precise Pangolin)
Ubuntu 14.04 LTS (Trusty Tahr)
Ubuntu 16.04 LTS (Xenial Xerus)
Ubuntu 18.10 (Cosmic Cuttlefish)
其他廠商,請查詢對應廠商的漏洞說明。
目前還不知道除了固定內核之外沒有有效的解決方法/緩解措施。 linux內核團隊已經對該漏洞發布了代碼補丁的commit
在撰寫本文時,設備供應商尚未發布任何補丁。準備好后,將向最終用戶和設備所有者發布相應的公告和更新。可以使用補丁系列,它通過將cpu周期限制到某個限制來實現對問題的修復,最終使得錯誤非關鍵。在未來,開發人員可能會繼續進行進一步的修復,例如斷開連接或黑洞驗證的惡意流。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。