XSS高级利用
XSS会话劫持
(1)Cookie简介
Cookie是能够让网站服务器把少量文本数据存储到客户端的硬盘、内存,或者是从客户端的硬盘、内存读取数据的一种技术。
Cookie是一段随HTTP请求、响应一起被传递的额外数据,主要作用是标识用户、维持会话。
浏览网站时,该网站可能会在电脑硬盘写入一个文本文件,可以记录ID、密码等。这个文件就是Cookie文件,当再次浏览网站时,网站会读取Cookie,做出相关回应。比如:在你输入密码登录后,会提示你是否保存,保存后,下一次登录时可以直接登录。
根据Cookie在客户端中存储的位置,分为内存Cookie和硬盘Cookie。内存Cookie保存时间短暂,浏览器关闭后,Cookie就消失。硬盘Cookie保存在硬盘里,有过期时间,到期或者手动清理即可删除。所以,Cookie又分为持久Cookie和非持久Cookie。
(2)XSS盗取Cookie
如果网站存在XSS漏洞,攻击者则可以构造恶意XSS代码获取用户cookie,然后截断此网站的HTTP请求包,将获取的Cookie替换原有的Cookie,则不用输入用户名和密码,直接登录该用户。
(3)SEESSION
除Cookie外,维持会话状态还有一种形式是SESSION。
WEB中SESSION是在浏览一个网站时,从进入网站到浏览器关闭所经过的时间,就是一次客户端与服务端的‘对话’。浏览器关闭后,SESSION自动注销。
每个用户的会话状态都是不同的SESSION,区分这些用户的,叫做SESSIONID。用户第一次连接服务器时,会自动分配一个SESSIONID。这个SESSIONID是唯一的,在浏览器关闭后,SESSION自动注销,下一次连接时,会重新分配。
SESSION相对Cookie来说更安全,它只存在于服务端,在客户端只存在一个ID,而COOKIE是存储在客户端。
当然,如果网站存在XSS漏洞,攻击者构造了恶意XSS代码,如果一个用户正在浏览该网站,同时也触发了攻击者的XSS代码,此时,攻击者就可以拿到SESSION,因为用户没有关闭浏览器,SEESSION没有被注销,攻击者就可以利用SESSIONID等信息,直接登录此用户。
最新文章
- ionic tab导航在android 真机测试中 导航在顶部解决办法
- Framework7--Test
- java--接口和抽象类
- 【jmeter】浅说 think time
- JS语句循环(100以备奇偶数、100以内与7先关的数、100以内整数的和、10以内阶乘、乘法口诀、篮球弹起高度、64格子放东西)
- Android Activity初探
- 修改mysql字符编码出现Job failed to start解决办法
- linux 安装mysql 5.7.16
- js复制黏贴
- 深入理解计算机系统第二版习题解答CSAPP 2.8
- VS2012 编写C++程序的时候DOS窗口一闪而过解决办法。
- Hive UDAF开发之同时计算最大值与最小值
- Linux下逻辑卷创建与管理
- JavaScript函数之实际参数对象(arguments) / callee属性 / caller属性 / 递归调用 / 获取函数名称的方法
- MyBatis基础学习笔记--摘录
- 97w网站邀请码
- kafka消费者启动报错
- luogu P4363 [九省联考2018]一双木棋chess
- celery --分布式任务队列
- Codeforces Round #529 (Div. 3) 题解
热门文章
- HDU 1527 取石子游戏(威佐夫博弈)
- JMeter 配置元件之HTTP Cookie Manager 介绍
- Ubuntu下解压缩文件
- FreeSWITCH1.6安装教程Centos
- C程序
- ASP.NET Core 入门教程 1、使用ASP.NET Core 构建第一个Web应用
- Jetbrains Idea连接TFS时配置的坑
- [转] Scala 中的异步事件处理
- 大约当你拿捏的准世事的分寸时,你便会成功了。(NULL)
- sql 语句按字段指定值排序及分页