cookie

Cookie详解整理

被刻印的时光 ゝ 提交于 2019-12-16 14:44:44
1.Cookie的诞生 由于HTTP协议是无状态的,而服务器端的业务必须是要有状态的。Cookie诞生的最初目的是为了存储web中的状态信息,以方便服务器端使用。比如判断用户是否是第一次访问网站。目前最新的规范是RFC 6265,它是一个由浏览器服务器共同协作实现的规范。 2.Cookie的处理分为: 1.服务器像客户端发送cookie 2.浏览器将cookie保存 3之后每次http请求浏览器都会将cookie发送给服务器端,服务器端的发送与解析 3.发送cookie 服务器端像客户端发送Cookie是通过HTTP响应报文实现的,在Set-Cookie中设置需要像客户端发送的cookie,cookie格式如下: Set-Cookie: "name=value;domain=.domain.com;path=/;expires=Sat, 11 Jun 2016 11:29:42 GMT;HttpOnly;secure" 其中name=value是必选项,其它都是可选项。Cookie的主要构成如下: name:一个唯一确定的cookie名称。通常来讲cookie的名称是不区分大小写的。 value:存储在cookie中的字符串值。最好为cookie的name和value进行url编码 domain:cookie对于哪个域是有效的。所有向该域发送的请求中都会包含这个cookie信息。

使用vue-cookies

时光总嘲笑我的痴心妄想 提交于 2019-12-16 14:24:29
1、在项目中安装vue-cookies: npm install vue-cookies --save 或 yarn add vue-cookies --save    2、全局引用: //在 main.js 中引入 // require es5 方法 var Vue = require('vue') Vue.use(require('vue-cookies')) // 挂在在全局了 // es6 方法 import Vue from 'Vue' import VueCookies from 'vue-cookie' Vue.use(VueCookies) // 挂在在全局了 3、使用vue-cookies 设置cookie: this.$cookies.set(keyName, keyValue, time)   获取cookie: this.$cookies.get(keyName)   删除cookie: this.$cookies.remove(keyName) 检测一个cookie是否存在: this.$cookies.isKey(keyName) // 返回true or false   获取所有cookie名称: this.$cookies.keys()    来源: https://www.cnblogs.com/zaijin-yang/p/12048281

WebAPI之postman变量和session/token

混江龙づ霸主 提交于 2019-12-16 12:05:33
postman使用变量: 之前我们请求里面的主机地址都是localhost,表示本机。而在实际测试过程中,服务器地址往往并非是在本机上的,这时候就需要用到变量。 postman支持多个测试环境,一个环境里可以配置多个变量。 postman的变量主要分两种类型: ① 环境里面的变量 - 点击界面右上角的齿轮图标,选择Manage Environments - 在弹出对话框中,点击Add按钮,填写环境名 ENVIRONMENT NAME 、VARIABLE、CURRENT VALUE 如 :server1 serverip http://localhost - 这样一套环境就创建好了。创建好厚,就需要使用 可以将所有请求的url中的主机名localhost替换为为变量名{{server1}} 如 https://{{server1}}/api/pagenum - 注意:双花括号将变量名括起来,双花括号就表示里面是一个变量。 - 当进行测试时,若使用的是本机的API服务,那就选择名为server1配置的环境;若使用不是本地的,就选择server2的环境,postman就会使用不同环境里面的变量对应的值。 ② 全局变量 - 有时候,有些变量,我们并不需要配置到很多套环境里,因为基本上这就是一个固定值,要修改的话,所有的环境里面都要修改。 - 我们没有必要创建变量到环境中

【系统安全】cookie未设置Httponly属性和未设置Secure标识

