cookie

会话劫持漏洞小结——cookie劫持的方式、属性、原理、危害及防御

戏子无情 提交于 2019-12-29 22:37:09
会话劫持 概念 会话劫持(Session hijacking)是一种通过获取用户Session ID后,使用该Session ID登录目标账号的攻击方法,此时攻击者实际上是使用了目标账户的有效Session。会话劫持的第一步是取得一个合法的会话标识来伪装成合法用户。 注:Session ID一般都设置在cookie 步骤 目标用户需要先登录站点 登录成功后,该用户会得到站点提供的一个会话标识SessionID 攻击者通过某种攻击手段捕获Session ID 攻击者通过捕获到的Session ID访问站点即可获得目标用户合法会话 原理图 获取cookie 了解cookie接口:找到Session ID位置进行破解 暴力破解:尝试各种Session ID,直到破解为止 预测:如果Session ID使用非随机的方式产生,那么就有可能计算出来 窃取:XSS攻击、使用网络嗅探(中间人攻击)等方法获得 XSS攻击劫持cookie 中间人攻击劫持cookie 危害 冒充其他人做事情:被冒充的人的权限越大,可以做的事情越多,比如:更改用户信息、进行转账、购买物品 对网站的影响:因为投诉等原因,会出现信誉下降、客户认为网站本身不可信 cookie机制 在动态网页语言中,某个用户(浏览器)访问(登陆)后,可以一直记录状态。这种状态浏览器使用Cookie来保存。

Javaweb笔记05课后作业

对着背影说爱祢 提交于 2019-12-29 21:54:20
(1)使用Cookie简化用户登录 login.jsp界面 代码如下: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>登录界面</title> </head> <body> <form action="index.jsp" method="post"> 用户名:<input type="text" name="user"/> <input type="submit" value="提交"/> </form> </body> </html> index界面代码 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>欢迎您</title> </head> <body> <% String

关于session

◇◆丶佛笑我妖孽 提交于 2019-12-29 21:43:52
1.session是什么? session 指的是会话,但是后端人员常说的session,全程叫:服务器session会话存储 2.特点 (1)存在于服务端 (2)存储的是浏览器和服务器之间沟通产生的一些信息 3.存储 默认session的存储在服务器的内存中,每当一个新的客户端发来请求,服务器都会新开辟初一块空间,供session使用。 4.工作流程 -- 第一次浏览器请求服务器的时候,服务器会开辟初一块内存空间,供session会话使用。 -- 返回响应的时候,会自动返回一个cookie,(有时候,会返回多个,为了安全)cookie里包含着,上一步会话存储“容器”的编号(id) -- 以后请求的时候,回自动携带这个cookie,给服务器 -- 服务器从该cookie中拿到对应的session的id,去服务器中匹配 -- 服务器会根据匹配信息,决定下一步的业务逻辑。 5.备注 1. 一般来说。cookie一定会配合session使用 2. 服务端一般会做session的持久化,防止由于服务器重启,造成的session丢失。 6.举个🌰: 在server.js中 6.1.引入express-session模块 (用于在exporess 中操作session) let session = require(‘express-session’) 6.2.引入connect-mongo

存储型XSS结合XSS平台获取cookie信息进后台

自古美人都是妖i 提交于 2019-12-29 19:30:22
实验目的:利用存储型XSS获取管理员Cookie信息,修改本地Cookie信息为管理员Cookie,以管理员身份不输入用户名、密码直接登陆后台 受害者浏览器:谷歌浏览器(也就是网站管理员使用的浏览器) 攻击者浏览器:火狐渗透便捷版浏览器 一、攻击者利用XSS漏洞攻击过程 第一步:使用火狐渗透测试便捷版浏览器打开目标网站 第二步:找到可以发表评论的地方,输入进行XSS测试,看是否弹窗,若弹窗则说明目标网站存在存储型XSS漏洞 此处,选择第一篇文章 下滑找到发表评论的位置,按照图中写入测试代码之后,点击提交发表 点击提交发表,立马弹窗提示/XSS/,说明存在XSS漏洞 第三步:用XSS平台对XSS漏洞进行利用 百度搜索XSS平台,选择第一个(这个平台需要注册账号,注册一下即可) 注册完成之后,输入用户名密码登录 首次登陆界面如下图所示,点击创建项目 项目名称与描述随便填写,自己认识就行 第四步:选择默认模块和keepsession (默认模块是获取cookie信息的) Keepsession:维持会话有效期 反之,不维持 keepsession功能说明 首先简单说明一下【XSS利用之延长Session生命周期】,说白了就是携带你X到的cookie访问对应的URL地址,一般情况下,如果你X到了对方的cookie,时间长不访问(默认21分钟)后,这个cookie就会失效

