1. 程式人生 > >記錄一些有關web安全以及cookie、session的文章

記錄一些有關web安全以及cookie、session的文章

span 時間 token 內容 acs 服務器 prot 方案 存儲型xss

session和cookie的區別和聯系:http://www.cnblogs.com/endlessdream/p/4699273.html

HTTP是無狀態的協議,那麽客戶端與服務端的數據一旦交互完畢,客戶端與服務器端的鏈接也就會關閉了,當再次交換數據的時候就需要建立新的鏈接,也就是服務器無法從鏈接上跟蹤會話;

會話跟蹤:是web程序中常用的技術,用來跟蹤用戶的整個會話的,常用的會話跟蹤技術是Cookie和Session。Cookie通過在客戶端記錄信息確定用戶身份後,Session通過在服務器端記錄信息確定用戶身份。

會話cookie一般不存儲在硬盤上而是保存在內存裏。如果設置了過期時間,瀏覽器會把cookie保存到硬盤上,存儲在硬盤上的cookie可以在瀏覽器的不同進程間共享,這種稱之為持久cookie。

cookie保存在客戶端瀏覽器中,具有不可跨域性。單個cookie保存的數據不能超過4k,很多瀏覽器都限制一個站點最多保存20個cookie。

session保存在服務器上。客戶端瀏覽器訪問服務器的時候,服務器把客戶端信息以某種形式記錄在服務器上。

因此可以考慮將登陸信息等重要信息存放為session,其他信息如果需要保留,可以放在cookie。

Web前端安全之XSS攻擊 http://www.haomou.net/2015/10/30/2015_webxss/

XSS漏洞分為兩種,一種是DOM Based XSS漏洞,另一種是Stored XSS漏洞。

基於DOM的XSS

DOM Based XSS是一種基於網頁DOM結構的攻擊,該攻擊特點是中招的少數人。

存儲型XSS

Stored XSS是存儲式XSS漏洞,由於其攻擊代碼已經存儲到服務器上或者數據庫中,所以受害者很多人。

XSS主要就是利用漏洞執行你需要的執行的js代碼,常見的XSS:

1 <img scr=1 onerror=alert(‘xss’)>當找不到圖片名為1的文件時,執行alert(‘xss’)
2 <a href=javascrip:alert(‘xss’)>s</a> 點擊s時運行alert(‘xss’)
3 <iframe 
src=javascript:alert(‘xss’);height=0 width=0 /><iframe>利用iframe的src來彈窗 4 <img src=”1″ onerror=eval(“/x61/x6c/x65/x72/x74/x28/x27/x78/x73/x73/x27/x29”)></img>過濾了alert來執行彈窗

基於Token的WEB後臺認證機制 http://www.cnblogs.com/xiekeli/p/5607107.html

Cookie Auth 就是在一次請認證的時候在服務器端創建一個session對象,同時在客戶端的瀏覽器創建一個cookie對象;通過客戶端帶來的cookie對象來與服務器端的session對象匹配來

實現狀體管理。

Token Auth

技術分享

Token Auth相對於Cookie Auth的有點

1、支持跨域訪問:前提是傳輸的用戶認證信息是通過HTTP頭傳輸的;

2、無狀態(也稱:服務端可擴展行):Token機制在服務端不需要存儲session信息,因為Token自身包含了所有登陸用戶的信息,只需要在客戶端的cookie或本地介質存儲狀態信息;

3、更適用CDN:可以通過內容分發網絡請求你服務端的所有資料(如:js/html/圖片等),而你的服務端只要提供API即可;

4、去耦:不需要綁定到一個特定的身份驗證方案。Token可以在任何的地方生成,只要在你API被調用的時候,你可以進行Token生成調用即可;

5、更適用移動應用:當你的客戶端是一個原生平臺(IOS,Android,windows 8等)時,Cookie是不被支持的(你需要通過cookie容器進行處理),這時采用Token認證機制就會簡單的多;

6、CSRF:因為不在依賴於cookie,所有就不需要考慮對CSRF(跨站請求偽造)的防範;

7、性能:一次網絡往返時間(通過數據庫查詢session信息)總比做一次HMACSHA256計算的Token驗證和解析要費時的多;

8、不需要為登陸頁面做特殊處理:如果你使用Protractor做功能測試的時候,不再需要為登陸頁面做特殊處理;

9、基於標準化:你的API可以采用標準化的JSON WEB Token(JWT)。這個標準已經存在多個後端庫和多家公司的支持。

記錄一些有關web安全以及cookie、session的文章