cookie

如何用cookie保存用户的登录的密码和用户名

帅比萌擦擦* 提交于 2020-02-26 04:04:06
思路:绘制一个简单的登录界面的Servlet并要在此页面中读取保存密码和用户名的cookie---》在登录处理界面的servlet中把用户名和密码保存到cookie中 //登录界面的Servlet的代码如下: package com.qls.view; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class Login extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=utf-8");

bugku_web_flag.php

冷暖自知 提交于 2020-02-26 01:15:43
第一步就死了:原来是要GET传参啊!http://120.24.86.145:8002/flagphp/?hint=1 个人反思:   一般攻击入口只有两个:   1、URL框   2、页面中的输入框   当我在URL框中想半天寻找攻击点的时候,只想到了用御剑去扫描目录然后来查看一些文件,就没有想到GET传递,实在是一大失误。 我以为只要把ISecer:www.isecer.com序列化一下,然后bp提交cookie就行了呢! 后来才发现,验证cookie的时候$KEY根本没有定义,所以我们提交的cookie的值应该为空! 又从这段验证代码: elseif (unserialize($cookie) === "$KEY") 还需要类型相同,因为是“$KEY”所以我们提交的cookie要是一个空字符串 所以payload: 来源: https://www.cnblogs.com/huangming-zzz/p/9742649.html

大厂面试题:集群部署时的分布式 session 如何实现?

自作多情 提交于 2020-02-25 23:26:02
面试官心理分析 面试官问了你一堆 dubbo 是怎么玩儿的,你会玩儿 dubbo 就可以把单块系统弄成分布式系统,然后分布式之后接踵而来的就是一堆问题,最大的问题就是分布式事务、接口幂等性、分布式锁,还有最后一个就是分布式 session。 当然了,分布式系统中的问题何止这么一点,非常之多,复杂度很高,这里只是说一下常见的几个问题,也是面试的时候常问的几个。 面试题剖析 session 是啥?浏览器有个 cookie,在一段时间内这个 cookie 都存在,然后每次发请求过来都带上一个特殊的 jsessionid cookie,就根据这个东西,在服务端可以维护一个对应的 session 域,里面可以放点数据。 一般的话只要你没关掉浏览器,cookie 还在,那么对应的那个 session 就在,但是如果 cookie 没了,session 也就没了。常见于什么购物车之类的东西,还有登录状态保存之类的。 这个不多说了,懂 Java 的都该知道这个。 单块系统的时候这么玩儿 session 没问题,但是你要是分布式系统呢,那么多的服务,session 状态在哪儿维护啊? 其实方法很多,但是常见常用的是以下几种: 完全不用 session 使用 JWT Token 储存用户身份,然后再从数据库或者 cache 中获取其他的信息。这样无论请求分配到哪个服务器都无所谓。 tomcat +

Cookie&Session

ぃ、小莉子 提交于 2020-02-25 22:08:07
会话技术 会话:一次会话中包含多次请求和响应。 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止 功能:在一次会话的范围内的多次请求间,共享数据 方式: 客户端会话技术:Cookie 服务器端会话技术:Session Cookie 概念:客户端会话技术,将数据保存到客户端 快速入门: 使用步骤: 创建Cookie对象,绑定数据 new Cookie(String name, String value) 发送Cookie对象 response.addCookie(Cookie cookie) 获取Cookie,拿到数据 Cookie[] request.getCookies() 实现原理 基于响应头set-cookie和请求头cookie实现 cookie的细节 一次可不可以发送多个cookie? 可以 可以创建多个Cookie对象,使用response调用多次addCookie方法发送cookie即可。 cookie在浏览器中保存多长时间? 默认情况下,当浏览器关闭后,Cookie数据被销毁 持久化存储: setMaxAge(int seconds) 正数:将Cookie数据写到硬盘的文件中。持久化存储。并指定cookie存活时间,时间到后,cookie文件自动失效 负数:默认值 零:删除cookie信息 cookie能不能存中文? 在tomcat 8 之前

python爬虫(六) Cookie

杀马特。学长 韩版系。学妹 提交于 2020-02-25 20:56:36
什么是Cookie 在网站中,http的请求通常是无状态的(第一个和服务器连接并且登录之后,此时服务器知道是哪个用户,但是当第二次请求服务器时,服务器依然不知道当前请求的是哪个用户),cookie就是为了解决这个问题,第一次登录服务器后,服务器会返回与刚刚用户相关的数据(也就是cookie)给浏览器,浏览器将cookie保存在本地,当这个用户第二次请求服务器时,就会把上次存储的cookie自动携带给服务器,服务器通过这个cookie就知道当前是哪个用户。cookiede存储数据有限,不同的浏览器存储大小不同。一般不超过4kb。 在一些爬虫中,我们在进入一个页面之前需要先登录,比如人人网,我们想要在人人网中浏览大鹏的主页,就要先注册登录,然后才能浏览,那么在爬虫时,如何保持登录状态呢? 就需要在请求头中加入cookie。 我们在页面中右击-选择查看元素-然后选择network-刷新选择第一个profile-然后找到cookie 把cookie放到外我们代码的请求头中 # 使用cookie如何保持登录 from urllib import request dapeng_url='http://www.renren.com/880151247/profile' headers={ 'User-Agent':"Mozilla/5.0 (Windows NT 10.0; WOW64)

面试常考之cookie,localStorage, sessionStorage三者区别

