基于Windows的攻擊可以繞過(guò)文件限制和網(wǎng)絡(luò)檢測(cè)
在2010年波士頓SOURCE大會(huì)上,安全研究人員表示,微軟Windows的向后兼容性使攻擊者能夠繞過(guò)文件限制或網(wǎng)絡(luò)安全防御(如入侵檢測(cè)系統(tǒng))。
核心安全技術(shù)公司的技術(shù)支持工程師Dan Crowley,介紹了幾種在Web服務(wù)器(Nginx、Cherokee、Mongoose和LightTPD)的Windows版本中繞過(guò)這些保護(hù)的方法。最明顯的是在Windows 中使用8.3別名。這些別名是兼容DOS的別名,它們?cè)赪indows創(chuàng)建一個(gè)文件時(shí)創(chuàng)建。這兩個(gè)文件名都可以被訪問(wèn),盡管它們不一樣。
核心安全技術(shù)公司在今年二月報(bào)告了8.3文件系統(tǒng)別名漏洞。
8.3別名是8個(gè)字符的文件名,還有3個(gè)字符的文件擴(kuò)展名。在Windows中,它們是文件名的前6個(gè)字符,后面是一個(gè)波形符、一個(gè)數(shù)字、一個(gè)點(diǎn)和文件擴(kuò)展名(如~1.txt)。在文件名中所有其他字符被Windows截?cái)?。Crowley說(shuō),這大大增加了暴力攻擊的效率,因?yàn)椴聹y(cè)文件名所需的時(shí)間和資源大大減少了。理論上,攻擊者可以通過(guò)別名來(lái)調(diào)用文件,查看源代碼,通過(guò)上傳惡意軟件操縱它。文件在下一次被合法調(diào)用時(shí),系統(tǒng)就擁有了它。
他補(bǔ)充說(shuō),他的所有測(cè)試都是在基于Web的平臺(tái)上完成的,但他表示,任何接受用戶輸入的應(yīng)用程序都容易受到這種攻擊。
Crowley說(shuō),“應(yīng)用程序進(jìn)行基于字符串的文件路徑分析,這樣做是為了決定如何處理文件、拒絕訪問(wèn)或確定惡意輸入。這些替代文件名,甚至重整文件名,可以繞過(guò)或破壞很多東西。操作系統(tǒng)與文件系統(tǒng)交互,而不是應(yīng)用程序。正因?yàn)槿绱?,它進(jìn)行基于字符串的分析,將分析傳到文件系統(tǒng),如果它認(rèn)為合法,就不需要文件系統(tǒng)確認(rèn)了?!?/P>
由IDS規(guī)則引起的問(wèn)題,例如,如果他們尋找example.php,exampl~1就不會(huì)被標(biāo)記。這樣攻擊者就能訪問(wèn)文件或發(fā)送遠(yuǎn)程代碼。
Crowley說(shuō),一個(gè)緩解方法是禁用8.3別名。
他說(shuō),理想情況下,最好的緩解方法是停止基于字符串的文件路徑分析。
【編輯推薦】