三世轮回 提交于 2019-12-16 09:16:33
第三方公司做了系统安全测试,提出了这个问题。 详细描述 会话cookie中缺少HttpOnly属性会导致攻击者可以通过程序(JS脚本、Applet等)获取到用户的cookie信息,造成用户cookie信息泄露,增加攻击者的跨站脚本攻击威胁。 HttpOnly是微软对cookie做的扩展,该值指定cookie是否可通过客户端脚本访问。Microsoft Internet Explorer 版本 6 Service Pack 1 和更高版本支持cookie属性HttpOnly。 如果在Cookie中没有设置HttpOnly属性为true,可能导致Cookie被窃取。窃取的Cookie可以包含标识站点用户的敏感信息,如ASP.NET会话ID或Forms身份验证票证,攻击者可以重播窃取的Cookie,以便伪装成用户或获取敏感信息,进行跨站脚本攻击等。 如果在Cookie中设置HttpOnly属性为true,兼容浏览器接收到HttpOnly cookie,那么客户端通过程序(JS脚本、Applet等)将无法读取到Cookie信息,这将有助于缓解跨站点脚本威胁。 解决办法 向所有会话cookie中添加“HttpOnly”属性。 Java示例: HttpServletResponse response2 = (HttpServletResponse)response; //response2

EL表达式

五迷三道 提交于 2019-12-16 07:12:18
EL表达式的初步认识 为了使jsp页面写起来更加简单,EL表达式应运而生。 MyServlet:向request赋值 request.setAttribute(“username”,“itcast”); request . setAttribute ( "password" , "123456" ) ; > request . getRequestDispatcher ( "my.jsp" ) . forword ( request , response ) ; My.jsp > 用户名: < %= request . getAttribute ( "username" ) % > > > 密码: < %= request . getAttribute ( "password" ) % > My.jsp > 用户名:$ { username } > > 密码:$ { password } 域对象:page request session application EL隐式对象 jsp九大隐式对象 1.request:HttpServletRequest 2.response:HttpServletResponse 3.config:ServletConfig 4.application:ServletContext 5.exception:异常对象

JSP cookie记住用户名密码

[亡魂溺海] 提交于 2019-12-16 05:12:44
JSP cookie记住用户名密码 login.jsp < body > < % // 获取cookie Cookie [ ] cookies = request . getCookies ( ) ; String username = "" ; String password = "" ; if ( cookies != null ) { for ( Cookie c : cookies ) { if ( "USERNAME" . equals ( c . getName ( ) ) ) { username = c . getValue ( ) ; } if ( "PASSWORD" . equals ( c . getName ( ) ) ) { password = c . getValue ( ) ; } } } % > < form action = "check.jsp" method = "get" > < input type = "text" name = "username" placeholder = "请输入用户名" value = "<%=username %>" > < br > < br > < input type = "password" name = "password" placeholder = "请输入用密码" value = "<%

Flask系列-cookie和session笔记

