CORS和XSS有什么联系吗?

2024-01-11

维基百科页面中提到了跨站脚本 (XSS)CORS http://en.wikipedia.org/wiki/Cross-origin_resource_sharing。但我不明白它们有什么关系。 CORS 和 XSS 之间有什么联系?


维基百科文章中提到的 XSS 与 JSONP 相关,而不是 CORS。

在 JSONP 中,您引用一个页面,其中包含您想要在页面中包含客户端的数据,如下所示:

<script src="https://example.com/jsonp.aspx?callback=foo"></script>

然后,您的页面上就会有一个 JavaScript 函数,名为foo将由外部站点调用(example.com在本例中)传递客户端所需的数据。

然而,如果example.com受到损害并且正如您所信任的那样example.com作为脚本源,攻击者可以窃取您的站点并拥有客户端代码。例如,他们可能会将访问者重定向到他们自己的网站,向自己发送访问者的 cookie 或注入 Javascript 键盘记录器,而不是调用您的foo功能。

不过有了 CORS,如果example.com设置正确的标头以允许您的站点对其进行 AJAX 调用并检索数据,然后当您应该将数据视为不受信任的输入而不是 HTML,您的网站就不太可能受到损害。它确实取决于数据是什么 - 如果它实际上是预先格式化的 HTML 并且您按原样输出它,那么受损的外部站点仍然可能通过 XSS 影响您的站点 - 但是,JSONP 绝对是这种情况。

