XSS漏洞学习(1)

XSS漏洞学习(1)

HTTP协议回顾

HTTP的请求方式

常用

GET 请求从服务器获取资源

HEAD 类似于GET请求,只不过不会返回实体数据,只获取报头

POST 向服务器提交数据

PUT 替换服务器的内容

不常用

DELETE 请求服务器删除指定的资源

TRACE 对链路进行测试或诊断

OPTIONS 列出可对资源实行的操作方法,Allow字段里返回

CONNECT 要求服务器和另一台服务器建立连接,充当代理

扩展

MKCOL、COPY、MOVE、LOCK、UNLOCK、

PATCH

HTTP请求格式

请添加图片描述

HTTP响应格式

请添加图片描述

客户端的Cookie(相当于身份证)

cookie的来源以及作用

当客户端(用户)第一次访问一个网站时,服务端会在HTTP响应内容中给客户端下发一个cookie(非机密)(此cookie主要不删除就会一直跟随客户端),在此之后客户端再次访问该网站内容时会携带cookie,用于客户端(用户)身份信息的识别

删除cookie并再次获得cookie

在浏览器中按住CTRL+shift+delete可以将客户端之前保存的cookie全部清空,然后再打开百度,没有cookie相当于第一次访问百度这个网站,服务器在响应中通过Set-Cookie头字段,下发Cookie此时可以按下键盘的F12在网络选项中看到百度网站发给客户端的cookie

cookie后面跟的内容解释

请添加图片描述

以上面的图片第一个cookie为例

属性

  • name=value

    一个name加value,就是一个cookie。name/value这个是必须的,其他的都是可选的。如果name重复,只取第一个

  • expires

    cookie的过期时间(格林尼治时间),超过这个时间,cookie就会失效。如果不设置,代表是临时的cookie,cookie在浏览器关闭的时候就失效了。

  • max-age

    与expires作用相同,用来告诉浏览器此cookie多久过期(单位是秒)。max-age的优先级高于expires

  • domain

    cookie对哪个域名生效。如果没有设置,就设置为服务器的域名。如果是临时的cookie,就不能设置domain。比如.baidu.com,百度所有的子站都可以使用。zhidao.baidu.com只能百度知道使用。Cookie具有不可跨域名性。这个是由浏览器保证的,google服务器不能修改baidu的cookie。

  • path

    除了匹配域名,还可以具体匹配到路径,如果域名和路径都匹配,那这个cookie就会起作用。如果是/,这个服务器所有的路径都可以使用这个cookie。如果没有设置,那个路径响应,path就是哪个值

  • secure

    只有HTTPS连接,才发送cookie到服务器

  • httponly

    告知浏览器不允许通过脚本document.cookie去更改这个值,同样这个值在document.cookie中也不可见

在哪里查看cookie
在所有浏览器中的查看方法

按F12找到存储选项(与网络选项同一水平视线上)

请添加图片描述

在谷歌浏览器中

请添加图片描述

cookie的存储地方
硬盘

有过期时间的Cookie

C:\Users\15542\AppData\Local\Google\

Chrome\User Data\Default\

请添加图片描述

内存

没有过期时间的临时Cookie,退出浏览器即失效

cookie可修改
通过F12修改

请添加图片描述

通过javascript修改(增删改查)
cookie的用途

保持会话

记住密码

跟踪用户行为

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

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

相关文章

【统计学相关笔记】抽样基本定理的证明

抽样基本定理的证明 法 1 法 2 什么是 辅助统计量? 法 3

基于Asp.net的物流配送管理系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…

vue-treeselect 【单选/多选】的时候只选择最后一层(绑定的值只绑定最后一层)

欢迎访问我的个人博客 |snows_ls BLOGhttp://snows-l.site 一、单选 1、问题: vue-treeselect 单选的时候只选择最后一层(绑定的值只绑定最后一层) 2、方法 1、只需要加上 :disable-branch-nodes"true" 就行&#xff0…

Python的那些事第四十五篇:继承自Nose的测试框架Nose2

Nose2:继承自Nose的测试框架 摘要 本文深入探讨了Nose2这一继承自Nose的测试框架。在软件开发过程中,测试是确保代码质量和稳定性的重要环节,而测试框架为测试工作的开展提供了有力支持。Nose2作为Nose的继承者,在保留Nose优势的基础上进行了诸多改进和扩展,为Python测试…

LLM后训练:解锁大型语言模型推理能力的关键路径

引言:从语言生成到逻辑推理的跃迁 大型语言模型(LLMs)通过预训练掌握了海量语言模式,但其核心缺陷——幻觉、逻辑断裂、价值观偏差——暴露了单纯预训练的局限性。后训练(Post-Training)作为预训练后的精修…

Rabit

之前发过rabit了,所以这里不再赘述,讲讲原理 在线Rabbit加密 | Rabbit解密- 在线工具 (sojson.com) rabbit加密原理 Rabbit加密算法是一种流密码算法,由Daniel J. Bernstein设计,并被广泛用于多种加密和安全通信应用中。它的设…

