日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
HTML5安全分析:本地存儲(chǔ)

在上一篇文章《HTML5跨域消息發(fā)送安全性分析》中,我們討論了在HTML5下的跨域消息傳遞。本文將帶你去了解另外一個(gè)特性——本地存儲(chǔ)。

成都創(chuàng)新互聯(lián)-專(zhuān)業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性?xún)r(jià)比城北網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式城北網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋城北地區(qū)。費(fèi)用合理售后完善,十載實(shí)體公司更值得信賴(lài)。

本地存儲(chǔ)

本地存儲(chǔ)也是HTML5的新特性之一,最開(kāi)始是在Mozilla 1.5上的,后來(lái)漸漸被HTML5規(guī)范接受。通過(guò)JavaScript的localStorage和sessionStorage對(duì)象,我們可以使用HTML5的這個(gè)新特性?;阪I值值匹配,這些JavaScript對(duì)象允許我們存儲(chǔ),檢索和刪除數(shù)據(jù)。

在HTML5中,本地存儲(chǔ)是一個(gè)window的屬性,包括localStorage和sessionStorage,從名字應(yīng)該可以很清楚的辨認(rèn)二者的區(qū)別,前者是一直存在本地的,后者只是伴隨著session,窗口一旦關(guān)閉就沒(méi)了,二者用法完全相同。

下面是一個(gè)HTML5應(yīng)用程序示例,使用HTML5新的本地存儲(chǔ)特性,我們可以使用 “Show Data”按鈕檢索存儲(chǔ)在數(shù)據(jù)庫(kù)中的數(shù)據(jù)。

我們先來(lái)看看這個(gè)站點(diǎn)的源,假設(shè)http://localhost:8383/為“應(yīng)用程序A”,整理一下:

Name: Application A

Origin: http://localhost:8383/

單擊“Show Data”按鈕

預(yù)期結(jié)果:我們能夠訪(fǎng)問(wèn)應(yīng)用程序A存儲(chǔ)在數(shù)據(jù)庫(kù)中的數(shù)據(jù)。

現(xiàn)在嘗試通過(guò)不同源來(lái)訪(fǎng)問(wèn)應(yīng)用程序A存儲(chǔ)在數(shù)據(jù)庫(kù)中的數(shù)據(jù)。

假設(shè)這是應(yīng)用程序B,下面為詳情:

Name: Application B

Origin: http://localhost/

注意了,應(yīng)用程序B與應(yīng)用程序A端口號(hào)不同,屬于不同源。

點(diǎn)擊“Show Data”按鈕。

當(dāng)我點(diǎn)擊“Show Data”按鈕的時(shí)候,明顯感覺(jué)到網(wǎng)頁(yè)沒(méi)有反應(yīng),這是因?yàn)閼?yīng)用程序不同源。

為了實(shí)驗(yàn)準(zhǔn)確,我們?cè)俅芜M(jìn)行確認(rèn)。我們運(yùn)行與應(yīng)用程序A同源的應(yīng)用程序C

Name: Application C

Origin: http://localhost:8383/

點(diǎn)擊“Show Data”按鈕,觀察結(jié)果

很好,我們能夠從應(yīng)用程序C訪(fǎng)問(wèn)到數(shù)據(jù),因?yàn)樗c應(yīng)用程序A同源。

結(jié)論,在上面的幾個(gè)應(yīng)用程序中都使用相同的代碼,但有些不同源。將數(shù)據(jù)插入應(yīng)用程序A的數(shù)據(jù)庫(kù)中,由于應(yīng)用程序B與應(yīng)用程序A不同源,所以訪(fǎng)問(wèn)失敗。而應(yīng)用程序C同源,成功訪(fǎng)問(wèn)。

接下來(lái),我們來(lái)看看HTML5本地存儲(chǔ)可能遭受的攻擊

敏感數(shù)據(jù)存儲(chǔ)

開(kāi)發(fā)者可能在其數(shù)據(jù)庫(kù)中存儲(chǔ)敏感數(shù)據(jù),很可能被找出API KEY或者其他敏感數(shù)據(jù)。如果沒(méi)有物理訪(fǎng)問(wèn)設(shè)備,我們可以使用XSS漏洞進(jìn)行利用。下面這個(gè)例子描述了localStorage對(duì)象如何存儲(chǔ)數(shù)據(jù),我們可以使用函數(shù)添加鍵值對(duì)作為參數(shù)。

localStorage.setItem(“data”, “mydata”);

下圖中,我們可以看到Chrome將數(shù)據(jù)存儲(chǔ)的路徑

讀取數(shù)據(jù)

localStorage.getItem(“data”);

繼續(xù)從SQLite數(shù)據(jù)庫(kù)讀取這些數(shù)據(jù)

腳本注入

沒(méi)有很好過(guò)濾SQLite中的數(shù)據(jù),可能會(huì)導(dǎo)致腳本攻擊,下面我們來(lái)看一個(gè)簡(jiǎn)單的例子。

先存儲(chǔ)一些數(shù)據(jù),然后進(jìn)行檢索。

如果這些數(shù)據(jù)沒(méi)有被很好的過(guò)濾,這可能會(huì)導(dǎo)致存儲(chǔ)XSS漏洞。這一次我們?cè)谙⒖蛑休斎?/p>

 
 
 
 
  1.  

點(diǎn)擊“Show Data”按鈕,看看結(jié)果

如我們所見(jiàn),網(wǎng)頁(yè)彈出警告框。

總結(jié)

本文討論了HTML5本地存儲(chǔ)特性是如何工作的,以及同源策略限制是如何應(yīng)用于數(shù)據(jù)存儲(chǔ)的。最后我們對(duì)其中可能發(fā)生的攻擊進(jìn)行了解,期待下一篇文章吧。


網(wǎng)站標(biāo)題:HTML5安全分析:本地存儲(chǔ)
路徑分享:http://www.5511xx.com/article/ccioojj.html