另一点是,如果您的网站上存在任何 XSS 错误,那么任何 CORS 限制都会变得无关紧要。攻击网站将能够使用 XSS 漏洞来“绕过”同源政策 http://en.wikipedia.org/wiki/Same-origin_policy在 DOM 级别而不是通过XHR https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest。如果他们需要一些只能通过 AJAX 请求从您的来源检索的信息,他们只需使用 XSS 攻击来注入执行此操作所需的脚本并将其发送回他们自己的域。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CORS和XSS有什么联系吗? 的相关文章

  • 给定数十亿个 URL,如何确定重复内容 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我在一次编程面试中被问到这个问题 我在下面详细描述了这个问题 这是一个开放式问题 给定数十亿个 URL 深层链接 我如何对哪些 URL
  • 让用户渲染自己的 SVG 文件的安全隐患

    我计划让网站用户上传他们自己的 SVG 文档并使用inkscape or svg2pdf 用户要么未经身份验证 要么经历一个简单的注册过程 所以我预计会有一些黑客尝试 我可以采取哪些过滤措施来最大程度地减少安全威胁 Inkscape 似乎并
  • SSL 速度:128 位与 256 位

    我决定使用 SSL 加密我的整个网站 即使实际上只有部分网站是必要的 最终结果是该网站现在有点慢 所以 我的问题是 我是否应该只加密网站的会员部分 请记住我在首页上有登录表单 我是否应该将加密降低到 128 位 如果站点总体较小 速度差异是
  • md5() 是做什么用的?

    我正在阅读本教程简单的PHP登录系统 http www phpeasystep com workshopview php id 6 最后它建议你应该使用 md5 加密您的密码 http www phpeasystep com worksho
  • checkmarx - 如何解决存储的绝对路径遍历问题?

    Checkmarx v 9 3 0 HF11 我将 env 值作为 dev uat 服务器中使用的 docker 文件中的数据目录路径传递 ENV DATA app data 在本地 使用以下环境变量 数据 C 项目 应用程序 数据 get
  • php隐藏所有错误[重复]

    这个问题在这里已经有答案了 隐藏的最佳做法是什么allPHP 错误 因为我不想向用户显示错误 我尝试过使用 htacess通过输入代码php flag display errors off在那里 但它返回给我一个500 error 还有其他
  • 如何绕过Access-Control-Allow-Origin?

    我正在一个平台上对我自己的服务器进行ajax调用 他们设置了阻止这些ajax调用的平台 但我需要它从我的服务器获取数据以显示从我的服务器数据库检索到的数据 我的 ajax 脚本正在运行 它可以将数据发送到我的服务器的 php 脚本以允许其处
  • Flex 和 crossdomain.xml

    我想知道将 crossdomain xml 添加到应用程序服务器的根目录是否存在任何安全问题 它可以添加到服务器的任何其他部分吗 您是否知道任何不需要服务器放置此文件的解决方法 谢谢 达米安 通过添加 crossdomain xml 主要的
  • Java中如何确保String对象被销毁?

    我公司的一名员工需要通过我编写的程序修改 SQL Server 数据库中的数据 该程序首先使用 Windows 身份验证 我要求 DBA 授予该特定用户对所述数据库的写入权限 他们不愿意这样做 而是授予了写权限myWindows 用户帐户
  • 如何获取dart中当前和调用函数的名称?

    C has System Reflection MethodBase GetCurrentMethod Name Dart 是否有类似的东西 但返回当前正在运行的函数以及调用当前运行函数的函数的名称的结果 我编写了一个简单的类 它提供当前函
  • Delphi 应用程序被 Google Chrome 视为“危险”

    我经常用Delphi 2009制作数学软件 并将其发布在我的网站上 然而 去年左右 Google Chrome 开始认为我的一小部分 但数量不断增加 EXE 是 有害的 并且 Google Chrome 拒绝下载它们 例如 今天我编写了一个
  • Azure Web 角色中的网站项目

    我正在研究一个新的 ASP Net 项目 我们希望将其托管在 Windows Azure Web 角色中 该项目的技术要求之一是利用 ASP Net 的完整预编译选项 不可更新 单页程序集 Web Site项目模型 与 ASP Net 相反
  • 在浏览器中下载视频,而不是在新选项卡中播放 [CORS]

    I have a 并在其内部href属性 当我点击该属性时 我从第 3 方 api 获得了一个视频 URL a 浏览器打开一个新选项卡并播放视频而不是下载视频 PROBLEM 我需要实现的是点击后直接下载视频 a 而不是在新标签中播放并强制
  • 保护移动连接 - 存储秘密和密钥

    感谢您花时间阅读本文 我是一名年轻的开发人员 在 Web 项目和服务器端编码方面拥有一些专业经验 但我现在正在构建我的第一个移动应用程序 经过在线深入研究后 我还没有能够澄清我关于保护移动应用程序数据传输的一些问题 这是我认为我理解正确的
  • 当SESSION_COOKIE_SECURE = True时如何在HTTP中获取一些用户身份信息

    以下是我正在开发的网站的简短描述 公共页面可以通过 HTTP 或 HTTPS 访问 其他一些页面 认证页面 账户详情页面等 需要通过HTTPS访问 Apache2 负责进行相关的 HTTP 到 HTTPS 链接重定向 我使用标准 Djang
  • 在 React 应用程序中使用 API 密钥

    我有一个使用两个第三方服务的 React 应用程序 该应用程序已开始使用react create app 这两项服务都需要 API 密钥 通过脚本标签提供一个密钥 如下所示 另一个 API 密钥在请求中使用 我将实际密钥存储在常量中并使用它
  • JWT(Json Web 令牌)与自定义令牌

    我仔细查看了问题 但没有找到任何可以解决我的疑问的内容 我找到了有关 JWT 的大量信息 但在比较 JWT 相对于针对 REST 服务生成自定义令牌来对身份验证请求提供的优势时 发现的信息并不多 与生成自定义生成令牌相比 使用 JWT Js
  • Java:BCrypt 的用途很好吗?

    我想知道我当前的 BCrypt 实现是否正确 我知道我没有使用BCrypt checkpw 这可能会导致问题 所以这是我在这里验证的主要原因 Hasher java容器类 abstract public class Hasher publi
  • AJAX 安全问题

    我希望能够解决一些关于 AJAX 安全性的问题 这是我试图理解的一个场景 假设我正在使用 AJAX 向页面请求一些半敏感材料 例如 我将把用户的 ID 传递给一个 php 文件 并返回一些关于他们自己的信息 现在 是什么阻止人们模拟此 Ja
  • 有关 CredEnumerate 的帮助

    作为后续this https stackoverflow com questions 199518 how to programatically add mapped network passwords winxp我希望有人可以帮助解决这个

