強化資安防禦,不只是看防守,也要懂得掌握最新攻擊趨勢,網站安全也是如此。一方面可參考OWASP Top 10揭露常見的網站應用程式弱點,幫助軟體開發安全,而另一方面,每年也有無數的安全研究人員,分享了各自的發現,不管是攻擊技術的改進、實證研究,或是全新的技術。

只是這方面的資訊量龐大且零散,儘管有些人已經在大型資訊安全會議上分享,但也有不少人的成果可能被忽略了。

在2018下半年恢復舉行的10大網站駭客技法活動(Top 10 Web Hacking Techniques),已經選出2017年度重要研究成果,今年繼續由網站安全公司PortSwigger舉辦,以選出最新2018年度的精華,讓關注網站安全議題的研究人員,可以一網打盡每年創新且重要的各式攻擊技巧發現,幾乎被視為研究人員的知識庫之一。

最近,2018年度網站攻擊技術的前十名,已經正式公布,共有59項提名,歷經兩個月的社群投票活動,產生去年最值得關注的新研究。這項活動不僅是讓滲透測試的安全人員,可以從中獲得啟發,而網站安全人員,也能關注到最新的攻擊趨勢。

從59項提名脫穎而出,臺資安專家實力再獲國際肯定

值得注意的是,獲得2017年度第一的網站攻擊技術,是由臺灣的安全研究人員Orange Tsai(蔡政達)提出,更難得的是,他在2018年新的成果──「打破解析器邏輯,繞過路徑正規化並發現零時差漏洞」,再次獲得全球網站安全研究人員的青睞與肯定,達成二連霸。

關於這項活動的發起,其實已超過10年,但在2015年後一度停止舉辦。直到去年7月,由PortSwigger首席研究員James Kettle重新發起。為此,他將每年向社群提出呼籲,希望結合眾人之力,找出每年具有價值的新研究,並透過評選機制提煉出最好部分,供未來的安全研究人員閱讀,並激發出更多創新想法。

在2018年結束後,這項活動緊接著在今年1月1日啟動,在社群上接受提名,一共選出了59項。接著,在1月21日透過社群投票,產生前15名的候選名單,並於2月11日再由專家小組投票選出前10名。

在2月27日,PortSwigger網站上公布了結果。對此,James Kettle也特別說明,他說,這次列為第一的網站攻擊技法,不僅開啟了全新的攻擊面向,並有著相當廣泛的影響,因此能在59項提名中,獲得眾多社群研究人員的肯定,成為2018年度最佳技術。

而這項獲選年度第一的提名項目,就是由Orange Tsai所發表的「Breaking Parser Logic! Take Your Path Normalization Off and Pop 0days Out」。這是他之前在2018年度的全球駭客社群大會──Black Hat USA與DEF CON大會,所分享的成果。這樣的結果,不僅是受到社群重視,也讓臺灣的資安研究人員,可以持續在國際揚名。

關於Orange Tsai,過去他曾積極參與漏洞獎勵計畫,幫助企業尋找漏洞,也參與過全球網路攻防競賽,並擔任臺灣HITCON戰隊隊長,現在,他任職於資安公司戴夫寇爾(DEVCORE)顧問。

對於這次票選活動,他表示,自己這次其實忘了投票,不過,從評選這個Top 10的主要用意而言,就是要選出新的攻擊手法、新的攻擊面,而他這次的發現,能夠再次受到資安社群肯定,主要也是因為突顯出架構層面上的問題,並發現了新的攻擊面。

而且,該項攻擊的概念並不只是理論可行,也是能夠真的被廣泛應用到實際的攻擊,成為駭客新的攻擊手法。換言之,也意謂著這種架構層面的問題,將成為網站安全需注意的新面向。

網頁架構越複雜的今日,隱含的架構層面問題成新焦點

關於Orange Tsai此次提出的全新攻擊面向,首先是在處理路徑正規化方面,多數人認為,這是一個已經被解決的問題,但他認為,隨著軟體規模的擴增,以及架構的交替,其實也將會產生瑕疵。也就是說,這樣的問題可能存在多年,但長期被低估或忽視。

因此,他便著手對現有的軟體應用尋找弱點,以證明此類瑕疵的存在,並提醒大家重視。結果,他在基於Java語言的Spring Framework,以及基於Ruby語言的Ruby on Rails,還有Nginx網頁伺服器上,便找到存在類似的漏洞,而可以發動攻擊。也就是說,在此攻擊方法之下,他在上述熱門程式語言編寫的Web框架中,找出許多零時差漏洞。

第二個重點在於,此項全新的攻擊面,還將影響到網站後端是Java程式語言的反向代理(Reverse Proxy)架構。而這也意謂著,採用此架構的大型企業、政府網站或是銀行,需要特別注意。

另外,由於之前他所提出的「SSRF的新時代」,已經提到一個概念是「不一致」的錯誤,與這次有何不同?他也進一步解釋,主要是攻擊方式不一樣,但「不一致的」概念一樣,先前他是將此概念放在SSRF的保護,以及URL解析器上,這次他則是把這個概念,放到多層次的網頁架構上,因此帶來的影響層面,比之前更廣。

他並指出,現今的網頁架構越來越複雜,很多時候,不能只確保某個套件或軟體無漏洞。以這次的攻擊手法來看,在多層次的架構下,A層看起來沒問題,B層看起來也沒問題,但如果將兩者搭配在一起,就產生了問題。

此外,他也用Nginx與Tomcat對於同樣網址的解析,來舉例說明這樣的概念。例如一端的Nginx認為`/..;/`是正常路徑,但另一端的Tomcat則認為`/..;/`是前一層目錄,這其中的不一致,就能導致相關安全檢查被繞過,而被存取到原先不能存取的內部應用。

從整體趨勢來看,Orange Tsai也強調,雖然現在許多人注重網頁上的安全,導致以往常見的 SQL Injection ,或是 XSS 的漏洞問題,現在越來越難見到,但在網頁架構日益複雜的今日,這種架構層次上的問題應該會變得常見。

他並表示,在這幾年的Black Hat大會上,其實也有相關研究,例如2017年的「Web Cache Deception Attack」,以及2018年的「Practical Web Cache Poisoning: Redefining 'Unexploitable'」,因此,這也可以看出,對於這種多層次架構下所會產生的問題,已經有越來越多人在關注。

2018年度十大網站攻擊技術手法

Top 10 Web Hacking Techniques of 2018
1. Breaking Parser Logic: Take Your Path Normalization off and Pop 0days Out! – Orange Tsai
2. Practical Web Cache Poisoning: Redefining 'Unexploitable' - James Kettle
3. Beyond XSS: Edge Side Include Injection - Louis Dion-Marcil
4. Prototype pollution attacks in NodeJS applications - Olivier Arteau
5. Attacking 'Modern' Web Technologies - Frans Rosen
6. It's A PHP Unserialization Vulnerability Jim But Not As We Know It -  Sam Thomas
7. Exploiting XXE with local DTD files - Arseniy Sharoglazov
8. Prepare(): Introducing novel Exploitation Techniques in WordPress -  Robin Peraglie
9. Data Exfiltration via Formula Injection – Ajay、Balaji
10. XS-Searching Google's bug tracker to find out vulnerable source code - Luan Herrera

資料來源:PortSwigger,iThome整理,2019年3月


Advertisement

更多 iThome相關內容