瀏覽器XSS防身術比武大會
在噗浪上看到有人抓到了總統府網站的XSS漏洞,在新聞稿網頁嵌入了惡搞的奇笨呆兒脫衣舞男影片。
無意發現,這個攻擊手法在IE8上會被擋下來! 之前微軟一再吹噓強調IE8相較於其他瀏覽器來得安全,索性就用這個案例讓五大瀏覽器比劃一下,看看IE8, Firefox, Chrome, Safari, Opera的XSS防身術功力高低:

Chrome腹部挨了一拳!

Firefox頭上被敲了一記悶棍!

Safari背上中了一掌!

Opera一個箭步,巧妙閃過!

IE8秀了一記後空翻,躲開後還三聲狂笑: "哈哈哈,打不到! 打不到!" (Internet Explorer has modified this page to help prevent cross-site scripting…)
實驗證明,Opera與IE8都在此案例中,均具有XSS防護效果,但不同的是Opera攔截後悶不吭聲,而IE8還多了一道資安警示。(我個人欣賞後者,但一般使用者未必領情)
在此宣佈,本次比武,IE8與Opera獲勝!
【題外碎碎唸】
總統府的網站用的是Linux+Apache+PHP平台,繼上回出現治國週記檔名被猜到而讓預錄檔案曝光後,這次的XSS漏洞算是第二記了! 常聽到有人說Windows平台比較容易被攻擊的論調,但我個人以為,看似相同的網站,開發者的經驗與素質左右了網站的安全防護強度,與用什麼平台、語言關係並不大。然而,網站防護力高低並不容易被明確衡量,往往只有因網站樹大招風被駭客高人盯上,一輪猛攻下問題才會爆發。
同一個網站專案,你不難找到號稱五萬包生子的兼職學生、也會有開口要價100萬的SI廠商,但客戶多半只願意花錢在看得到的地方,無法理解兩種網頁都是能選能點能翻頁,為什麼要為了"穩定性、系統效能、可維護性、安全性"多付數倍的錢? 系統品質與價值難以量化,導致專案市場價格混亂,最後苦了資深開發人員,說破了嘴也很難突顯自己的額外價值(說白一點,就是程式寫到老,想仗著經驗足牌子老多掙著錢都很難)。
程式老鳥們,大家自求多福吧!
【延伸閱讀】ASP.NET防駭指南、你的網站在裸奔嗎?、游擊式的SQL Injection攻擊