常见认证机制

假装没事ソ 提交于 2019-12-29 16:03:55
常见的认证机制 HTTP Basic Auth HTTP Basic Auth简单点说明就是每次请求API时都提供用户的username和password,简言之,Basic Auth是配合RESTful API 使用的最简单的认证方式,只需提供用户名密码即可,但由于有把用户名密码暴露给第三方客户端的风险,在生产环境下被使用的越来越少。因此,在开发对外开放的RESTful API时,尽量避免采用HTTP Basic Auth Cookie Auth Cookie认证机制就是为一次请求认证在服务端创建一个Session对象,同时在客户端的浏览器端创建了一个Cookie对象;通过客户端带上来Cookie对象来与服务器端的session对象匹配来实现状态管理的。默认的,当我们关闭浏览器的时候,cookie会被删除。但可以通过修改cookie 的expire time使cookie在一定时间内有效OAuth(开放授权)是一个开放的授权标准,允许用户让第三方应用访问该用户在某一web服务上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。 OAuth允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的第三方系统(例如,视频编辑网站)在特定的时段(例如,接下来的2小时内)内访问特定的资源

web开发框架之Django基础

会有一股神秘感。 提交于 2019-12-29 11:34:03
在脚本中如何进行Django的运行 if __name__ == '__main__': import os import django # 注意路径(当前所在的位置,要加载Django的配置文件) os.environ.setdefault("DJANGO_SETTINGS_MODULE","orm69.settings") django.setup() # 进行的操作 一.搭建环境 设置pip install 的源 创建虚拟环境 mkvirtualenv py6_django -p python3 查看当前目录下的虚拟环境 workon 设置Django的版本 pip install django==1.11.11 # 虚拟环境的指令 mkvirtualenv # 创建虚拟环境 rmvirtualenv # 删除虚拟环境 workon # 进入虚拟环境、查看所有虚拟环境 deactivate # 退出虚拟环境 ctrl + h 查看隐藏文件 # pip pip install # 安装依赖包 pip uninstall # 卸载依赖包 pip list # 查看已安装的依赖包 pip freeze # 冻结当前环境的依赖包 workon + py6_django 进入当前的虚拟环境 切换到桌面下的code中,将创建的项目放到里面 cd ~/Desktop/code django

SpringCloud(六)之 网关概念、Zuul项目搭建-(利用Zuul 实现鉴权和限流实战)

≡放荡痞女 提交于 2019-12-29 07:13:43
一、网关概念 1、什么是路由网关 网关是系统的唯一对外的入口,介于客户端和服务器端之间的中间层,处理非业务功能 提供路由请求、鉴权、监控、缓存、限流等功能。它将"1对N"问题转换成了"1对1”问题。 通过服务路由的功能,可以在对外提供服务时,只暴露 网关中配置的调用地址,而调用方就不需要了解后端具体的微服务主机。 2、为什么要使用微服务网关 不同的微服务一般会有不同的网络地址,而客户端可能需要调用多个服务接口才能完成一个业务需求,若让客户端直接与各个微服务通信,会有以下问题: (1)客户端会多次请求不同微服务,增加了客户端复杂性 (2)存在跨域请求,处理相对复杂 (3)认证复杂,每个服务都需要独立认证 (4)难以重构,多个服务可能将会合并成一个或拆分成多个 3、网关的优点 微服务网关介于服务端与客户端的中间层,所有外部服务请求都会先经过微服务网关客户只能跟微服务网关进行交互,无需调用特定微服务接口,使得开发得到简化 总的理解网关优点 服务网关 = 路由转发 + 过滤器 (1)路由转发:接收一切外界请求,转发到后端的微服务上去。 (2)过滤器:在服务网关中可以完成一系列的横切功能,例如权限校验、限流以及监控等,这些都可以通过过滤器完成(其实路由转发也是通过过滤器实现的)。 4、服务网关技术选型 引入服务网关后的微服务架构如上,总体包含三部分:服务网关、open

