讀《白帽子講web安全》 ——筆記

第二章 瀏覽器安全

什麼是同源策略?

同源策略,它是由Netscape提出的一個著名的安全策略。shell

如今全部支持JavaScript 的瀏覽器都會用到使用這個策略。跨域

所謂同源是指,域名,協議,端口相同。瀏覽器

當一個瀏覽器的兩個tab頁中分別打開來 百度和谷歌的頁面。安全

當瀏覽器的百度tab頁執行一個腳本的時候會檢查這個腳本是屬於哪一個頁面的。架構

即檢查是否同源,只有和百度同源的腳本纔會被執行。dom

若是非同源,那麼在請求數據時,瀏覽器會在控制檯中報一個異常,提示拒絕訪問。網站

同源策略的做用:

瀏覽器的同源策略,限制了來自不一樣源的文件或腳本,對當前文件讀取或設置某些屬性。google

瀏覽器提出「Origin(源)」這一律念,來防止瀏覽器的頁面行爲發生混亂,不一樣源的對象沒法互相干擾。spa

當a.com經過代碼<script src=http://b.com/b.js ></script>加載了b.com上的b.js,可是因爲b.js運行在a.com頁面中,因此b.js的源就是a.com而非b.com(對當前頁面而言)設計

當帶「src」屬性的標籤須要跨站加載時,瀏覽器會發起一次GET請求。瀏覽器會限制其js的權限,使其不能讀or寫返回的內容。

若是XMLHttpRequest能跨域訪問資源,則會致使敏感數據泄露,從而發生安全問題。

XMLHttpRequest跨域訪問標準:經過目標域返回的HTTP頭來受權是否容許。 方案安全基礎:JS沒法控制HTTP頭。

瀏覽器沙箱(Sandbox):

Sandbox設計目的:爲了讓不可信任的代碼運行在必定的環境中,限制不可信任的代碼訪問隔離區以外的資源。emmmmm,有點像新冠隔離哈哈哈哈哈。

 

Google Chrome 的 Sandbox架構

多進程架構最明顯的好處就是在瀏覽器發生崩潰時,多進程瀏覽器只會崩潰當前Tab頁,對其餘頁面沒有影響

2.3惡意網址攔截

對處於「黑名單」的惡意網址進行攔截。常見的惡意網站:一類是掛馬網站(這類網站一般包含惡意的腳本如JS或Flash,經過利用瀏覽器漏洞來執行shellcode,在電腦中植入木馬);另外一類釣魚網站(經過模仿知名網站的類似頁面來欺騙用戶)。

主流瀏覽器開始支持EV SSL證書,以加強對安全網站的識別。

2.4高速發展的瀏覽器安全

今天瀏覽器仍在不斷更新,微軟在IE8中推出的XSS Filter功能,能夠修改XSS攻擊的腳本中的關鍵字,使其攻擊無效,並對用戶彈出提示框。

使用CSP的方法以下,插入一個HTTP返回頭:

X-Content-Security-Policy:policy

其中policy的描述很靈活,好比:

X-Content-Security-Policy:allow 'self' *.mydomain.com

這樣瀏覽器將信任來自mydomain.com及其子域下的內容。

隨着瀏覽器的發展,客戶的瀏覽體驗也愈來愈好,但隨之而來的是許多看似「友好」的功能可能會致使一些安全隱患

例如許多瀏覽器地址欄會對畸形的URL進行處理,www.google.com\abc會被識別爲正常的www.google.com/abc

若是這類「友好」的功能被和黑客利用,可能會用於繞過一些安全軟件或模塊。

第三章 跨站腳本攻擊(XSS)待更新......

好吧,事實是我還沒看到後邊hhhhh~

相關文章
相關標籤/搜索