研究員Rafay Baloch昨天披露了漏洞的細(xì)節(jié),他曾在今年3月新加坡舉行的Black Hat Asia做過關(guān)于地址欄欺騙的演講。
漏洞原理
Baloch在個(gè)人網(wǎng)站中說,出現(xiàn)漏洞的主要原因是Chrome和Android版本的Firefox瀏覽器對(duì)某些Unicode字符的渲染不得當(dāng)。阿拉伯語和希伯來語中會(huì)有一些字符是會(huì)從右到左顯示的,比如“|”。當(dāng)包含這種Unicode字符的URL和IP地址合在一起時(shí),瀏覽器就會(huì)把URL從右到左顯示。
舉個(gè)例子,某個(gè)網(wǎng)址邏輯上的順序是“127.0.0.1/|/http://example.com/”,但是瀏覽器會(huì)在地址欄中把網(wǎng)址顯示成“http://example.com/|/127.0.0.1”。
經(jīng)過翻轉(zhuǎn)的網(wǎng)址IP地址部分其實(shí)是很容易隱藏的,尤其是在移動(dòng)設(shè)備上,只要用一個(gè)比較長的URL(google.com/fakepath/fakepath/fakepath/… /127.0.0.1)就行了。如果要想網(wǎng)址看起來更真實(shí)一點(diǎn),還可以弄個(gè)SSL證書。
漏洞重現(xiàn)
Chrome
(小編使用了PC端的Chrome訪問PoC網(wǎng)站,沒有成功,在手機(jī)端成功。)
1) 訪問鏈接http://182.176.65.7/%EF%B9%B0/http://google.com/test
2) 應(yīng)該能注意到,瀏覽器顯示的不是google的內(nèi)容,但是網(wǎng)址卻是http://google.com/test/182.176.65.7
Android版Firefox(CVE-2016-5267)
Firefox的漏洞與Chrome相似,不過它不需要IP地址觸發(fā)漏洞,只需要阿拉伯RTL字符:
http:// . /google.com/test/test/test
當(dāng)你點(diǎn)擊鏈接時(shí),訪問的是 . ,但地址欄卻指向google.com。
廠商修復(fù)
Mozilla稱,漏洞只存在于Android版本的Firefox瀏覽器,桌面版本不受影響,并且在8月2日的更新中已經(jīng)修復(fù)了漏洞?;饡?huì)也為此向Baloch獎(jiǎng)勵(lì)了1000美元。
而Google表示會(huì)在9月的Chrome更新中修復(fù)漏洞。
其他幾款瀏覽器也存在漏洞,但由于廠商尚未修復(fù)漏洞,因此作者還不能透露相關(guān)細(xì)節(jié)。
*參考來源:Threatpost&RafayHackingArticles,F(xiàn)B小編Sphinx編譯,轉(zhuǎn)載請(qǐng)注明來自FreeBuf.COM