Vue项目入口与小知识总结

时光总嘲笑我的痴心妄想 提交于 2019-12-29 05:40:58
vue-route name使用 路由配置 import Main from './views/Main' routes: [ { path: '/main', name: 'main', component: Main } ] 视图使用 <router-link :to="{name: 'main'}">主页</router-link> router-link与系统a标签的区别 router-link:会被vue渲染成a标签,但是点击这样的a标签不能发生页面的转跳,只会出现组件的替换 a:也可以完成同样的效果,但是会发生页面的转跳 路由重定向 routes: [ { path: '/', name: 'home', component: Home }, { path: '/home', redirect: '/', // 重定向 } ] 路由传参-1 1、html通过:to="'/course/detail/' + course.id"拼接得到跳转路由,来建立跳转连接和在链接中携带参数 2、路由通过path: '/course/detail/:id', 路由方面通过:id来接收变化的参数 3、跳转的新页面通过路由接收参数,但参数的接收在页面创建成功后,并同过钩子函数created来获取路由,在钩子函数内通过this.$route.params拿到链接中的变量,然后通过

Cookie的Python爬虫应用

让人想犯罪 __ 提交于 2019-12-29 05:34:59
Cookie的Python爬虫应用 目录 Cookie是什么 Cookie的作用 Cookie的内容 domain属性 path属性 expires/Max-Age属性 Cookie的爬虫应用 Cookie是什么   Cookie ,有时也用其复数形式 Cookies ,英文是饼干的意思。指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密)。定义于 RFC2109 和 2965 中的都已废弃,最新取代的规范是 RFC6265 。   Cookie 就是由服务器发给客户端的特殊信息,而这些信息以文本文件的方式存放在客户端,然后客户端每次向服务器发送请求的时候都会带上这些特殊的信息。 服务器在接收到 Cookie 以后,会验证 Cookie 的信息,以此来辨别用户的身份。 Cookie 可以理解为一个临时通行证。 Cookie的作用   由于我们的HTTP协议是无状态的,所以我们要在网站上实现登陆之类的保持状态的功能的话就需要借助于 Cookie 。 每一次HTTP请求在数据交换完毕之后就会关闭连接,所以下一次HTTP请求就无法让服务端得知你和上一次请求的关系。而使用了 Cookie 之后,你在第一次登陆之类的请求成功之后,服务器会在 Response 的头信息中给你返回 Cookie 信息,你下一次访问的时候带上这个Cookie信息

cookie入门(简介和设置)

只愿长相守 提交于 2019-12-29 05:34:26
作者声明:最近开始接触Cookie,只是把自己学到的和理解到的分享出来。有问题请容纳。 cookie简介 1.Cookie,有时也用其复数形式 Cookies ,指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密)。 2.Cookie是存储在客户端浏览器中的数据,我们通过Cookie来跟踪与存储用户数据。一般Cookie是通过HTTP headers从服务器返回到客户端。因为Cookie存在于HTTP的标头中,所以必须在其他信息输出以前进行设置,类似于header函数的使用限制。 3.PHP进行Cookie的设置使用的是setcookie函数,PHP会自动将从浏览器中发送回来的Cookie存储在$_COOKIE的全局变量中,所以我们可以用$_COOKIE['key']的形式来读取Cookie值。 4.PHP中的Cookie经常用来存储用户的登录信息,购物车等,且在使用会话Session时通常使用Cookie来存储会话id来识别用户,Cookie具备有效期,有效期一过Cookie会自动的从客户端删除。同事为了进行安全控制,Cookie还可以设置有效域和路径。 设置cookie 1.PHP设置Cookie使用的是setcookie函数,setcookie的可选参数是7个,最常用的5个是: name(Cookie的名)可以通过$_COOKIE