coding ability 展开第四幕(滑动指针——巩固篇)超详细!!!!

文章目录 前言水果成篮思路 找到字符串中所有字母异位词思路 串联所有单词的子串思路 最小覆盖子串思路 总结 前言 本专栏上一篇博客,带着大家从认识滑动窗口到慢慢熟悉 相信大家对滑动窗口已经有了大概的认识 其实主要就是抓住——一段连续的区间 今天来学习一些滑…

“消失的中断“

“消失的中断” 1. 前言 在嵌入式开发过程中,中断必不可少。道友们想必也经常因为中断问题头疼不已,今天来说说一个很常见的问题,“消失的中断”。最近项目在使用第三方MCAL的时候,就遇到了I2C中断丢失的问题,排查起…

阿里云魔笔低代码应用开发平台快速搭建教程

AI低代码,大模型时代应用开发新范式 什么是魔笔 介绍什么是魔笔低代码应用开发平台。 魔笔是一款面向全端(Web、H5、全平台小程序、App)场景的模型驱动低代码开发平台,提供一站式的应用全生命周期管理,包括可视化开发…

Obsidian Copilot:打造你的专属 AI 笔记助手

Obsidian Copilot作为一款非常受欢迎的Obsidian插件,不仅极大地提升了用户的笔记管理和信息检索效率,还通过其多样化的AI功能为用户带来了前所未有的便捷体验。本文将详细介绍Obsidian Copilot的核心特点、使用方法及个人体验分享。 核心特点 Obsidian…

聊聊 Redis 的一些有趣的特性(上)

聊聊 Redis 的一些有趣的特性(上) 一、持久化 Redis 是内存数据库,数据全部保存在内存中。如果服务器发生宕机,内存中的数据将会全部丢失。为防止系统崩溃后数据丢失,Redis 提供了持久化功能,可将内存中的…

【结构设计】3D打印创想三维Ender 3 v2

【结构设计】3D打印创想三维Ender 3 v2 文章目录 前言一、Creality Slicer1.2.3打印参数设置二、配件更换1.捆扎绑扎线2.气动接头3D打印机配件插头3.3D打印机配件Ender3pro/V2喷头套件4.读卡器 TF卡5.micro sd卡 三、调平四、参考文章总结 前言 使用工具: 1.创想三…

吴恩达机器学习笔记复盘(五)均方误差函数

只讲了线性回归的代价函数。 均方误差(Mean Squared Error, MSE) 均方误差(MSE)基于最小二乘法,通过计算预测值与真实值之间差值的平方的平均值来衡量模型的误差。 原理 假设我们有一组数据集,其中是第…

Vue生命周期_Vue生命周期钩子

一、生命周期介绍 每个 Vue 组件实例在创建时都需要经历一系列的初始化步骤,比如设置好数据侦听,编译模板,挂载实例到 DOM,以及在数据改变时更新 DOM。 在此过程中,它也会运行被称为生命周期钩子的函数,让…

arthas常用命令

文章目录 1. dashboard仪表板2. 通过thread命令来获取到math-game.jar进程的Main Class3. 通过jad来反编译Main Class4. watch监视5. 退出arthas6. 小结 欢迎关注 性能测试和优化 专栏:https://blog.csdn.net/qq_41684621/category_12910565.html 1. dashboard仪表…

c#Winform也可以跨平台了GTK框架GTKSystem.Windows.Forms

一、简介 >> 新版下载,问题求助 QQ群:1011147488 1032313876 236066073(满) Visual Studio原生开发,无需学习,一次编译,跨平台运行. C#桌面应用程序跨平台(windows、linux、…

Vue3 Pinia的getters属性

Pinia的getters属性 定义一个bigSum,值是sum*10 可以写成箭头函数的形式upperSchool中使用了this,不能写成箭头函数的形式

Atcoder ABC397-D 题解

https://atcoder.jp/contests/abc397/tasks/abc397_dhttps://atcoder.jp/contests/abc397/tasks/abc397_d 题目描述: 确定是否存在一对正整数,使得 思路: 首先对方程进行转化 设 即 接下来确定的范围 根据立方差公式 因此,我们可以从到来…

医疗送药机器人“空间拓扑优化+动态算法决策+多级容错控制”三重链式编程技术解析与应用

一、引言 1.1 研究背景与意义 在医疗体系中,高效精准的药品配送是保障医疗服务质量和患者安全的关键环节。随着医疗技术的不断进步和医疗需求的日益增长,传统的人工送药方式逐渐暴露出诸多弊端,如配送效率低下、易受人为因素干扰导致错误率上升、人力成本高昂等。特别是在…

Redis实现高并发排行榜的功能

生活中排行榜是常见的功能,如游戏的排行榜,销售额的排行榜等等,排行榜不仅可以让用户有更多的激情参与到活动中来,而且可以更好的留存住用户,如下所示的拉新排行榜: 排行榜是一个常见的业务需求&#xff0…