PORTSWIGGER:2018年十大Web攻擊技術盤點

導語:在彙總59項令人印象深刻的技術提名之後,PortSwigger社區投票選出了15名決賽選手,並由我和著名安全研究者Nicolas Grégoire、Soroush Dalili和Filedescriptor共同選出,最終得到了10種最具創新性的技術。

前言

在彙總59項令人印象深刻的技術提名之後,PortSwigger社區投票選出了15名決賽選手,並由我和著名安全研究者Nicolas Grégoire、Soroush Dalili和Filedescriptor共同選出,最終得到了10種最具創新性的技術,我們認為這些技術可以經受住時間的考驗,並能夠激發攻擊者開發新的攻擊方式。

從第10名開始,我們將以倒敘的方式介紹今年的十大攻擊技術。

第10名:XS-Searching Google的Bug追蹤器並找到易受攻擊的源代碼

在這篇由Luan Herrera撰寫的博客文章的一開始,我們以為他描述的就是一個簡單的漏洞,直到他創新性地使用瀏覽器緩存計時技術(Browser Cache Timing)來消除眾所周知的不可靠技術造成的網絡延遲,這樣一來就使得這種漏洞利用方法變得非常實用。我們認為,我們可以期待在以後看到更多的XS-Search漏洞。

第9名:通過公式注入(CSV)實現數據滲透

在這篇博客文章中,Ajay和Balaji討論瞭如何從Google Sheets和LibreOffice中的電子表格挖掘數據的技術。儘管它並沒有其他技術令人耳目一新的感覺,但無疑是非常實用的、易於應用的技術。對於希望快速證明公式注入漏洞的影響性的研究者來說,這一利用方式是非常寶貴的。

如果大家希望瞭解惡意電子表格與Web安全性的關係,請查看逗號分隔漏洞。值得一提的是,2018年我們還看到了第一個有記錄的服務器端公式注入漏洞利用。

第8名:Prepare() – 在WordPress中引入的新漏洞利用技術

我們可以將WordPress比作一個複雜的野獸,對WordPress進行漏洞利用已經逐步演變成為一個獨立的學科。在這份演示文稿中,Robin Peraglie深入研究了在WordPress中濫用Double Prepared Statement的方式,並在Slavco Mihajloski先前針對PHP反序列化的研究基礎上再進行了深入的研究。

第7名:藉助本地DTD文件實現XXE漏洞利用

針對XXE盲注的嘗試,通常依賴於加載外部的、由攻擊者託管的文件,因此有時易受攻擊服務器的防火牆會對出站流量進行阻止。在Nicolas發表的《如何在知名領域實現技術創新》的文章中,Arseniy Sharoglazov分享了一種創造性技術,通過使用本地文件來避免產生防火牆的問題。

雖然僅限於某些XML解析器和配置,但當其工作時,這種技術很容易使DoS和完整服務器攻陷過程之間存在一定的差異。然而,這篇文章還引發了後續的討論,並體現出能夠對其進行更加靈活的改進。

第6名:新型PHP反序列化漏洞

例如,file_exists()這樣看上去無害的文件操作可能會被濫用,使用PHP的phar://流包裝器來觸發反序列化並獲得遠程代碼執行。最開始,這個漏洞在一些安全研究圈子中傳播了一段時間,但Sam Thomas的白皮書和演示過程最終將其公之於眾。安全研究人員在實際場景中進行了大量嘗試和研究,最終發現包括WordPress在內的眾多漏洞利用案例。

第5名:“現代”網絡技術攻擊研究

Frans Rosen分享了一些有質量的研究,表明攻擊者可以濫用HTML5 AppCache來實現一些精彩的漏洞利用,無論應用程序緩存是否被棄用。該研究者還討論了利用客戶端競態條件實現的一些有趣的postMessage攻擊。

第4名:NodeJS應用程序中的原型汙染攻擊

能看到一個不影響PHP的特定語言漏洞,感覺會非常好,而NorthSec的Olivier Arteau提出的這項研究就是其中之一。在研究中,詳細介紹了一種通過使用以前僅應用於客戶端應用程序的基於__proto__的攻擊來在NodeJS應用程序上實現遠程代碼執行的新技術。

我們推測,可以通過在Backslash Powered Scanner中添加__proto__作為“魔術詞”來實現對這一漏洞的掃描,但需要注意,這一過程可能會半永久的攻陷易受攻擊的網站。

第3名:超過XSS – Edge Side Include注入

Louis Dion-Marcil持續嘗試將傳統的網絡技術作為漏洞利用載體。他們發現,許多流行的反向代理有時可以讓黑客濫用Edge Side Includes,從而為他們提供XSS(包括SSRF)的超級能力。在這一研究中,他們演示了許多具有高影響力的漏洞利用場景,並通過在JSON響應中啟用HTML來證明這不僅僅是一種XSS提升技術。

第2名:可利用的網絡緩存投毒 – 重新定義“不可利用”一詞

James Kettle的這項研究展示了藉助模糊的HTTP標頭,使用惡意內容對Web緩存實現投毒的技術。我們認為這是對一箇舊漏洞利用方式進行了優秀而廣泛的新型研究,不僅原創性較高,而且漏洞利用效果良好,採用了非常明確的方法論,利用過程簡潔而美觀。我強烈建議各位讀者閱讀這一漏洞利用方法。

第1名:打破解析器邏輯 – 繞過路徑規範化並利用0 day

Orange Tsai發現了一個攻擊面,此前很多人錯誤地認為這一攻擊面沒有利用的希望,並且已經放棄。在該研究者發表的演示文稿中,展示了路徑驗證過程中的微小缺陷使如何被一步步利用,最終產生嚴重的後果。我們非常認可這項研究的實用性、原始影響、廣泛性、影響框架、獨立的Web服務器和反向代理。

Orange Tsai所研究的技術已經連續兩年佔據榜首,我們也將在2019年對他更多的研究成果保持密切關注。

總結

在今年,由於擁有大量的提名,導致進行了一場特別殘酷的社區投票。許多非常可觀的研究成果都未能入選候選名單。因此,如果大家不滿足於瞭解TOP 10,可以閱讀今年完整的提名名單,也可以閱讀去年的TOP 10。

在明年,我們將嘗試對提名進行稍微嚴格的過濾,來使社區投票階段變得更加流暢。特別是,我們會拒絕以非原創方式應用已知技術的漏洞提交。我們還將研究改進用戶界面,並允許在投票期間發表評論,以便大家可以討論為什麼選擇了某些技術的背後原因。

明年的投票將在2020年1月啟動,像往常一樣,我們已經開放提名。最後,我要感謝社區中的每個人,感謝大家的研究、提名、投票和耐心等待。


分享到:


相關文章: