XSS学习(cookie远程登录演示)

1.HTTP特点:

1.请求应答模式。

2.灵活可扩展

3.可靠传输

4.无状态。

这里给大家举一个例子:

HTTP是无状态的,所按理来说我每进行一次会话,比如我在CSDN发一个帖子,好像按理来说我都要进行一次重新登陆,可是实际之中为什么不是这样的呢?这里必须引入一个概念cookie

2.cookie的组成

Cookie 通常由键值对组成,具有以下格式:

 

key1=value1; key2=value2; key3=value3;

其中,每个键值对表示一个特定的属性或数值。一些常见的属性包括:

  • Expires:指定 Cookie 的过期时间。
  • Domain:指定哪些域名可以访问该 Cookie。
  • Path:指定在哪个路径下的页面可以访问该 Cookie。
  • Secure:指定是否只有通过 HTTPS 连接的请求才能发送该 Cookie。
  • HttpOnly:指定是否限制 JavaScript 访问该 Cookie,以增加安全性。

举例来说,一个简单的 Cookie 格式可能如下所示:

user_id=12345; session_token=abcdef; Expires=Sat, 26 Mar 2025 10:00:00 GMT; Path=/; Secure; HttpOnly

这个例子中包含了两个键值对(user_id=12345session_token=abcdef),以及一些属性(ExpiresPathSecureHttpOnly)。

而且cookie通常都是保存在你的磁盘里面的,并且通常都会有时间限制,在一段时间内你可以利用cookie登录这个网站,就类似于你去医院看病,第一次可能会各种填表,很麻烦,但是你第二次去的话,由于对面有了你的信息,你可能一张纸就一路通畅,这个就是cookie。

 

你可以在火狐浏览器上使用alert(document.cookie);这个命令直接获取你的cookie。

3.cookie远程登录

接下来直接给大家演示通过cookie登录用户的实际演示:

首先我是用edge浏览器和火狐浏览器上安装这个插件

我是用博客园这个网站做演示,首先登录你的账号,然后

打开插件,导出为JSON,然后把这个cookie复制,在另外的火狐浏览器导入你edge浏览器博客园的cookie

发现已经在火狐登录了博客园账号

你甚至可以在火狐浏览器上使用alert(document.cookie);这个命令直接获取你的cookie。

非常简单,就一个命令,如果拿到你的电脑,不到半分钟就能获取你的cookie,而有了cookie就能够远程登录。但是黑客可不会这样获取你的cookie,他们会在远处获取你的cookie,这就得提到了XSS。

4.XSS

XSS(跨站脚本攻击)是一种常见的Web安全漏洞,它利用网页开发中未经充分验证的用户输入,向页面注入恶意脚本,从而使得这些恶意脚本在用户浏览器中执行。

XSS攻击流程

  1. 攻击者寻找目标网站存在XSS漏洞的页面,通常是包含用户输入并且没有做充分的过滤或转义的页面,比如搜索框、评论区等。
  2. 攻击者在输入框中注入带有恶意脚本的内容,比如JavaScript代码。
  3. 你访问包含恶意注入的页面时,浏览器会执行恶意脚本,导致攻击者能够窃取用户的Cookie信息,获取你的cookie后能够做出什么事情我上面已经给大家演示过了。

XSS攻击分类

反射型XSS

又称为非持久型XSS,这种攻击往往具有一次性

比如你点击URL后,恶意脚本被发送到服务器,然后服务器返回并执行该脚本,导致攻击成功。

存储型XSS

存储型XSS又称为持久型XSS,比如你在博客或者留言板发帖的过程中嵌入XSS攻击代码,帖子被目标服务器存储在数据库中,当用户进行正常访问时,触发XSS代码。

DOM型XSS

  • DOM-based XSS攻击是一种特殊的XSS攻击,恶意脚本的执行是在客户端而不是在服务器端实现的。
  • 攻击者通过修改页面的DOM环境,比如URL片段或DOM属性,来触发执行恶意脚本。

XSS防范:

必须对输入进行一个过滤,就比如说:<script>alert(1)</script>

看到<script>这种东西一看就知道是XSS攻击,但是魔高一尺,道高一丈,对面也可能进行十六进制编码,或者双写绕过,千变万化,最好的方法就是提高对这些输入的识别,进行及时过滤。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/572513.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

javaSwing坦克大战游戏