随机推荐

  • Golang:递归数据结构

    我有一个简单的问题 我正在尝试用切片在 Golang 中重现这个递归数据结构 type Trie map byte Trie 现在 我有一些使用下面的递归数据结构和切片的 粗略 源代码 一切正常 除了我的类型结构是一个结构而不是结构切片 理
  • STL 映射与向量的迭代器访问性能?

    使用迭代器循环 STL 映射与使用向量之间的性能差异是什么 我想使用映射键进行插入 删除和一些访问 但我还需要定期访问every地图中的元素 对于映射和向量 迭代整个集合的时间复杂度为 O N 然而 就像列表与向量一样 向量连续存储元素 因
  • DataFrame 中不能有调用集合操作的地图类型列

    org apache spark sql AnalysisException 在调用集合操作 相交 例外等 的DataFrame中不能有映射类型列 但列map col的类型是map 我有一个配置单元表 其中有一列 MAP
  • 元素以任意顺序出现任意次数的 xml 架构构造

    我想编写一个 xml 模式 它可以接受一些可以以任何顺序出现任意次数的元素 就像下面的例子一样 它应该满足所有相似的组合 请帮助我并提前致谢 实施例1
  • WPF DataGrid - 添加新行时如何保持关注 DataGrid 的底部?

    我在用DataGrid http msdn microsoft com en us library system windows controls datagrid VS 95 aspx来自WPF工具包 http www codeplex
  • 尝试使用没有过滤器的广播接收器

    IntentFilter intentFilter new IntentFilter test registerReceiver mReceiver intentFilter 我想要没有过滤器registerReceiver mReceiv
  • 如何防止 Apache httpd (MAMP) 中的 http 文件缓存

    我正在 MAMP 中开发一个单页 Javascript 应用程序 我的 JavaScript 和 HTML 模板文件在请求之间被缓存 有没有一种简单的方法可以在 MAMP 中指示我想要阻止 http 文件缓存 可能与一个 htaccess文
  • Laravel Eloquent 在连接表上的位置

    我在 laravel 5 Eloquent 中有两个实体 Foo 和 FooType 具有 oneToMany 关系 class Foo public function fooTypes return this gt hasMany App
  • WooCommerce API 在媒体中创建图像,即使它们存在

    可能是什么原因 尝试通过 REST API 批量更新 WooCommerce 中的产品图像 和价格 图片已存在于 WordPress 媒体库中 并且链接已正确复制 然而 它不是使用图像而是创建新图像 请求 邮寄 网址 Body update
  • 如何将装饰器中的变量传递给装饰函数中的函数参数?

    我正在学习Python 希望有人指出我正确的方法 这就是我想要在下面做的事情 def decorate function def wrap function args kwargs str Hello This is what I want
  • 通过 Tap 将 SQLite 数据库推送到 Heroku?

    所以我试图将 SQLite3 数据库推送到 Heroku 我认为这曾经是可能的 但是阅读here https devcenter heroku com articles heroku postgresql pg push and pg pu
  • Firebase、IN 子句查询和数据列表

    在我看来 当有人必须处理数据库时 这是一个非常明显的问题 所以我不知道为什么我找不到任何有关它的信息 我正在尝试设计非关系数据库对于我的项目 我有一个由一些信息 例如代码 图像和多语言描述 描述的产品列表 它们以不同的方式分类 这是结构的快
  • Python 的图标重叠问题

    我在这个论坛上找到了一些关于如何使用 Python 2 7 和 win32com 包实现图标覆盖处理程序的示例和主题 但它对我不起作用 我不明白为什么 我创建了DLL 注册时没有错误 我也尝试过直接使用脚本 但结果是一样的 就像这个班级从未
  • 内部生成器:无法运行程序“g++”:系统找不到指定的文件

    Internal Builder is used for build g ot1 o t1 cpp Internal Builder Cannot run program g The system cannot find the file
  • :: 在 AngularJS 中是什么意思

    我见过这样的语法 a href some other thing a 那个双冒号是做什么用的 如果将其删除会发生什么 用于一次性绑定 一旦稳定 即第一次消化后 表达式将停止重新计算 所以任何更新something将不可见
  • 将 csv 从云存储导入到云 sql 时服务帐户访问被拒绝(权限问题?)

    我正在尝试使用云存储中的 csv 填充 mysql 数据库 我正在使用API浏览器 https cloud google com sql docs mysql admin api v1beta4 instances import examp
  • 循环 DOMDocument

    我正在遵循这个问题 Robust 的建议 成熟的 PHP HTML 解析器 https stackoverflow com questions 292926 robust mature html parser for php 321963
  • 在 C++ 中将结构体转换为 int

    我有一个结构来表示 29 位 CAN 标识符 其位字段如下 struct canId u8 priority 3 u8 reserved 1 u8 dataPage 1 u8 pduFormat 8 u8 pduSpecific 8 u8
  • 如何使用 Azure DevOps 处理 React 应用程序中的多个环境

    开发人员在那里 我在尝试使用 Azure DevOps 在我的 React 项目中设置多个环境时遇到了一些问题 关于如何完成这项工作的信息并不多 我可以看到如何做到这一点 我想要 发展 生产 目前我已经在我的 React 应用程序上实现了它
  • CORS和XSS有什么联系吗?

    维基百科页面中提到了跨站脚本 XSS CORS http en wikipedia org wiki Cross origin resource sharing 但我不明白它们有什么关系 CORS 和 XSS 之间有什么联系 维基百科文章中