cookie

什么是xss攻击?

拥有回忆 提交于 2019-12-05 02:34:23
一.什么是xss攻击   跨站脚本攻击(XSS),英文全称 Cross Site Script   XSS攻击,一般是指黑客通过在网页中注入恶意脚本,当用户浏览网页时,恶意脚本执行,控制用户浏览器行为的一种攻击方式   XSS攻击分为三种,反射型XSS、存储型XSS、DOM Based XSS. 了解什么是xss攻击,例子:   本地服务器demo目录下有个index.php,通过提交信息显示在页面上显示数据。   正常情况下:http:localhost/demo/index.php?name=张三,   网页上就会显示张三出来,这个信息是用户在浏览器的url中输入的,可以正常显示在页面上,但是如果在页面中插入一段javascript代码,页面就无法正常显示了,   例:http:localhost/demo/index.php?name=<script>window.open(http://www.fanyi.com)</script>,   例子虽然简单但是提现xss攻击的完整流程。 1.反射性XSS   也被称为非持久性XSS,这种攻击方式把XSS的Payload写在URL中,通过浏览器直接“反射”给用户。用户将一段含有恶意代码的请求提交给 Web 服务器,Web 服务器接收到请求时,又将恶意代码反射给了浏览器端,这种攻击方式通常需要诱使用户点击某个恶意链接,才能攻击成功。

自己写Java Web遇到的坑(2)——删除cookie时删不掉

夙愿已清 提交于 2019-12-05 02:28:39
问题 我们知道,新设置一个cookie,需要指定它的path(路径),name(名字),和maxAge(存活时间)。对于maxAge(存活时间),有一些特殊的使用方法:设置成负数,代表当页面关闭时销毁cookie;设置成0,代表删除一个cookie。但是我偏偏遇到了将maxAge设为0删不掉cookie的问题。 对于这个问题,我失败有两个原因,一个比较有意义,另一个是对Java web常识出错。我都说一下 原理 比较有意义的一个错误是 没有设置需要删除的cookie的路径 :Java的HttpServletRequest的API(用的Tomcat)在获取Cookie的时候,只获取了名字和值,路径是null(我debug看到的是这样,原理上只能说 cookie的domain、path在服务器端都是只写的,服务器端不能读取 ,并不知道为何这样设计),这样就有一个问题:设置了cookie的存活时间之后,浏览器并不知道我们设置的是哪一个cookie的。这时,我们只需要在设置maxAge的时候,多写一行代码,setPath,就可以了。 延伸 (重点部分) 这里有一个问题,原则上,以及我看其他博客的说法,同一服务器上不同路径下是可以存在同名的Cookie的,但是我自己用Tomcat在(firefox)上测试却只能看到一个。 后又经搜索,发现操纵Cookie浏览器的行为还有差异

最详细的cookie和浏览隐私之间的关系

ぐ巨炮叔叔 提交于 2019-12-05 02:28:29
本文所说的"cookie",指的是浏览器相关的 cookie(也叫"HTTP cookie")。 浏览器 cookie 的主要功能是:帮助网站保存一些小片段的信息。比如,你曾经在自己的浏览器上登录过某个论坛,下次你再打开论坛的登录页面,你会发现用户名已经帮你填好 了,你只需要输入口令即可。那么,这个登录页面是如何知道你上次登录用的账户名捏?奥妙就在于:该网站在你的浏览器端保存了一个 cookie,里面包含了你上次登录使用的帐号名称。 Cookie 的技术实现 本章节面向懂技术的网友。不太懂技术的读者,可以略过本节,直接进入下一章节,以免浪费时间。 网站如何设置 cookie(写操作) 1、当你在浏览器中点某个书签、或者在浏览器地址栏输入某个网址,浏览器会向对应的网站发起一个 HTTP 请求(术语是 HTTP Request)。 2、然后,网站的服务器收到这个 HTTP 请求之后,会把相应的内容(比如网页、图片、等)发回给浏览器(这称为 HTTP 响应,术语是 HTTP Reponse)。 如果网站想设置 cookie,就在发回的 HTTP Response 中,包含一个设置 cookie 的指令。举例如下: Set-Cookie: user=xxxx; Path=/; Domain=www.example.com 上述这个例子中,设置了一个 cookie。这个 cookie 的"名

ASP.NET 后台 COOKIE 的设置

為{幸葍}努か 提交于 2019-12-05 02:26:08
这几年经常与安全打交道,深知 COOKIE 对一个网站的安全影响有多大,所以在编写相与 cookie 相关代码的时候,都会特别的小心。 最近做一个系统,有几个地方用到 cookie, 然后统一把 cookie 的几个属性都设置为自己认为最安全的状态: httponly: true, secure: true, samesite: strict。 然后发现,在使用 ajax 请求的时候, 服务器端服务了 cookie (有 set-cookie 头),但是再请求其他页面时,发现通过 ajax 请求设置的 cookie 都没有带过去, 通过开发者工具查看网站下面的 cookie,发现里面也没有。然后把同样的代码,放到一个普通的请求页面,发现设置的 cookie 又没有问题。 经过不断的测试,终于发现是 path 和 secure 引起的问题, 因为在本地测试,所以是使用 http, 这个时候把 secure 设置为 true, 通过 ajax 请求设置的 cookie 不会设置到网站,还有一个就是 path, 之前没有设置,导致 cookie 也不生效,最终把 secure 设置为 false, path 设置为 / 就好了。 来源: https://www.cnblogs.com/kuku/p/11897691.html

理解cookie,session,token

喜夏-厌秋 提交于 2019-12-05 02:24:21
彻底理解cookie,session,token 发展史 1、很久很久以前,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, 不需要记录谁在某一段时间里都浏览了什么文档,每次请求都是一个新的HTTP协议, 就是请求加响应, 尤其是我不用记住是谁刚刚发了HTTP请求, 每个请求对我来说都是全新的。这段时间很嗨皮 2、但是随着交互式Web应用的兴起,像在线购物网站,需要登录的网站等等,马上就面临一个问题,那就是要管理会话,必须记住哪些人登录系统, 哪些人往自己的购物车中放商品, 也就是说我必须把每个人区分开,这就是一个不小的挑战,因为HTTP请求是无状态的,所以想出的办法就是给大家发一个会话标识(session id), 说白了就是一个随机的字串,每个人收到的都不一样, 每次大家向我发起HTTP请求的时候,把这个字符串给一并捎过来, 这样我就能区分开谁是谁了 3、这样大家很嗨皮了,可是服务器就不嗨皮了,每个人只需要保存自己的session id,而服务器要保存所有人的session id ! 如果访问服务器多了, 就得由成千上万,甚至几十万个。 这对服务器说是一个巨大的开销 , 严重的限制了服务器扩展能力, 比如说我用两个机器组成了一个集群, 小F通过机器A登录了系统, 那session id会保存在机器A上, 假设小F的下一次请求被转发到机器B怎么办? 机器B可没有小F的

如何获取浏览器上次的会话数据(session)

一笑奈何 提交于 2019-12-05 02:22:57
如何获取浏览器上次的会话数据: 要知道上次会话session_id是多少? 让cookie保存的PHPSESSID的值不要浏览器一退出就被删除了? 所以我们要设置自己的session_id,不要系统自动生成的 所以我们要设置cookie保存的键=》值的生命周期修改,变长 <?php session_id(110); //改cookie保存的session id生命周期为10分钟 //这样cookie保存的PHPSESSID不会浏览器一退出就被删除 session_set_cookie_params(60*10); session_start(); echo "session_id=".session_id()."<br/>"; $_SESSION['name']="wuxifu001,hello,how do you do !!!!"; echo "hello<br/>"; ?> 获取的时候,也要同上设置 <?php session_id(110); //改cookie保存的session id生命周期为10分钟 //这样cookie保存的PHPSESSID不会浏览器一退出就被删除 session_set_cookie_params(60*10); session_start(); print_r($_SESSION); echo "<br/>"; print_r($_COOKIE

什么是接口测试?怎样做接口测试?

空扰寡人 提交于 2019-12-05 02:18:24
1.什么是接口? 2.接口都有哪些类型? 3.接口的本质是什么? 4.什么是接口测试? 5.问什么要做接口测试? 6.怎样做接口测试? 7.接口测测试点是什么? 8.接口测试都要掌握哪些知识? 9.其他相关知识? 1.什么是接口? 接口测试主要用于外部系统与系统之间以及内部各个子系统之间的交互点,定义特定的交互点,然后通过这些交互点来,通过一些特殊的规则也就是协议,来进行数据之间的交互。 2.接口都有哪些类型? 接口一般分为两种:1.程序内部的接口 2.系统对外的接口 系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的。 程序内部的接口:方法与方法之间,模块与模块之间的交互,程序内部抛出的接口,比如bbs系统,有登录模块、发帖模块等等,那你要发帖就必须先登录,那么这两个模块就得有交互,它就会抛出一个接口,供内部系统进行调用。 接口的分类:1.webservice接口 2.http api接口 webService接口是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。 http api接口是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的

HTTP、HTTPS、HTTP1.0、HTTP1.1

余生长醉 提交于 2019-12-05 02:03:42
HTTP:Hyper Text Transfer Protocol,超文本传输协议 HTTPS:Hyper Text Transfer over Secure Socket Layer Protocol,给予安全套接字层的超文本传输协议 HTTPS和HTTP的区别主要如下: 1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。 2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。 3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。 4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。 综上,可以简单的理解为HTTPS = HTTP+加密+认证+完整性保护(完整性保护不知道从哪里看出来的,有待进一步理解) 对于HTTP是无状态的,短连接、持久连接也蒙的,查资料得到下面的解释: 1、HTTP是一种无状态(stateless)协议 是说HTTP协议自身不对请求和响应之间的通讯状态进行保存,不保存之前一切请求和响应的报文信息,是为了更快的处理大量事务。 但是随着web发展,很多情况都需要保存用户的状态。比如用户登录到一家购物网站,即使他跳转到该网站的其他页面后,也需要能继续保持登录状态

前端开发面试题

江枫思渺然 提交于 2019-12-05 01:50:59
前端开发面试题 站点地址: 全栈开发 原文链接: 前端开发面试题 HTML Doctype作用?标准模式与兼容模式各有什么区别? 1、 <!DOCTYPE> 声明位于HTML文档中的第一行,处于 <html> 标签之前,告知浏览器的解析器用什么文档标准解析。DOCTYPE不存在或格式不正确会导致文档以兼容模式呈现。 2、标准模式的排版和JS运行模式都是以该浏览器支持的最高标准运行。在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作。 HTML5为什么只需要写 <!DOCTYPE HTML> ? HTML5不基于SGML(标准通用标记语言),因此不需要对DTD(文档类型定义)进行引用,但是需要 doctype 来规范浏览器的行为(让浏览器按照它们应该的方式来运行) HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型。 行内元素有哪些?块级元素有哪些?空( void )元素有哪些? 首先:CSS规范规定,每个元素都有 display 属性,确定钙元素的类型,每个元素都有默认的 display 值,如 div 的 display 默认值为 block ,都是块级元素; span 默认 display 属性值为 inline ,是行内元素。 1、行内元素: a 、 b 、 span 、 img 、 input 、

Bugku cookie欺骗

霸气de小男生 提交于 2019-12-05 01:13:53
莫名其妙的一段。。。。解码试试。。。 解不出来 抓包试试 无果。。。 观察 url ,发现有一个文件检索,然后 = 了一串代码,有 . 像 base64 ,试试 解出来是 kes.txt 。。。 试试 index.php 什么都没有。。。 Base64 加密的 index.php 试试 也什么都没用。。。。 观察到 url 中还有一个 line 参数,尝试赋值 似乎是源码的首段,试试赋值其他数字 逐步得到源码 分析源码,发现如果存在 cookie[‘margin’] 并且等于 margin 就让一个参数等于 keys.php 不多说直接试试 我们同样的 base64 编码 keys.php 然后加一个 cookie 刷新 没东西。。。。查看源码和抓包发现 flag 来源: https://www.cnblogs.com/wosun/p/11894779.html