在游戏开发领域&#xff0c;坦克大战是一款经典的游戏&#xff0c;其简单而又耐玩的玩法吸引了无数玩家。而今&#xff0c;在Java编程技术的支持下&#xff0c;我们可以用Java Swing技术轻松实现这款经典游戏。本文将介绍如何使用Java Swing技术编写坦克大战游戏&#xff0c;并…

[flask]执行上下文的四个全局变量

flask上下文全局变量&#xff0c;程序上下文、请求上下文、上下文钩子 -- - 夏晓旭 - 博客园 (cnblogs.com) 执行上下文 执行上下文&#xff1a;即语境&#xff0c;语意&#xff0c;在程序中可以理解为在代码执行到某一行时&#xff0c;根据之前代码所做的操作以及下文即将要…

2024年腾讯云4核8G服务器多少钱一年?买1年送3个月

2024年腾讯云4核8G服务器租用优惠价格&#xff1a;轻量应用服务器4核8G12M带宽646元15个月&#xff0c;CVM云服务器S5实例优惠价格1437.24元买一年送3个月&#xff0c;腾讯云4核8G服务器活动页面 txybk.com/go/txy 活动链接打开如下图&#xff1a; 腾讯云4核8G服务器优惠价格 轻…

华为数通 HCIP-Datacom H12-831 题库补充(3/27)

2024年 HCIP-Datacom&#xff08;H12-831&#xff09;最新题库&#xff0c;完整题库请扫描上方二维码&#xff0c;持续更新。 如图所示&#xff0c;关于R4路由器通过IS-IS计算出来的IPv6路由&#xff0c;哪一选项的描述是错误的&#xff1f; A&#xff1a;R4通过IS—IS只学习到…

取消springboot中的Test类中的日志打印

使用SpringBootTest注解进行单元测试时, 打印东西的时候,总会伴随很多的无关紧要的日志信息&#xff0c;影响观感。去掉这些日志应该怎么做呢 ? 两个步骤: 第一步、修改application.properties logging.level.rootoff logging.level.org.springframeworkoff # 关闭baner信息…

SpringMvc执行流程源码解析

一、简介 Spring web Mvc是基于ServletApi构建的原始Web模块&#xff0c;从一开始就包含在Spring框架中&#xff1b; 从Servlet到SpringMvc 最典型的MVc就是JSPServletjavaBean的模式&#xff1b; 弊端&#xff1a; 1、xml下配置Servlet的映射非常麻烦&#xff0c;效率低&…

vue3+threejs新手从零开发卡牌游戏(十三):上场手牌添加攻击力文字

在utils/common.ts下新建渲染场上手牌文字方法&#xff1a; // 渲染场上手牌文字 const renderSiteCardText (mesh: any, font: any) > {return new Promise((resolve, reject) > {let pos mesh.positionconst geometry new TextGeometry( ATK ${mesh.userData._ATK}…

Windows直接运行python程序

Windows直接运行python程序 一、新建bat脚本二、新建vbs脚本 一、新建bat脚本 新建bat批处理脚本&#xff0c;写入以下内容 echo off call conda activate pytorch python app.pyecho off&#xff1a;在此语句后所有运行的命令都不显示命令行本身&#xff0c;但是本身的指令是…

ETIM -国际贸易的产品分类标准

ETIM 是除了XML 国际交流标准BMEcat之外的国际贸易的产品分类标准。 什么是ETIM &#xff1f; ETIM是一种基于分类识别共享和交换产品数据的格式。这种广泛使用的技术产品分类标准是为了构建 B2B 专业人员之间的信息流而制定的。 为什么选择ETIM&#xff1f; ETIM分类模型的开…

力扣454. 四数相加 II

思路&#xff1a;把四个数组拆成两对&#xff0c;两个分别相加&#xff0c;记录第一对的相加结果进map里&#xff0c;再把第二对数组 0-nums2-nums4 去map里面找出现了几次&#xff0c;这题不用对重复的四元组去重&#xff0c;所以出现多次都有效。 class Solution {public int…

Linux系统使用Docker部署Jupyter Notebook结合内网穿透实现公网访问本地笔记

文章目录 1. 选择与拉取镜像2. 创建容器3. 访问Jupyter工作台4. 远程访问Jupyter工作台4.1 内网穿透工具安装4.2 创建远程连接公网地址4.3 使用固定二级子域名地址远程访问 本文主要介绍如何在Ubuntu系统中使用Docker本地部署Jupyter Notebook&#xff0c;并结合cpolar内网穿透…

Vue 3中ref和reactive的区别

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…