ぃ、小莉子 提交于 2019-12-16 04:59:36
cookie: 1. cookie 出现的原因:在网站中,http请求是无状态的。也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户。cookie的出现就是为了解决这个问题,第一次登录后服务器返回一些数据(cookie)给浏览器,然后浏览器保存在本地,当该用户发送第二次请求的时候,就会自动的把上次请求存储的cookie数据自动的携带给服务器,服务器通过浏览器携带的数据就能判断当前用户是哪个了。 2.如果服务器返回了 cookie 给浏览器,那么浏览器下次再请求相同的服务器的时候,就会自动的把 cookie 发送给浏览器,这个过程,用户根本不需要管。 3. cookie 是保存在浏览器中的,相对的是浏览器。 session: 1. session 介绍:session和cookie的作用有点类似,都是为了存储用户相关的信息。不同的是,cookie是存储在本地浏览器,而session存储在服务器。存储在服务器的数据会更加的安全,不容易被窃取。但存储在服务器也有一定的弊端,就是会占用服务器的资源,但现在服务器已经发展至今,一些session信息还是绰绰有余的。 2.使用 session 的好处: * 敏感数据不是直接发送回给浏览器,而是发送回一个`session_id`,服务器将`session_id`和敏感数据做一个映射存储在`session

渗透测试之Dina-v1.0

余生颓废 提交于 2019-12-16 04:21:38
0x00 信息搜集 主机发现: 端口扫描:只开放了80端口,只能从web服务入手 上面显示存在robots.txt。 接着查看robots.txt 分别浏览目录,发现一个nothing文件夹存在敏感信息:显示较多密码,可以搜集起来组合成为一个字典,可能存在用处。 其余目录都是这个亚子的: 尝试进行一下目录扫描:发现一个robots中没有显示的目录:secure 0x01 渗透测试过程: 访问secure发现存在一个压缩包,但是存在密码,将之前的密码全部导入,尝试爆破,密码为freedom: 扩展名是mp3文件,但是打开显示失败,用文件类型分析工具没有匹配到特征码: 直接用记事本打开,发现是一个文本文件,里面有下一步的提示: 访问上面的url,找到系统后台,更加文本的提示,登录名是touhid,密码是一个弱口令,使用之前按拿到的密码字典尝试爆破。(因为存在token校验,所以只能手动爆破),然后获取到正确的密码diana,成功进入后台: 在找到后台的同时发现是playSMS的系统,尝试使用searchexploit查找可用的漏洞,发现存在较多,但是都是需要登录后台: 经过尝试存在文件文件上传位置的命令执行,且有可利用的msf框架: 使用相应的模块,然后配置参数,一键攻击成功。 其中有一个很重要的点就是设置漏洞路径,如果文件上传的路径不正确就无法成功攻击。 0x02 手动测试

localstorage、sessionstorage以及cookie的概念区别?

让人想犯罪 __ 提交于 2019-12-16 04:08:12
基本概念 localstorage是HTML5标准中新加入的技术,早起考虑到兼容性的问题没有广泛使用,现在已经被大多数浏览器所支持. sessionstorage会话,可以将一部分数据在当前会话中保存下来,刷新页面数据依旧存在。但是关闭页面后数据会被清空。 cookie主要用来保存登录信息,就比如随便一个网站上登录时可以看到记住密码,可以在本地保存一段时间。 区别: Cookie:大小在4kb左右,可以设置有效期;若没有设置有效期,则关闭浏览器后cookie值就会被清除掉;若设置过期时间;cookie会存放在硬盘中,过期才会失效。Cookie的作用域在所有同源窗口中都是共享的。通信方式:cookie在浏览器和服务器之间来回传递。 SessionStorage:大小在5Mb左右,仅在当前浏览器窗口关闭之前有效,关闭页面或者浏览器会被清除。作用域在同一个浏览器窗口是共享的(不同浏览器、同一个页面也是不共享的)。通信方式:仅在客户端(浏览器)中保存,不参与服务器通信。 Localstorage:大小在5Mb左右,永久有效;即使窗口或者浏览器关闭也会一直保存,除非手动永久清除。作用域为所有同源窗口中都是共享的。通信方式:仅在客户端(浏览器)中保存,不参与和服务器的通信 来源: CSDN 作者: Stary_Night 链接: https://blog.csdn.net/Stary

1分钟带你理解Java Web开发必掌握的:Token ,Cookie,Session

非 Y 不嫁゛ 提交于 2019-12-16 00:36:33
在Web应用中,HTTP请求是无状态的。即:用户第一次发起请求,与服务器建立连接并登录成功后,为了避免每次打开一个页面都需要登录一下,就出现了cookie,Session。 Cookie Cookie是客户端保存用户信息的一种机制,用来记录用户的一些信息,也是实现Session的一种方式。Cookie存储的数据量有限,且都是保存在客户端浏览器中。不同的浏览器有不同的存储大小,但一般不超过4KB。因此使用Cookie实际上只能存储一小段的文本信息。 例如:登录网站,今输入用户名密码登录了,第二天再打开很多情况下就直接打开了。这个时候用到的一个机制就是Cookie。 Session Session是另一种记录客户状态的机制,它是在服务端保存的一个数据结构(主要存储的的SessionID和Session内容,同时也包含了很多自定义的内容如:用户基础信息、权限信息、用户机构信息、固定变量等),这个数据可以保存在集群、数据库、文件中,用于跟踪用户的状态。 客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上。这就是Session。客户端浏览器再次访问时只需要从该Session中查找该客户的状态就可以了。 用户第一次登录后,浏览器会将用户信息发送给服务器,服务器会为该用户创建一个SessionId,并在响应内容(Cookie)中将该SessionId一并返回给浏览器