|▌冷眼眸甩不掉的悲伤 提交于 2020-02-25 20:51:48
相同点 : 都是保存在浏览器端,和服务器端的session机制不同 不同点 : 1.cookie始终在同源的http请求中携带,即使不需要,cookie也能在浏览器和服务器中来回传递。 而localStorage和sessionStora 仅仅在本地存储 ,不会和服务器通信,也不会自动把数据发送给服务器。 2. 存储大小不同: cookie为4kb左右;localStorage,sessionStorage可以达到5M 3 . 数据有效期不同: sessionStorage仅在同源窗口中有效,属于会话级别的存储,关闭窗口就消失了,cookie可以 设置过期时间 ,localStorage 长期有效 4.localStorage, sessionStorage有 现成的API , cookie需要程序员 手动封装 来源: https://www.cnblogs.com/Ky-Thompson23/p/12363531.html

Django学习笔记(5):Cookie和Session

爱⌒轻易说出口 提交于 2020-02-25 20:13:50
文章目录 1.状态保持:Cookie 2.状态保持:Session request.session对象常用方法 3.案例:记住用户的登录状态 4.cookie和session的应用场景 1.状态保持:Cookie HTTP协议是无状态的,下一次访问一个页面时并不知道上一次对这个页面进行了怎样的操作。 Cookie是基于web安全的。 如何设置Cookie:需要一个HttpResponse对象或他子类的对象(HttpResponseRedirect,JsonResponse),其有一个set_cookie方法。 Cookie是一个字典。 示例: views.py def set_cookie ( request ) : response = HttpResponse ( 'set_cookie' ) response . set_cookie ( 'num' , 1 ) return response def get_cookie ( request ) : num = request . COOKIES [ 'num' ] return HttpResponse ( num ) Cookie是有时间的,若不设置过期时间,默认在浏览器关闭后就会删除。 设置过期时间为两周之后 response . set_cookie ( 'num' , 1 , max_age = 14 * 24 *

跨域解决方案

假如想象 提交于 2020-02-25 18:21:46
1.通过jsonp跨域 2.document.domain.iframe跨域 3.location.hash + iframe 4.window.name + iframe跨域 5.postMessage跨域 6.跨域资源共享(CORS) 7.nginx代理跨域 8.nodejs中间件代理跨域 9.WebSocket协议跨域 一、JSONP JSONP的原理很简单,就是利用<script>标签没有跨域限制的漏洞。通过<script>标签指向一个需要访问的地址并提供一个回调函数来接收数据当需要通讯时。JSONP使用简单且兼容性不错,但是只限于get请求。 function jsonp(url, jsonpCallback, success) { let script = document.createElement('script') script.src = url script.async = true script.type = 'text/javascript' window[jsonpCallback] = function(data) { success && success(data) } document.body.appendChild(script) } jsonp('http://xxx', 'callback', function(value) {

认识与防御XSS攻击

◇◆丶佛笑我妖孽 提交于 2020-02-25 17:27:07
什么是xss攻击? XSS,即(Cross Site Scripting)中文名称为“跨站脚本攻击”。 XSS的重点不在于跨站攻击而在于脚本攻击。攻击者可以利用 web应用的漏洞或缺陷之处,向页面注入恶意的程序或代码,以达到攻击的目的。 通俗的来说就是我们的页面在加载并且渲染绘制的过程中,如果加载并执行了意料之外的程序或代码(脚本、样式),就可以认为是受到了 XSS攻击。 XSS的危害 通过 document.cookie 盗取 cookie中的信息 使用 js或 css破坏页面正常的结构与样式 流量劫持(通过访问某段具有 window.location.href 定位到其他页面) dos攻击:利用合理的客户端请求来占用过多的服务器资源,从而使合法用户无法得到服务器响应。并且通过携带过程的 cookie信息可以使服务端返回400开头的状态码,从而拒绝合理的请求服务。 利用 iframe、frame、XMLHttpRequest或上述 Flash等方式,以(被攻击)用户的身份执行一些管理动作,或执行一些一般的如发微博、加好友、发私信等操作,并且攻击者还可以利用 iframe,frame进一步的进行 CSRF 攻击。 控制企业数据,包括读取、篡改、添加、删除企业敏感数据的能力。 XSS攻击分类 XSS 根据攻击是否持久,可以分为 “反射型XSS”与“存储型XSS”两种。 “反射型XSS

Django - 设置 session 过期时间(登录过期时间)

六月ゝ 毕业季﹏ 提交于 2020-02-25 16:10:19
settings.py # session 设置 SESSION_COOKIE_NAME = "sessionid" # Session的cookie保存在浏览器上时的key,即:sessionid=随机字符串(默认) SESSION_COOKIE_PATH = "/" # Session的cookie保存的路径(默认) SESSION_COOKIE_DOMAIN = None # Session的cookie保存的域名(默认) SESSION_COOKIE_SECURE = False # 是否Https传输cookie(默认) SESSION_COOKIE_HTTPONLY = True # 是否Session的cookie只支持http传输(默认) SESSION_COOKIE_AGE = 1209600 # Session的cookie失效日期(2周)(数字为秒数)(默认) SESSION_EXPIRE_AT_BROWSER_CLOSE = False # 是否关闭浏览器使得Session过期(默认) SESSION_SAVE_EVERY_REQUEST = False # 是否每次请求都保存Session,默认修改之后才保存(默认) 在settings.py文件任意位置(推荐底部,方便查找)添加即可 如果设置的是默认参数,那么可以比用添加到settings.py