cookie和session, cookie和webStorage的区别,如果cookie被篡改怎么办?
 
  • Cookie是web服务器通过set-cookies http返回头可以保存小部分信息到客户的浏览器, 每个cookie字符通常需要小于4KB, 个数不同浏览器也有不同限制。大多web开发都使用cookie去实现会话session,以jsp为例:

服务器响应.

Set-Cookie:JSESSIONID=64D21B4D69DFB3041B6375C1932BD6CB; Path=/

浏览器请求,会把对应域名的服务器的所有 cookie每次请求都会发送

Cookie:JSESSIONID=64D21B4D69DFB3041B6375C1932BD6CB

依靠这个唯一的JSESSIONID则服务器可以知道这个是同一个用户的请求。

  • session是服务器端为了识别同一个浏览器用户使用到的封装,web服务器的会话一般使用cookie实现。在会话里我们可以保存用户登录后的一些信息。

  • webStorage是HTML5之后支持的浏览器存储, 能存储比cookie大的内容,一般是若干MB,,分为本地存储localStorage和sessionStorage, 也是部分为了替代cookie的使用, 但不学cookie每次请求都需要通过http请求发送过去, webStorage可以做离线内容缓存,减少与服务器端数据交互。

  • cookie被篡改, 或者更多的应该是cookie被盗取, 如果是服务器端的漏洞, 例如跨站XSS,服务器端没做好内容过滤, 导致渲染内容执行了不该执行的js导致用户cookie被盗取, 服务器编程就需要转义或删除客户发送过来的不安全的包含js的富文本。如果客户端cookie被病毒盗取就比较无奈了,因为现在很多网站自动登录等都只使用cookie做会话标记, 客户端安全些最好使用无痕等模式浏览,每次退出可以清除cookie.



  学习学习
HTTP 1.x协议
发表于:2017-09-21 11:08
状态: 已解决
  问题人
kidd
问题:34 答题:0
心得:0 被赞:0
  答题人
Zealot
问题:4 答题:98
心得:44 被赞:0
支付宝扫码支付