WEB應(yīng)用體系之Web傳輸協(xié)議中的缺乏狀態(tài)跟蹤
3)缺乏狀態(tài)跟蹤
HTTP協(xié)議采取的請(qǐng)求、響應(yīng)模式?jīng)Q定了它是一個(gè)無(wú)狀態(tài)的協(xié)議。客戶端在需要與服務(wù)器連接時(shí)才建立TCP連接,獲取完連接數(shù)據(jù)后,TCP連接就被斷開,再次交換數(shù)據(jù)需要建立新的連接,因此HTTP協(xié)議不會(huì)維持一個(gè)持續(xù)的會(huì)話。這一機(jī)制在Webl.0時(shí)代不會(huì)產(chǎn)生問(wèn)題,而在Web2.0時(shí)代,由于交互性的要求,需要提供狀態(tài)機(jī)制。Session是用于解決http無(wú)協(xié)議缺乏狀態(tài)跟蹤的方式,但是也帶來(lái)了相應(yīng)的安全問(wèn)題。對(duì)于已經(jīng)驗(yàn)證過(guò)的用戶,只Session ID就可以稱為身份驗(yàn)證的方式,攻擊者如果能獲取用戶的有效會(huì)話Session ID(服務(wù)器沒(méi)有釋放這個(gè)session ID,無(wú)需用戶名和密碼,就能以此用戶的身份去操縱Web應(yīng)用,這種攻擊方式被稱為Session欺騙。
針對(duì)Http協(xié)議存在的安全問(wèn)題,解決措施是在HTTP的基礎(chǔ)上加入了SSL協(xié)議,這就是安全套接字層超文本傳輸協(xié)議(Hyper Text Transfer Protocol over Secure Socket Layer,Htts)。 SSL依靠證書來(lái)驗(yàn)證服務(wù)器的身份,并為瀏覽器和服務(wù)器之間的通信加密。相比Http協(xié)議,https具有較高的安全性,但對(duì)系統(tǒng)性能的開銷更大,隨著云計(jì)算技術(shù)的發(fā)展,服務(wù)端提高計(jì)算禽旨力的成本越來(lái)越低,全站https逐步已經(jīng)成為一些高安全web應(yīng)用的選擇。