Web 安全 跨站 跨域 XSS CSRF

跨站

跨站即 cross-site,它和同站(same-site)相对,对协议和端口号无要求,只要两个 URL 的 eTLD + 1 一致,就能称为同站。那么什么是 eTLD 呢?

eTLD 即 effective top level domain,有效顶级域名,比如 http://juejin.cn 的 eTLD 是 .cn,http://test.org 的 eTLD 是 .org,而 http://chorer.github.io 则是 github.io(注意不是 .io)。而 eTLD + 1 指的是有效顶级域名 + 二级域名,比如对于 http://juejin.cn 来说就是 juejin.cn,对于 http://test.org 来说就是 test.org。

跨域

跨域即 cross-domain,它和同源(same-origin)相对,要求两个 URL 的协议、端口号、域名都一致才能称为同源

XSS

XSS 即 Cross-Site Scripting(跨站脚本攻击),指的是黑客将恶意代码注入页面中,只要打开页面,代码就会执行。XSS 攻击可能导致 Cookie 被窃取、个人信息泄露、劫持流量实现恶意跳转等

CSRF

CSRF 即跨站请求伪造,黑客利用请求会携带 Cookie 的特点,冒充用户身份向正常网站发出请求,执行某些非法操作。它的作用过程大概是这样的:

用户登录 http://article.com,服务器验证通过,返回 Cookie 给浏览器保存
假设 Cookie 没过期,这期间黑客诱导用户访问恶意网站 http://evil.com,这个网站中有这么一段代码:

那么恶意网站就会向 http://article.com 发起一个携带 Cookie 的请求,服务端这边验证没问题,就会把 id 为 1 的文章给删除了
这里黑客之所以可以发起 CSRF 攻击,有下面几个原因:

用户:登录了正常网站且没有登出(Cookie 有效),之后访问了恶意网站
黑客:知道执行请求的 URL 和所有的参数
服务端:只使用 Cookie 进行权限验证,没有任何针对 CSRF 的防御措施
img 是支持跨域请求的。其实黑客也可以直接发送一个 AJAX 请求,不过由于同源策略和 CORS 的限制,http://evil.com 是无法向不同源的 http://article.com 发送请求的,所以黑客使用的是天然可以跨域的 img 标签

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

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

相关文章

k8s服务搭建与实战案例

Kubernetes(K8s)作为一个开源的容器编排平台,广泛应用于现代的云原生应用架构中。以下是一些常见的 **Kubernetes 实战案例**,包括从基础部署到高级应用场景的使用。通过这些案例,可以更好地理解 K8s 的运作原理和最佳…

PYQT5程序框架

pyqt5程序框架_哔哩哔哩_bilibili 1.UI代码 Qhkuja.py # -*- coding: utf-8 -*-# Form implementation generated from reading ui file Qhkuja.ui # # Created by: PyQt5 UI code generator 5.15.7 # # WARNING: Any manual changes made to this file will be lost when py…

基于MobileNet v2模型的口罩实时检测系统实现

基于kaggle数据集训练的模型其实现结果如下: 代码结构如下: 实时口罩检测器: 从导航栏中的链接“实时的口罩检测器”功能,该系统包含一个实时检测用户是否佩戴口罩的功能。基于图片的口罩检测器: 从另一个导航链接“基…

高效项目托管指南:从本地到 GitHub 的完整流程

在现代软件开发中,将项目托管在 GitHub 上是一个常见且高效的方式。GitHub 不仅可以用作版本控制工具,还能帮助你与团队协作或展示自己的项目。本文将带你一步步完成项目的打包和上传。 高效项目托管指南:从本地到 GitHub 的完整流程 1. 准备…

用TPS54531绘制BUCK电路板

首先,这TPS54531 是一款非同步降压转换器芯片(异步)。 这是BUCK的基本原理图,它是异步的。 我们用这款芯片来控制MOS管的高频开关,以此实现降压。 这里使用的应该是CCM模式。 这里: Vi为24V,…

【新人系列】Python 入门(十六):正则表达式

✍ 个人博客:https://blog.csdn.net/Newin2020?typeblog 📝 专栏地址:https://blog.csdn.net/newin2020/category_12801353.html 📣 专栏定位:为 0 基础刚入门 Python 的小伙伴提供详细的讲解,也欢迎大佬们…

人工智能增强的音频和聊天协作服务

论文标题:AI-enabled Audio and Chat Collaboration Services 中文标题:人工智能增强的音频和聊天协作服务 作者信息: Emil P. Andersen, Norwegian Defence Research Establishment (FFI), Kjeller, NorwayJesper R. Goksr, Sindre E. Ha…

