張玉清 賈 巖 雷柯楠 呂少卿 樂洪舟
1(綜合業(yè)務(wù)網(wǎng)理論及關(guān)鍵技術(shù)國家重點(diǎn)實(shí)驗(yàn)室(西安電子科技大學(xué)) 西安 710071)2(中國科學(xué)院大學(xué)國家計(jì)算機(jī)網(wǎng)絡(luò)入侵防范中心 北京 101408)3(陜西省信息通信網(wǎng)絡(luò)及安全重點(diǎn)實(shí)驗(yàn)室(西安郵電大學(xué)) 西安 710121) (zhangyq@nipc.org.cn)
?
HTML5新特性安全研究綜述
張玉清1,2賈 巖1雷柯楠1呂少卿3樂洪舟1
1(綜合業(yè)務(wù)網(wǎng)理論及關(guān)鍵技術(shù)國家重點(diǎn)實(shí)驗(yàn)室(西安電子科技大學(xué)) 西安 710071)2(中國科學(xué)院大學(xué)國家計(jì)算機(jī)網(wǎng)絡(luò)入侵防范中心 北京 101408)3(陜西省信息通信網(wǎng)絡(luò)及安全重點(diǎn)實(shí)驗(yàn)室(西安郵電大學(xué)) 西安 710121) (zhangyq@nipc.org.cn)
HTML5是構(gòu)建Web應(yīng)用的最新標(biāo)準(zhǔn),它引入許多新特性來賦予瀏覽器豐富的功能,但因此也引入了新的安全問題.HTML5安全問題實(shí)際由各個新特性的安全問題組成.根據(jù)功能差異,對HTML5中的標(biāo)簽與表單、通信功能、離線應(yīng)用與存儲、多媒體、性能與表現(xiàn)、設(shè)備訪問等新特性的安全性進(jìn)行了詳盡的分析、總結(jié)和討論,指出其蘊(yùn)含的安全問題及可能的防范方法.然后對現(xiàn)有國內(nèi)外研究工作進(jìn)行了總結(jié),進(jìn)一步將HTML5安全問題歸納為3類:傳統(tǒng)威脅延伸、惡意利用、使用不當(dāng),為進(jìn)一步研究提供了思路.最后,指出了HTML5安全研究未來有價(jià)值的4個方向:新特性安全性、惡意利用檢測、跨平臺安全性和新安全應(yīng)用形式.
Web安全;HTML5;綜述;postMessage;WebSocket;AppCache;WebStorage
隨著互聯(lián)網(wǎng)的飛速發(fā)展,Web已經(jīng)融入生活的方方面面,我們幾乎每天都會使用Web處理各種事務(wù),如銀行業(yè)務(wù)、網(wǎng)上購物、瀏覽新聞、電子郵件、社交網(wǎng)絡(luò)等等.為推動Web的標(biāo)準(zhǔn)化及滿足應(yīng)用日益豐富的要求,2007年萬維網(wǎng)聯(lián)盟W3C(World Wide Web Consortium)立項(xiàng)HTML5,并于2014年10月完成標(biāo)準(zhǔn)化工作[1].它包含了一系列的HTML語義標(biāo)簽、JavaScript API、CSS3等新特性.目前,無論是電腦還是智能終端,互聯(lián)網(wǎng)的主要瀏覽器都對新標(biāo)準(zhǔn)提供了良好的支持[2].
HTML5標(biāo)準(zhǔn)由眾多的新特性組成,根據(jù)功能的不同,可以分為標(biāo)簽與表單、通信API、離線應(yīng)用與存儲、多媒體、性能與表現(xiàn)、設(shè)備訪問6類,如表1所示.其中,新標(biāo)簽與表單引入了語義信息和豐富的交互事件與屬性,使客戶端更加靈活;通信API提供了瀏覽器與服務(wù)器、瀏覽器與瀏覽器、瀏覽器標(biāo)簽之間新的通信方式,滿足多種應(yīng)用場景下的開發(fā)需求;多媒體特性使得瀏覽器原生支持多種圖形、視頻、音頻,無需額外安裝插件;性能與表現(xiàn)特性則使性能顯著優(yōu)化,并提供給UI多種友好的表現(xiàn)形式;設(shè)備訪問特性使得瀏覽器能夠充分的利用多種平臺的不同硬件,構(gòu)建出豐富的應(yīng)用.
Table 1 Summary of HTML5 New Features
雖然HTML5提供了豐富的應(yīng)用形式,但同時也帶來了許多新的安全問題,傳統(tǒng)的Web安全問題如XSS、CSRF、設(shè)備指紋識別、UI欺騙等在HTML5環(huán)境下有了新的發(fā)展,同時,XMLHttpRequest2、Web-Storage、postMessage等新API還引入了新的跨源、本地存儲、標(biāo)簽通信風(fēng)險(xiǎn).主要原因歸納有如下3點(diǎn):1)傳統(tǒng)的安全問題會以新的形式在使用了HTML5技術(shù)的應(yīng)用中出現(xiàn),如HTML5新標(biāo)簽帶來了更多的XSS攻擊向量;2)HTML5許多新API賦予了Web強(qiáng)大的功能,這同時提供給攻擊者許多新的攻擊方式;3)由于開發(fā)者對HTML5新的特性不夠熟悉,使用時難免會考慮不周,導(dǎo)致應(yīng)用存在被攻擊者利用的漏洞.總的來說,正是由于HTML5引入了許多新的特性,所以才產(chǎn)生了諸多新的安全問題,
現(xiàn)今Web的廣泛應(yīng)用使得其安全性至關(guān)重要,而HTML5作為新的Web標(biāo)準(zhǔn),其安全問題直接關(guān)系著整個Web平臺的安全.所以,安全界已經(jīng)對HTML5安全開展了廣泛的研究.首先,2010年Kuppan[3]在黑帽大會上公布了通過HTML5技術(shù)進(jìn)行攻擊的系列方法,包括新標(biāo)簽跨站點(diǎn)腳本(cross-site scripting, XSS)、COR反向代理、點(diǎn)擊劫持、應(yīng)用程序緩存中毒、客戶端RFI、網(wǎng)絡(luò)掃描、構(gòu)建僵尸網(wǎng)絡(luò)等,并同時給出了概念驗(yàn)證程序.這是安全界最早分析HTML5安全問題的系統(tǒng)性報(bào)告.在2012年歐洲黑帽大會上,Shah[4]再次補(bǔ)充了通過HTML5技術(shù)進(jìn)行攻擊的10種攻擊手段,包括CORS、UI欺騙以及HTML5帶來的新XSS攻擊載荷等.國際著名Web安全組織OWASP針對HTML5安全,專門成立工作組并維護(hù)了在線HTML5安全手冊[5],對開發(fā)者具有非常高的參考價(jià)值.在國內(nèi),吳翰清[6]的著作《白帽子講Web安全》中較早地對HTML5安全進(jìn)行了探討;2013年,孫松柏等人[7]對HTML5安全做了概括性論述,并對國內(nèi)許多知名站點(diǎn)進(jìn)行了安全測試,發(fā)現(xiàn)HTML5安全問題嚴(yán)重影響當(dāng)前國內(nèi)Web安全.
除對HTML5的綜合安全研究外,學(xué)術(shù)界自2010年后對HTML5的各個特性也進(jìn)行了深入的研究,發(fā)現(xiàn)了XSS、信息泄露、用戶追蹤等多方面的安全隱患,并提出相應(yīng)方案來加強(qiáng)HTML5的安全性.
HTML5安全問題實(shí)際由各個新特性的安全問題組成,故本文試圖圍繞著引入的各類新特性,對HTML5安全展開討論.
本節(jié)按照新特性功能的不同,分類討論各個新特性的安全研究現(xiàn)狀.由于跨站點(diǎn)腳本的普遍性,并且其經(jīng)常能夠作為其他攻擊的先決條件,故單獨(dú)列出討論.另外為保證研究的完整性,在最后補(bǔ)充了HTML5其他的相關(guān)安全問題.
1.1 標(biāo)簽與表單
HTML5規(guī)范了HTML解析器,定義了許多新的內(nèi)容,如新的結(jié)構(gòu)標(biāo)簽、音視頻標(biāo)簽、MathML等,并豐富了原有表單、內(nèi)嵌窗口的屬性.
這些新內(nèi)容除帶來跨站點(diǎn)腳本威脅外,還會引入其他的風(fēng)險(xiǎn).iframe的sandbox屬性可以設(shè)置是否允許內(nèi)嵌窗口執(zhí)行腳本,從而使攻擊者進(jìn)行UI欺騙時繞過FrameBusting檢查.HTML5對表單功能的加強(qiáng)也引入了許多新的風(fēng)險(xiǎn),如autocomplete屬性提供自動完成的功能,使瀏覽器根據(jù)表單ID將輸入信息保存在本地,方便用戶的同時違背了同源策略,產(chǎn)生泄露表單中隱私的風(fēng)險(xiǎn)[8];pattern屬性提供客戶端的正則表達(dá)式過濾,但開發(fā)者仍需在服務(wù)端對輸入進(jìn)行驗(yàn)證,疏忽會導(dǎo)致嚴(yán)重的安全風(fēng)險(xiǎn);formaction屬性可以覆蓋form的action屬性,攻擊者若能對表單注入該屬性,即可操縱表單提交的地址,并且由于不是腳本注入,所以無法受到CSP的保護(hù),甚至不受注入位置的限制[9].Preibusch等人[10]針對Web表單中的許多特性進(jìn)行了安全性研究.另外,一些標(biāo)簽屬性的使用還能夠?qū)蛻舳嗽斐删芙^服務(wù),如〈inputonblur=focus()autofocus〉,focus()是獲取焦點(diǎn)的函數(shù)[11].
HTML5新標(biāo)簽的豐富性導(dǎo)致其帶來的安全問題也是多種多樣的,它既提供給攻擊者手段繞過現(xiàn)有防御措施,也使開發(fā)者在使用時易帶來新的漏洞,如與原有防御機(jī)制相沖突、信息泄露、表單注入、拒絕服務(wù)等問題.目前,對新標(biāo)簽的安全性問題通常難以有系統(tǒng)性的分析,研究以打補(bǔ)丁的形式進(jìn)行,未來仍需研究各個新標(biāo)簽潛在的安全風(fēng)險(xiǎn),如在不同終端不同瀏覽器上的不同實(shí)現(xiàn)形式.
1.2 通信功能
1.2.1 postMessage API
出于安全方面的考慮,運(yùn)行在同一瀏覽器中的框架、標(biāo)簽頁、窗口間的通信一直都受到了嚴(yán)格的限制,然而,現(xiàn)實(shí)中存在一些合理的需求讓不同站點(diǎn)的內(nèi)容能在瀏覽器內(nèi)進(jìn)行交互.HTML5為跨文檔消息機(jī)制提供了postMessage API,用來實(shí)現(xiàn)跨框架、標(biāo)簽頁、窗口通信.其通過響應(yīng)事件來接收消息,通過檢查消息的來源來決定是否對這條消息進(jìn)行處理.
2010年,Hanna等人[12]發(fā)現(xiàn)了新型瀏覽器在部署postMessage技術(shù)時客戶端通信協(xié)議層面出現(xiàn)的安全問題.2013年,Son等人[13]發(fā)現(xiàn)了許多實(shí)際中origin源驗(yàn)證存在的漏洞,由此攻擊者可以注入腳本、任意修改本地存儲,如www.ieee.org等知名的站點(diǎn)均存在該問題,表明開發(fā)者在使用新的API時非常容易出現(xiàn)問題.因此,李瀟宇等人[14]同年提出了一種跨文檔消息傳遞方案SafePM來幫助開發(fā)者安全使用postMessage.
1.2.2 WebSocket API
HTML5引入了WebSocket來增加異步通信和跨源通信的支持,使得開發(fā)者能更便捷地構(gòu)建實(shí)時應(yīng)用.但同時,該功能的引入也為攻擊者提供了構(gòu)造各種惡意代碼的可能.2010年Kuppan[3]詳細(xì)講解了使用Web-Socket掃描的技術(shù)細(xì)節(jié),并發(fā)布了一個概念驗(yàn)證工具“JS-Recon”,該工具可以通過受害主機(jī)瀏覽器對內(nèi)網(wǎng)進(jìn)行掃描.2012年,Schema等人[15]分析了WebSocket在MITM、DoS、IDS、Fingerprinting、Fuzzing、使用不當(dāng)?shù)榷喾矫娴陌踩珕栴}.2013年,Kulshrestha[16]回顧了WebSocket的協(xié)議和API,并討論了不同瀏覽器面對混合內(nèi)容和不可靠證書時存在的安全問題.
1.2.3 XMLHttpRequest2(XHR2)
XMLHttpRequest API使得Ajax技術(shù)的實(shí)現(xiàn)成為了可能,作為其改進(jìn)版本,XHR2主要增加了跨源和進(jìn)度事件2方面的功能.其跨源支持使得CSRF成為可能,通過將XHR2對象的setRequestHeader設(shè)置為Content-type,multi-partform-data,將屬性WithCredentials設(shè)置為true,就能夠?qū)ookie進(jìn)行重放,從而實(shí)現(xiàn)攻擊[4,7,17].同WebSocket類似,利用狀態(tài)響應(yīng)時間的不同,XHR2也能夠用來進(jìn)行網(wǎng)絡(luò)掃描[3].
目前,各界對postMessage API和WebSocket的安全問題已經(jīng)進(jìn)行了較為豐富的研究,并且實(shí)際中也已經(jīng)有了較為廣泛的應(yīng)用.其中,對postMessage的研究主要包含了瀏覽器實(shí)現(xiàn)漏洞和開發(fā)者安全應(yīng)用2個方面.對WebSocket安全的研究既包括了主要的通信功能,也包括了在其他安全問題下的表現(xiàn)和新惡意利用方式.XHR2是對原有XHR的升級改動,研究集中于其跨源新特性所帶來的新風(fēng)險(xiǎn).通信API常常涉及到客戶端與服務(wù)端2方面的通信,研究服務(wù)端實(shí)現(xiàn)方面的安全問題可作為未來方向之一.
1.3 離線應(yīng)用與存儲
1.3.1 本地存儲API
WebStorage是HTML新增的本地存儲解決方案之一,意圖在于解決本來不應(yīng)該cookie做,卻不得不用cookie的本地存儲.相比于cookie,WebStorage減少了通信的流量,也降低了被監(jiān)聽的風(fēng)險(xiǎn).WebStorage使用簡單字符串鍵值對在本地存儲數(shù)據(jù),方便靈活,但是對于大量結(jié)構(gòu)化數(shù)據(jù)存儲力不從心.IndexedDB能夠在客戶端存儲大量的結(jié)構(gòu)化數(shù)據(jù),并且使用索引高效檢索,在2015年1月8日正式被W3C推薦,而Web SQL Database實(shí)際上已經(jīng)被廢棄.
本地存儲在方便開發(fā)者在客戶端存儲數(shù)據(jù)的同時,也會遭到同cookie類似的攻擊,如XSS和CSRF等.除此之外,其還有一些其他的安全風(fēng)險(xiǎn).如瀏覽器在早期實(shí)現(xiàn)WebStorage時存在缺陷,不限制站點(diǎn)的存儲容量,攻擊者可以借此耗盡瀏覽器的存儲空間[18].Kimak等人[19]研究了IndexedDB數(shù)據(jù)如何存儲在客戶端本地文件系統(tǒng),并敘述了如何在應(yīng)用程序刪除了客戶端數(shù)據(jù)庫后仍然可以獲取到數(shù)據(jù)及解決方案.Matsumoto等人[20]發(fā)現(xiàn),從瀏覽器的主內(nèi)存映像(main memory image)中可以取得WebStorage的值信息.Acar等人[21]在研究中發(fā)現(xiàn),IndexedDB可以被用來作為用戶追蹤的新手段.
研究者還提出了對本地存儲安全性的改進(jìn)方案與安全應(yīng)用場景.2014年,Jemel等人[22]針對本地存儲API提出了一種安全加強(qiáng)方案,即瀏覽器為每個用戶分別提供安全的存儲空間.然后又從云計(jì)算應(yīng)用的角度,提出了加強(qiáng)本地存儲數(shù)據(jù)安全的方法和不同設(shè)備同步本地存儲數(shù)據(jù)的方案[23].Kimak等人[24]對IndexedDB的發(fā)展歷程進(jìn)行回顧,針對已有的安全問題提出了新的安全模型.
1.3.2 應(yīng)用程序緩存
在全球互聯(lián)的時代,人們越來越依賴網(wǎng)絡(luò)連接,但事實(shí)上,網(wǎng)絡(luò)連接中斷時有發(fā)生,為此HTML5引入了應(yīng)用程序緩存(application cache, AppCache).使用應(yīng)用程序緩存,避免了加載應(yīng)用程序時的常規(guī)網(wǎng)絡(luò)請求,如果緩存清單文件是最新的,瀏覽器就無需檢查其他資源是否最新.這可以節(jié)省帶寬,加快訪問速度,并減輕服務(wù)器負(fù)載.
新緩存機(jī)制的引入同時帶來了新的緩存中毒攻擊.Kuppan[3]首先提出利用應(yīng)用程序緩存作為緩存中毒攻擊的新方式,比HTTP緩存中毒攻擊更加持久.2013年,Johns等人[25]發(fā)現(xiàn)使用AppCache緩存惡意腳本至DNS-IP映射信息過期可以繞過反DNS Rebinding機(jī)制,從而破壞瀏覽器的同源策略.2015年,Jia等人[26]研究了應(yīng)用程序緩存中毒對HTTPS的影響,即使用HTTPS也難以保證安全.除此之外,由于實(shí)現(xiàn)時缺少安全性的考慮,它還賦予攻擊者竊取用戶隱私信息的能力.同年,Lee等人[27]發(fā)現(xiàn)了利用應(yīng)用程序緩存的事件機(jī)制來判斷跨源資源狀態(tài)的方法,從而推斷出用戶的Web訪問習(xí)慣與認(rèn)證狀態(tài).
目前,本地存儲API的安全性吸引了眾多研究者的目光,包括其客戶端實(shí)現(xiàn)的缺陷、客戶端存儲數(shù)據(jù)的機(jī)密性、不同應(yīng)用場景的隱私風(fēng)險(xiǎn)等.另外,研究者對于其安全性改進(jìn)與安全應(yīng)用場景也提出了各種不同的方案.應(yīng)用程序緩存使緩存中毒攻擊方式有了新的表現(xiàn)形式,長時間的緩存也給已有的安全機(jī)制產(chǎn)生沖突,其實(shí)現(xiàn)上的不周也為竊取敏感信息提供了新的手段.出于安全性的考慮,正在制定的用于離線應(yīng)用的Service Workers僅允許在HTTPS連接中使用[28].
1.4 多媒體
Web的功能已經(jīng)逐漸從瀏覽簡單的網(wǎng)頁發(fā)展成為可以處理復(fù)雜媒體的應(yīng)用平臺.但是,以前瀏覽器對多媒體的支持往往是通過各種插件來實(shí)現(xiàn),如著名的Flash插件.現(xiàn)在,HTML5推出了一系列標(biāo)簽和JavaScript API,使瀏覽器原生支持多媒體功能.
網(wǎng)絡(luò)實(shí)時通信(Web real time communication, WebRTC)主要用來讓瀏覽器實(shí)時獲取和交換視頻、音頻等數(shù)據(jù).getUserMedia()API還允許通過JavaScript腳本分享用戶的屏幕,Tian等人[29]發(fā)現(xiàn)使用屏幕共享API可以在用戶無察覺的情況下竊取用戶屏幕上的信息和瀏覽歷史記錄,并繞過站點(diǎn)的防御進(jìn)行CSRF攻擊.
可縮放矢量圖形(scalable vector graphics, SVG)使用XML格式定義圖像,曾經(jīng)沒有得到瀏覽器很好的支持,但由于HTML5的到來,現(xiàn)可以用傳統(tǒng)的標(biāo)簽嵌入頁面中.隨著其應(yīng)用的普及,研究人員發(fā)現(xiàn)了許多潛在的安全風(fēng)險(xiǎn).2011年,Heiderich等人[30]發(fā)現(xiàn)使用〈img〉標(biāo)簽和CSS嵌入的SVG圖像可以注入并執(zhí)行任意JavaScript代碼,稱之為AII攻擊,并提出相應(yīng)的防范措施.Stone[31]在2013年黑帽大會上提出,使用SVG filter來進(jìn)行計(jì)時攻擊(timing attack)可以獲取歷史瀏覽記錄的方法.2012年,Heiderich等人[32]指出,攻擊者使用SVG的〈set〉標(biāo)簽和accessKey事件,可以記錄用戶在瀏覽器中輸入的內(nèi)容,而不必使用腳本.
〈canvas〉標(biāo)簽定義圖形,使用腳本來繪制圖形,與SVG以及VML之間的一個重要不同是,〈canvas〉有一個基于JavaScript的繪圖API,而SVG和VML使用一個XML文檔來描述繪圖.Mowery等人[33]提出使用〈canvas〉繪圖作為系統(tǒng)指紋識別的手段,因?yàn)槔L圖功能直接關(guān)系到顯卡驅(qū)動和GPU,通過檢查產(chǎn)生的像素,會發(fā)現(xiàn)不同的系統(tǒng)產(chǎn)生不同的輸出.這種用戶跟蹤的手段獨(dú)立于其他方法,并且易于使用和對用戶透明.因?yàn)镠TML5給予了瀏覽器更多訪問硬件的能力,所以Web現(xiàn)在可以基于硬件來進(jìn)行設(shè)備指紋識別,而這些硬件特征更難被掩飾和更改[34].
目前,多媒體類API除了提供XSS新的攻擊向量外,其中一些事件特性還可被攻擊者惡意利用來竊取擊鍵記錄和瀏覽器記錄等私密信息.由于其與硬件設(shè)備密切相關(guān)的特性,還被挖掘出許多進(jìn)行設(shè)備指紋識別的手段,威脅用戶的隱私.除瀏覽器的事件、編程接口支持外,多媒體類API的實(shí)現(xiàn)還需要多方面的支持,如圖形繪制、解碼庫等,其中底層支持的安全性也可作為未來研究方向之一.
1.5 性能與表現(xiàn)
HTML5在Web性能方面進(jìn)行了優(yōu)化,Web Workers使JavaScript現(xiàn)在可以后臺多線程執(zhí)行.但同時攻擊者可以使用該特性充分利用用戶的瀏覽器隱蔽地構(gòu)建僵尸網(wǎng)絡(luò),進(jìn)行DDoS、挖掘比特幣、進(jìn)行暴力破解等[3].
除了性能方面的改進(jìn),HTML5也定義了新的API,使開發(fā)者可以更方便高效地豐富Web表現(xiàn)形式.比如,服務(wù)器發(fā)送事件(server-sent event, SSE)允許網(wǎng)頁獲得來自服務(wù)器的推送更新;History API允許Web頁面操作瀏覽器的歷史記錄;拖拽API支持用戶在瀏覽器中拖拽元素;Web Notification API可以向用戶隨時進(jìn)行桌面消息推送,不局限于當(dāng)前頁面.Yoon等人[11]提出,可以使用SSE作為命令通信方式的僵尸網(wǎng)絡(luò),并且比Web Workers構(gòu)建的僵尸網(wǎng)絡(luò)更難被檢測.同時,表現(xiàn)形式的豐富也增加了社會工程學(xué)攻擊的能力.History API使攻擊者可以加入大量的URL歷史記錄,使用戶使用瀏覽器“后退”按鈕無法回退;而修改當(dāng)前顯示的URL增加了釣魚攻擊的迷惑性[35].Web Notification可以被攻擊者用來推送欺騙消息,拖拽API豐富了UI欺騙攻擊的形式.
目前對性能與表現(xiàn)新特性的安全研究集中于其自身功能的濫用,即攻擊者可以使用這些特性的原有功能來利用客戶端的資源或者進(jìn)行社會工程學(xué)攻擊等.但是,對于惡意利用的檢測與防范研究較少,并且對該類新特性的實(shí)現(xiàn)安全性與其他惡意利用方式還沒有發(fā)現(xiàn),這些可作為未來研究方向的重點(diǎn).
1.6 設(shè)備訪問
HTML5支持用戶通過Geolocation API獲取地理位置信息,極大地豐富了Web應(yīng)用形式,但不恰當(dāng)?shù)膶?shí)現(xiàn)會導(dǎo)致隱私泄露的風(fēng)險(xiǎn).2010年Doty等人[36]關(guān)注了Geolocation API的隱私機(jī)制,并提出了一種隱私框架.同年,Zalewski[37]發(fā)現(xiàn)Geolocation用戶提示可以通過對用戶界面進(jìn)行時差攻擊進(jìn)行UI欺騙,從而竊取地理位置信息.2014年,Kim等人[38]深入研究了當(dāng)前瀏覽器對Geolocation API的實(shí)現(xiàn),發(fā)現(xiàn)14種存在缺陷的漏洞和603個過高權(quán)限的站點(diǎn),并提出了細(xì)粒度的權(quán)限控制和位置模型,以及對Geolocation發(fā)展的一些建議.這些研究均增強(qiáng)了對用戶隱私性的保護(hù).
HTML5也提供了許多對移動設(shè)備訪問的支持,如照相機(jī)、觸摸事件等.Yoon等人[11]提出了使用震動API對移動設(shè)備拒絕服務(wù)的攻擊,這種攻擊會對用戶使用造成不良影響,迫使用戶關(guān)閉該頁面.Olejnik等人[39]發(fā)現(xiàn)FireFox實(shí)現(xiàn)的顯示電池狀態(tài)API時精確度過高,可以被用來進(jìn)行設(shè)備指紋識別.
目前對于HTML5設(shè)備訪問的研究主要集中于用戶隱私的攻防,還有移動設(shè)備的特殊硬件產(chǎn)生安全隱私隱患.研究包含了新的惡意利用方式及API功能實(shí)現(xiàn)時的缺陷,但是缺少結(jié)合客戶端平臺,對API功能實(shí)現(xiàn)機(jī)理安全性的深入研究.
1.7 其他方面
1.7.1 XSS新挑戰(zhàn)
XSS是Web上最流行的攻擊之一,通過該漏洞攻擊者可以向客戶端瀏覽器注入任意可執(zhí)行腳本.HTML5引入了許多能夠觸發(fā)JavaScript腳本執(zhí)行的新標(biāo)簽和新屬性,如audio、video、onerror、autofocus等;除標(biāo)簽與表單外,SVG和CSS3也增加了攻擊向量的種類,若網(wǎng)站黑名單過濾沒有包含HTML5新特性,那么就會產(chǎn)生XSS漏洞.HTML5安全站點(diǎn)[40]維護(hù)了一個較為全面的XSS攻擊向量備忘錄;Dong等人[41]總結(jié)了14種由HTML5引入的XSS攻擊向量,并針對電子郵件系統(tǒng)開發(fā)了相應(yīng)漏洞檢測工具.而且,HTML5新特性極大地增強(qiáng)了客戶端腳本的能力,增強(qiáng)了攻擊危害性.
HTML5良好的跨平臺特性,導(dǎo)致XSS有了新的“用武之地”.除了傳統(tǒng)上針對瀏覽器的XSS攻擊,2014年,Jin等人[42]發(fā)現(xiàn)移動終端HTML5 App同樣也存在XSS漏洞,并擁有Contact,SMS,Barcode,MP3等獨(dú)特的注入途徑.次年,Chen等人[43]又發(fā)現(xiàn)了針對移動終端HTML5 App,通過text box input type和document.getElementById(“TagID”).value注入腳本的新方式.2016年,Mao等人[44]提出了通過監(jiān)控App的運(yùn)行,建立行為狀態(tài)機(jī)來檢測HTML5 App注入行為的方法.
總之,傳統(tǒng)的XSS防范方法足以應(yīng)對新的威脅,但是需要特別提防HTML5新引入的注入通道及其跨平臺的影響,移動端目前已經(jīng)發(fā)現(xiàn)了較多的安全隱患.
1.7.2 補(bǔ)充工作
一部分研究并不局限討論HTML5某個特性的安全問題,但其主體是信息安全相關(guān)問題,并與HTML5密切相關(guān),所以特在此節(jié)簡要說明,以保證研究的完整性.
其中有些研究側(cè)重于HTML5的應(yīng)用.文獻(xiàn)[45-46]討論了使用HTML5特性來加強(qiáng)會話的方案.文獻(xiàn)[47]提出了可以使用HTML5的WebRTC來進(jìn)行數(shù)據(jù)P2P安全傳輸?shù)姆桨?文獻(xiàn)[48]使用Web Crypto API實(shí)現(xiàn)了端對端加密的社交網(wǎng)絡(luò).
有些研究側(cè)重于整體安全性與安全檢測.文獻(xiàn)[49]采用基于行為分析的方法研究了新特性的惡意使用.文獻(xiàn)[7,50]設(shè)計(jì)并實(shí)現(xiàn)了可以檢測HTML5安全問題的漏洞掃描器.文獻(xiàn)[51]提出了一種針對HTML5應(yīng)用的權(quán)限分離方案.
HTML5應(yīng)用在移動端的實(shí)現(xiàn)也暴露出了新的問題,文獻(xiàn)[52]以Android和PhoneGap為例,研究了移動端操作系統(tǒng)支持HTML5應(yīng)用時的訪問控制問題.HTML5新特性的出現(xiàn)也影響了舊有的安全問題,如文獻(xiàn)[53]提出了3種基于HTML5新特性的混淆技術(shù),使Web drive-by-download惡意代碼避開現(xiàn)有的安全檢測系統(tǒng).
目前安全界已經(jīng)對HTML5安全投入了許多的研究精力,已發(fā)表的文獻(xiàn)主要有2種類型.第1類是針對單個特性進(jìn)行深入研究,如發(fā)現(xiàn)了一類新的惡意利用手段、API本身實(shí)現(xiàn)缺陷、實(shí)際中使用時產(chǎn)生的漏洞等,大部分文獻(xiàn)屬于此類.通過統(tǒng)計(jì)對各新特性研究的64篇文獻(xiàn),得到圖1所示的比例分布圖.
Fig. 1 Literatures distribution of new features security.圖1 新特性安全研究文獻(xiàn)分布比例圖
其中,通信API和離線應(yīng)用與存儲得到了較多研究者的關(guān)注.這一方面是由于其特性本身的復(fù)雜性,如通信API的跨源特性、協(xié)議、事件機(jī)制,本地存儲客戶端的實(shí)現(xiàn),應(yīng)用程序緩存的持久特性和事件機(jī)制均引入了新的安全風(fēng)險(xiǎn);一方面由于其應(yīng)用的廣泛性,如postMessage的眾多實(shí)際應(yīng)用中對源驗(yàn)證存在漏洞.多媒體類特性也較為復(fù)雜,涉及到腳本接口和與硬件密切相關(guān)的特性,同樣產(chǎn)生了較多的安全問題.性能表現(xiàn)與設(shè)備訪問類特性由于其本身特點(diǎn),研究主要集中于基于社會工程學(xué)的隱私泄露.標(biāo)簽與表單常常引入新的注入攻擊,攻擊思路較為固定,防范方法較為成熟,已經(jīng)得到了業(yè)界較多的關(guān)注.
第2類文獻(xiàn)概括多點(diǎn)HTML5安全問題,包括總體安全分析、安全使用的建議和對以往問題的總結(jié)、安全測試等.如對HTML5整體進(jìn)行安全性分析的部分文獻(xiàn)中,文獻(xiàn)[7]通過對國內(nèi)外研究工作的總結(jié)分析,將HTML5安全問題分為3類:HTML5安全漏洞、HTML5新型攻擊機(jī)制、HTML5新特性濫用.文獻(xiàn)[11]根據(jù)攻擊產(chǎn)生的危害,將安全問題分為數(shù)據(jù)泄露、信息控制、請求偽造、拒絕服務(wù)、社會工程學(xué)5類,注重攻擊的表現(xiàn)形式,將安全問題劃入現(xiàn)有的攻擊類型.上面的分類均不是站在漏洞產(chǎn)生原因的角度進(jìn)行分析.
經(jīng)過調(diào)研分析,為提供進(jìn)一步漏洞挖掘的思路,從漏洞產(chǎn)生原因的角度,可以將HTML5安全的問題歸為3類.1)傳統(tǒng)威脅延伸,即傳統(tǒng)的Web攻擊思路延伸到HTML5應(yīng)用之中,對原有防御機(jī)制帶來了挑戰(zhàn)或產(chǎn)生了新的表現(xiàn)形式;如新標(biāo)簽引入的XSS對黑名單過濾產(chǎn)生了挑戰(zhàn),移動端HTML5 App發(fā)現(xiàn)的XSS等.該類問題重點(diǎn)關(guān)注新攻擊與傳統(tǒng)攻擊實(shí)施思路上的相似性.2)新功能的惡意利用,即新特性在提供開發(fā)便利的同時,也給攻擊者提供了新的攻擊手段,其可以是對功能的正常使用,如利用Web Workers構(gòu)建僵尸網(wǎng)絡(luò);也可以是主要功能之外的其他手段,類似密碼破解中的邊信道,如使用WebSocket進(jìn)行網(wǎng)絡(luò)掃描是利用響應(yīng)時間的側(cè)信道.該類問題重點(diǎn)關(guān)注新特性本身帶來的風(fēng)險(xiǎn).3)使用新特性不當(dāng)產(chǎn)生漏洞,即開發(fā)者在使用新特性時,由于對新功能不夠熟悉,疏忽大意導(dǎo)致編程存在安全漏洞;如使用CORS時缺少對源的校驗(yàn)和數(shù)據(jù)驗(yàn)證等.該類問題產(chǎn)生的原因在于開發(fā)者使用不當(dāng),而非新特性本身.
按照上述分類方法,各個新特性存在的安全問題匯總?cè)绫?所示,供安全研究人員參考.表2中直接給出了關(guān)鍵短語描述,空格表示目前沒有發(fā)現(xiàn)此類安全問題,具體內(nèi)容可參考上文對各類特性的詳細(xì)討論.注意,HTML5使得XSS攻擊更具威脅性,并且XSS是很多攻擊的前提條件,故統(tǒng)計(jì)時不再重復(fù)考慮,通常對新標(biāo)簽的攻擊向量使用傳統(tǒng)方法加以完善即可防范.另外,其中有些漏洞已經(jīng)隨著標(biāo)準(zhǔn)化進(jìn)程修復(fù).
Table 2 Summary of HTML5 Security Issues
HTML5標(biāo)準(zhǔn)體系目前已經(jīng)基本完成,其相關(guān)安全研究也開展了多年,產(chǎn)生了一大批漏洞和科研成果.未來的研究方向主要包含4個方面:
1) 新特性安全性分析
雖然安全研究伴隨著HTML5整個標(biāo)準(zhǔn)化過程,但是對于其新特性本身的研究卻仍然不夠深入和全面,主要原因有2個方面:①盡管研究者已經(jīng)對許多新特性進(jìn)行了研究,但是隨著Web的快速發(fā)展,不斷有新的特性被提出,如2016年4月19日W3C正式推薦了Web Storage第2版,繼續(xù)推出的新特性在帶來易用性和修補(bǔ)安全缺陷的同時,難免還會帶來新的安全風(fēng)險(xiǎn),需要安全研究人員不斷地跟進(jìn)研究.②仍有許多特性的安全性沒有被詳盡地分析,已分析過的特性也無法避免會出現(xiàn)其他的惡意利用方式,如通信API的服務(wù)端實(shí)現(xiàn)、多媒體API的底層支持等.
各個新特性的加入使瀏覽器成為越來越復(fù)雜的應(yīng)用載體,故對各個新特性潛在安全性的研究仍然是未來研究的重點(diǎn)方向,包括并不局限于隱私保護(hù)、與舊有安全手段沖突、新惡意利用方式、不同平臺實(shí)現(xiàn)差異等.本文提出的分類方法給發(fā)現(xiàn)新的安全問題提供了參考思路.
2) 新特性惡意利用檢測
目前大部分研究局限于發(fā)現(xiàn)一個問題,解決一個問題,部分研究關(guān)注現(xiàn)有漏洞的檢測,均缺少對普遍HTML5惡意利用的檢測和防御方案.具體可以考慮惡意行為建模分析、特征提取,機(jī)器學(xué)習(xí)等手段,參考入侵檢測系統(tǒng)的常用方法.
3) 跨平臺安全性
W3C致力于統(tǒng)一各個平臺的Web標(biāo)準(zhǔn),以方便開發(fā)出功能更加豐富的Web應(yīng)用程序.然而不同平臺、不同終端對標(biāo)準(zhǔn)的實(shí)現(xiàn)卻不盡相同,這就留下了出現(xiàn)安全問題的隱患.移動互聯(lián)網(wǎng)和物聯(lián)網(wǎng)的蓬勃發(fā)展使得HTML5應(yīng)用日益廣泛.Web已經(jīng)不單單是傳統(tǒng)PC的應(yīng)用,許多智能設(shè)備都在使用Web技術(shù)[54],物聯(lián)萬維網(wǎng)(Web of Things,WoT)正被提上議題[55].眾多的智能終端無疑會存在更多的安全風(fēng)險(xiǎn),如設(shè)備訪問API在不同硬件特性的平臺上會帶來不同的隱患.目前,安卓平臺HTML5 App已經(jīng)發(fā)現(xiàn)存在XSS攻擊,其他類型的Web攻擊也同樣可能影響各個平臺.所以不同平臺HTML5應(yīng)用的安全性研究也是未來的方向之一,如HTML5在移動終端、Web TV等平臺的安全、隱私保護(hù)、可達(dá)性及恢復(fù)力等.
4) 新安全應(yīng)用形式
HTML5是新一代的Web標(biāo)準(zhǔn),瀏覽器對其進(jìn)行了充分的支持,對HTML5新的應(yīng)用形式也在不斷探索之中.比如可以考慮利用HTML5來更加高效地解決如盜鏈等傳統(tǒng)問題,結(jié)合多因素構(gòu)建Web認(rèn)證支付系統(tǒng),設(shè)計(jì)瀏覽器加密通信系統(tǒng),加強(qiáng)權(quán)限控制會話安全.故利用HTML5技術(shù)結(jié)合具體應(yīng)用場景需求來構(gòu)建安全應(yīng)用也是未來的研究方向之一.
Web技術(shù)已經(jīng)深入人們?nèi)粘I畹姆椒矫婷?,其中對HTML5安全性的研究具有重要的現(xiàn)實(shí)意義.本文首先對國內(nèi)外研究現(xiàn)狀進(jìn)行了總結(jié),然后根據(jù)功能的差異,討論了HTML5各類新特性的安全問題.并將已有HTML5安全問題歸納為3類:傳統(tǒng)威脅延伸、新惡意利用方式、使用和實(shí)現(xiàn)時的漏洞,為進(jìn)一步發(fā)現(xiàn)新的安全問題提供了思路.最后,討論了值得進(jìn)一步深入研究的安全問題,包括新特性安全性、跨平臺應(yīng)用、新安全應(yīng)用形式3個方向.
[1]W3C. HTML5[EB/OL]. [2016-03-19]. https://www.w3.org/TR/html5/
[2]Leenheer N. How well does your browser support HTML5[EB/OL]. (2016-06) [2016-08-08]. http://html5test.com
[3]Kuppan L. Attacking with HTML5[EB/OL]. Blackhat 2010. (2010-10-08) [2016-08-08]. https://media.blackhat.com/bh-ad-10/Kuppan/Blackhat-AD-2010-Kuppan-Attacking-with-HTML5-wp.pdf
[4]Shah S. HTML5 Top 10 Threats Stealth Attacks and Silent Exploits[EB/OL]. Blackhat 2012. [2016-08-08] http://media.blackhat.com/bh-eu-12/shah/bh-eu-12-Shah_HTML5_Top_10-WP.pdf
[5]OWASP. HTML5 Security Cheat Sheet[EB/OL]. [2016-03-20] https://www.owasp.org/index.php/HTML5_Security_Cheat_Sheet
[6]Wu Hanqing. White Hat to Talk about Web Security[M]. Chinese Edition. Beijing: Publishing House of Electronics Industry, 2012 (in Chinese)(吳瀚清. 白帽子講Web安全[M]. 北京: 電子工業(yè)出版社, 2012)
[7]Sun Songbai, Ali Abbasi, Zhuge Jianwei, et al. Reseach on HTML5 security[J]. Computer Applications and Software, 2013, 30(3): 1-6 (in Chinese)(孫松柏, Ali Abbasi, 諸葛建偉, 等. HTML5安全研究[J]. 計(jì)算機(jī)應(yīng)用與軟件, 2013, 30(3): 1-6)
[8]andlabs. POC for Stealing Auto-Complete Suggestions from Google Chrome[EB/OL]. [2016-08-08] http://www.andlabs.org/hacks/steal_autofill.html
[9]De Ryck P, Desmet L, Piessens F, et al. A security analysis of emerging Web standards-Extended version, CW622[R/OL]. Belgium: Department of Computer Science, KU Leuven, 2012 [2016-08-08]. https://lirias.kuleuven.be/bitstream/123456789/349398/1/CW622.pdf
[10]Preibusch S, Krol K, Beresford A R. The privacy economics of voluntary over-disclosure in Web forms[G] //The Economics of Information Security and Privacy. Berlin: Springer, 2013: 183-209
[11]Yoon S, Jung J H, Kim H K. Attacks on Web browsers with HTML5[C] //Proc of the 10th Int Conf for Internet Technology and Secured Trans (ICITST). Piscataway, NJ: IEEE, 2015: 193-197
[12]Hanna S, Chul E, Shin R, et al. The Emperor’s new APIs: On the (In)secure usage of new client-side primitives [C/OL] //Proc of W2SP’10. Piscataway, NJ: IEEE, 2010 [2016-06-15]. http://www.ieee-security.org/TC/W2SP/2010/papers/p03.pdf
[13]Son S, Shmatikov V. The postman always rings twice: Attacking and defending postMessage in HTML5 Websites[C] //Proc of NDSS’13. Rosten, VA, USA: Internet Society, 2013: 1-14
[14]Li Xiaoyu, Zhang Yuqing, Liu Qixu, et al. Secure cross document messaging scheme based on HTML5[J]. Journal of Graduate University of Chinese Academy of Sciences, 2013, 30(1): 124-130 (in Chinese)(李瀟宇, 張玉清, 劉奇旭, 等. 一種基于HTML5的安全跨文檔消息傳遞方案[J]. 中國科學(xué)院大學(xué)學(xué)報(bào), 2013, 30(1): 124-130)
[15]Schema M, Shekyan S, Toukharian V. Hacking with WebSockets[EB/OL]. [2016-08-08] BlackHat USA 2012. http://www.hakim.ws/BHUSA12/materials/Briefings/Shekyan/BH_US_12_Shekyan_Toukharian_Hacking_Websocket_Slides.pdf
[16]Kulshrestha A. An empirical study of HTML5 Websockets and their cross browser behavior for mixed content and untrusted certificates[J]. International Journal of Computer Applications, 2013, 82(6): 13-18
[17]Wang Xiaoqiang. Research of Csrf Attack and Defense Techniques Based on HTML5[D]. Chengdu: University of Electronic Science and Technology of China, 2013 (in Chinese)(王曉強(qiáng). 基于HTML5的CSRF攻擊與防御技術(shù)研究[D]. 成都: 電子科技大學(xué), 2013)
[18]Feross A. Introducing the HTML5 Hard Disk FillerTMAPI[EB/OL]. [2016-04-04]. http://feross.org/fill-disk/
[19]Kimak S, Ellman J, Laing C. Some potential issues with the security of HTML5 indexedDB[C] //Proc of System Safety and Cyber Security. Piscataway, NJ: IEEE, 2014: 495-502
[20]Matsumoto S, Sakurai K. Acquisition of evidence of Web storage in HTML5 Web browsers from memory image[C] //Proc of the 9th Asia Joint Conf on Information Security. Piscataway, NJ: IEEE, 2014: 148-155
[21]Acar G, Eubank C, Englehardt S, et al. The Web never forgets: Persistent tracking mechanisms in the wild [C] //Proc of ACM Conf on Computer and Communications Security. New York: ACM, 2014: 674-689
[22]Jemel M, Serhrouchni A. Security enhancement of HTML5 Local Data Storage[C] //Proc of 2014 Int Conf and Workshop on the Network of the Future (NOF). Piscataway, NJ: IEEE, 2015. Doi:10.1109/NOF.2014.7119784
[23]Jemel M, Serhrouchni A. Content protection and secure synchronization of HTML5 local storage data [C] //Proc of the 11th Consumer Communications and Networking Conf (CCNC). Piscataway, NJ: IEEE, 2014: 539-540
[24]Kimak S, Ellman J. The role of HTML5 IndexedDB, the past, present and future[C] //Proc of the 10th Int Conf for Internet Technology and Secured Trans. Piscataway, NJ: IEEE, 2015: 379-383
[25]Johns M, Lekies S, Stock B: Eradicating DNS rebinding with the extended same-origin policy[C] //Proc of the 22nd Usenix Conf on Security. Berkeley, CA: Usenix, 2013: 621-636
[26]Jia Y, Chen Y, Dong X, et al. Man-in-the-browser-cache: Persisting HTTPS attacks via browser cache poisoning[J]. Computers & Security, 2015, 55: 62-80
[27]Lee S, Kim H, Kim J. Identifying cross-origin resource status using application cache[C/OL] //Proc of NDSS’15. San Diego, CA: Internet Society, 2015 [2016-06-15]. http://www.internetsociety.org/sites/default/files/01_1_2.pdf
[28]W3C. Service Workers W3C Working Draft 25 June 2015[EB/OL]. [2016-07-27]. https://www.w3.org/TR/service-workers/
[29]Tian Y, Liu Y C, Bhosale A, et al. All your screens are belong to us: Attacks exploiting the HTML5 screen sharing API[C] //Proc of the 2014 IEEE Symp on Security and Privacy. Piscataway, NJ: IEEE, 2014: 34-48
[30]Heiderich M, Frosch T, Jensen M, et al. Crouching tiger-hidden payload: Security risks of scalable vectors graphics[C] //Proc of the 18th ACM Conf on Computer and Communications Security. New York: ACM, 2011: 239-250
[31]Stone P. Pixel perfect timing attacks with HTML5[EB/OL]. Blackhat, 2013.[2016-03-20]. http://media.blackhat.com/us-13/US-13-Stone-Pixel-Perfect-Timing-Attacks-with-HTML5-WP.pdf
[32]Heiderich M, Niemietz M, Schuster F, et al. Scriptless attacks: Stealing more pie without touching the sill[C] //Proc of the ACM Conf on Computer and Communications Security. New York: ACM, 2012: 760-771
[33]Mowery K, Shacham H. Pixel perfect: Fingerprinting canvas in HTML5[C/OL] //Proc of W2SP’12. Piscataway, NJ: IEEE, 2012 [2016-06-15]. http://www.ieee-security.org/TC/W2SP/2012/papers/w2sp12-final4.pdf
[34]Nakibly G, Shelef G, Yudilevich S. Hardware fingerprinting using HTML5[DB/OL]. ArXiv e-prints, 2015. [2016-08-08]. http://xueshu.baidu.com/s?wd=paperuri%3A%280758be07676e75354f70444de749a4e6%29&filter=sc_long_sign&tn=SE_xueshusource_2kduw22v&sc_vurl=http%3A%2F%2Farxiv.org%2Fabs%2F1503.01408&ie=utf-8&sc_us=18386508993366793230
[35]TrandLabs. HTML5 Overview[EB/OL]. [2016-04-16]. http://www.trendmicro.com/cloud-content/us/pdfs/security-intelligence/reports/rpt_html5-attack-scenarios.pdf
[36]Doty N, Mulligan D K, Wilde E. Privacy issues of the W3C Geolocation API[DB/OL]. ArXiv e-prints, 2010. [2016-08-08]. http://xueshu.baidu.com/s?wd=paperuri%3A%286143a2a92f4fbaa43397ca8e34d3bf0b%29&filter=sc_long_sign&tn=SE_xueshusource_2kduw22v&sc_vurl=http%3A%2F%2Farxiv.org%2Fabs%2F1003.1775&ie=utf-8&sc_us=9799738829075159532
[37]Zalewski M. Geolocation spoofing and other UI woes[EB/OL]. (2010-08-17)[2016-03-20]. http://seclists.org/bugtraq/2010/Aug/201
[38]Kim H, Lee S, Kim J. Exploring and mitigating privacy threats of HTML5 geolocation API[C] //Proc of the 30th Annual Computer Security Applications Conf (ACSAC’14). New York: ACM, 2014: 306-315
[39]Diaz C, Olejnik L, Acar G, et al. The leaking battery: A privacy analysis of the HTML5 Battery Status API[J]. IACR Cryptology ePrint Archive, 2015: 616
[40]cure53. HTML5 Security Cheatsheet[EB/OL]. [2016-04-04]. http://html5sec.org/
[41]Dong G, Zhang Y, Wang X, et al. Detecting cross site scripting vulnerabilities introduced by HTML5[C] //Proc of the 11th Int Joint Conf on Computer Science and Software Engineering (JCSSE). Piscataway, NJ: IEEE, 2014: 319-323
[42]Jin X, Hu X, Ying K, et al. Code injection attacks on HTML5-based mobile Apps: Characterization, detection and mitigation[C] //Proc of the ACM Conf on Computer and Communications Security. New York: ACM, 2014: 66-77
[43]Chen Y L, Lee H M, Jeng A B. DroidCIA: A novel detection method of code injection attacks on HTML5-based mobile Apps [C] //Proc of the 2015 IEEE Trustcom/BigDataSE/ISPA. Piscataway, NJ: IEEE, 2015: 1014-1021
[44]Mao Jian, Wang Ruilong, Chen Yue, et al. Detecting injected behaviors in HTML5-based Android applications[J]. Journal of High Speed Networks, 2016, 22(1): 15-34
[45]Kumar V. Three Tier Verification Technique to foil session sidejacking attempts[C] //Proc of Asian Himalayas Int Conf on Internet. Piscataway, NJ: IEEE, 2011: 1-4
[46]Unger T, Mulazzani M, Hwirt D, et al. SHPF: Enhancing HTTP(S) session security with browser fingerprinting[C] //Proc of the 2013 Int Conf on Availability, Reliability and Security. Piscataway, NJ: IEEE, 2013: 255-261
[47]Farina J, Scanlon M, Kohlmann S, et al. HTML5 zero configuration covert channels: Security risks and challenges [C] //Proc of the 10th ADFSL Conf on Digital Forensics. Security and Law (ADFSL 2015). Florida: ADFSL, 2015: 135-150
[48]Barenghi A, Beretta M, Federico A D, et al. Snake: An end-to-end encrypted online social network[C] //Proc of IEEE Int Conf on High PERFORMANCE Computing and Communications. Piscataway, NJ: IEEE, 2014: 763-770
[49]Choo H L, Oh S, Jung J, et al. The Behavior-Based Analysis Techniques for HTML5 Malicious Features[C] //Proc of the Innovative Mobile and Internet Services in Ubiquitous Computing (IMIS). Piscataway, NJ: IEEE, 2015: 436-440
[50]Wu Q, Liu X. Research and design on Web application vulnerability scanning service[C] //Proc of the 5th IEEE Int Conf on Software Engineering and Service Science (ICSESS). Piscataway, NJ: IEEE, 2014: 671-674
[51]Akhawe D, Saxena P, Song D. Privilege separation in HTML5 applications[C] //Proc of the 21st USENIX Conf on Security Symp. Berkeley, CA: USENIX, 2012: 23-23
[52]Jin X, Wang L, Luo T, et al. Fine-grained access control for HTML5-based mobile applications in Android[G] //LNCS 7807. Berlin: Springer, 2015: 309-318
[53]Santis A D, Maio G D, Petrillo U F. Using HTML5 to prevent detection of drive-by-download Web malware[J]. Security & Communication Networks, 2015, 8(7): 1237-1255
[54]Dujlovic I, Duric Z. Cross-platform Web based real-time communication in Web TV and video on demand systems[C] //Proc of the 57th Int Symp ELMAR. Piscataway, NJ: IEEE, 2015: 65-68
[55]W3C. Web of Things at Industry of Things World[EB/OL]. (2016-03-08)[2016-04-23]. https://www.w3.org/blog/2016/03/w3c-web-of-things-at-industry-of-things-world/
Zhang Yuqing, born in 1966. PhD. Professor in the University of Chinese Academy of Sciences. His research interests include network and information system security.
Jia Yan, born in 1992. PhD candidate in Xidian University. His research interests include network and system security.
Lei Kenan, born in 1992. Master candidate in Xidian University. Her main research interests include network and information security.
Lü Shaoqing, born in 1987. PhD and assistant professor. His main research interests include social networks security and data mining.
Yue Hongzhou, born in 1987. PhD candidate in Xidian University, accepting joint training in National Computer Network Intrusion Protection Center, University of Chinese Academy of Sciences. His main research interests include network and information security.
Survey of HTML5 New Features Security
Zhang Yuqing1,2, Jia Yan1, Lei Kenan1, Lü Shaoqing3, and Yue Hongzhou1
1(StateKeyLaboratoryofIntegratedServicesNetworks(XidianUniversity),Xi’an710071)2(NationalComputerNetworkIntrusionProtectionCenter,UniversityofChineseAcademyofSciences,Beijing101408)3(ShaanxiKeyLaboratoryofInformationCommunicationNetworkandSecurity(Xi’anUniversityofPostsandTelecommunications),Xi’an710121)
HTML5 is the latest standard of building Web applications. It introduces many new features to browsers, but also brings new security issues. The security of new features is the essence of HTML5 security. According to the differences in function, we analyze and summarize the security of new features including new label and form, communication, offline and storage, multimedia, performance, device access. The security problems and possible prevention methods are pointed out. Then we summarize existing researches, and classify HTML5 security problems into three categories: extending traditional threats, malicious use and improper use, to provide a new thought for the further study of HTML5 security. At last, four directions of the future work are pointed out: the security of new features, detection of malicious use, cross platform security and new security applications.
Web security; HTML5; literature review; postMessage; WebSocket; AppCache; WebStorage
2016-08-18;
2016-09-20
國家自然科學(xué)基金項(xiàng)目(61272481,61572460);國家發(fā)改委信息安全專項(xiàng)[(2012)1424];國家重點(diǎn)研發(fā)計(jì)劃項(xiàng)目(2016YFB0800703);國家111項(xiàng)目(B16037);教育部-中國移動科研基金項(xiàng)目(MCM20130431)
TP393.08
This work was supported by the National Natural Science Foundation of China (61272481,61572460), the National Information Security Special Projects of National Development and Reform Commission of China [(2012)1424], the National Key Research and Development Project (2016YFB0800703), China 111 Project (B16037), and the Research Fund of Ministry of Education-China Mobile (MCM20130431).