【原创】- 澳门预约医疗系统 - 一个基于Vue3编写的程序

在空余时间写了一个前端预约医疗系统,用Vue3写的一套前端模块,里面数据都是本地模拟,一个练手的简单项目。 此项目主要功能有: 1.预约挂号、挂号记录 2.疫苗接种 3.就医记录 4.科室导航 5.AI问诊 6.个人病例 7.支付可配置化 8.健康…

Cadence学习笔记 3 MCU主控原理图绘制

基于Cadence 17.4,四层板4路HDMI电路 更多Cadence学习笔记:Cadence学习笔记 1 原理图库绘制Cadence学习笔记 2 PCB封装绘制 目录 3、MCU主控原理图绘制 快捷键总结: 3、MCU主控原理图绘制 新建原理图Design,选择好SCH文件夹&…

vue2实现答题组件

需求 实现一个答题组件,点击正确的选项,该选项背景变绿色;点击错误的选项,该选项背景变红色。不管点击了什么选项,延迟一秒后切换下一题。 每次出题,从题库中选随机选择一道用户此次进入这个页面后还没有…

3D相框案例讲解(详细)

前言 通过现阶段的学习,我们已经掌握了HTML,CSS和JS部分的相关知识点,现在让我们通过一篇案例,来巩固我们近期所学的知识点。 详细视频讲解戳这里 任务一 了解目标案例样式 1.1了解案例 3D相框 1.2 分析案例 首先我们看到一个…

SuperMap GIS基础产品FAQ集锦(20241216)

一、SuperMap iDesktopX 问题1:想问一下 SuperMap iDesktopX可以修改倾斜入库后数据的位置吗 11.2.1 【解决办法】在配置文件(*.scp)中找打position属性,修改其中的xyz值,用于改变位置;修改后如果想要相机…

2.11.静态链表

一.静态链表的基本概念: 1.上图说明:索引为0处是头结点,头结点不存储数据,但存储下一个结点的数组下标,本例中头结点里存储的下一个结点的数组下标为2,即索引为2的结点为头结点后的第一个结点,以…

【Childishness and Playfulness】

奥迪双钻,旋风冲锋龙卷风,巨无霸 智能芯片 东西南北中,好像已经忘了怎么折叠了,折千纸鹤,折小船,折舞狮,折飞机 红外线小灯,纽扣电池,各种形状投影 爷爷的手电筒&am…

【C++初阶】第9课—标准模板库STL(string_3)

文章目录 1. string类对象的查找操作1.1 c_str返回c格式字符串1.2 substr获取string类对象子串1.3 find和rfind查找字符串内容1.4 find_first_of与find_first_not_of1.5 find_last_of与find_last_not_of1.6 copy复制string类对象内的字符串内容1.7 compare对比string类字符串1.…

【教程】如何下载WandB平台的运行数据?

【教程】如何下载WandB平台的运行数据? 前言 CSDN主页:https://blog.csdn.net/rvdgdsva 博客园主页:https://www.cnblogs.com/hassle Weights & Biases (WandB)是一个用于机器学习的平台,它提供了一套工具来帮助你跟踪、比…

vscode设置终端代理

转载请标明出处:小帆的帆的博客 设置终端代理 修改项目的.vscode/settings.json {"terminal.integrated.env.windows": {"http_proxy": "http://127.0.0.1:7890","https_proxy": "http://127.0.0.1:7890"}, }…

【Linux】自定义项目-进度条

更多精彩内容..... 🎉❤️播主の主页✨😘 Stark、-CSDN博客 准备工作:"\r"与"\n"字符 ①:基本含义 在C语言和Linux环境中,\r是回车符,\n是换行符,用于控制文本格式和输出…

Linux从0到1——初识线程【什么是线程/线程控制/详解tid】

Linux从0到1——初识线程 1. 什么是线程?1.1 线程的概念1.2 结合代码理解线程1.3 重谈地址空间1.4 线程的优缺点 2. 线程异常和线程用途3. Linux进程VS线程4. 详解pthread_create的arg参数4.1 给线程传参4.2 一次创建多个线程 5. 线程控制5.1 线程退出5.2 线程分离5…

[免费]SpringBoot+Vue校园社团管理系统(优质版)【论文+源码+SQL脚本】

大家好,我是java1234_小锋老师,看到一个不错的SpringBootVue校园社团管理系统(优质版),分享下哈。 项目视频演示 【免费】SpringBootVue校园社团管理系统(优质版) Java毕业设计_哔哩哔哩_bilibili 项目介绍 随着信息技术的迅速发展&#x…