为什么决定使用XMLHTTPRequest进行XML调用不应该跨域边界进行调用?您可以检索JavaScript,图像,CSS,iframe以及我可以想到的来自其他域的几乎所有其他内容。为什么不允许Ajax HTTP请求跨越域边界?考虑到我可以看到它被滥用的唯一方法,这似乎是一个奇怪的限制,那就是如果有人要向页面中注入Javascript。但是,在这种情况下,您只需在文档中添加一个img,脚本或iframe元素即可获取该文件以请求第三方URL并将其发送到服务器。

[编辑]

一些答案指出了以下原因,让我们指出了它们没有创建不允许这样做的主要原因的原因。

XSRF(跨站点请求伪造,也称为CSRF,XSRF)

您可以完全不使用XSRF进行攻击。通常,根本不使用XMLHTTPRequest,只是因为很难以与所有主要浏览器兼容的方式创建XMLHTTPRequest。如果希望他们加载URL,只需在URL上添加一个img标记就容易得多。

发布到第三方网站

$.post("http://some-bank.com/transfer-money.php",

{ amount: "10000", to_account: "xxxx" })

可以完成

JPunyon:为什么要将该漏洞保留为新功能

您不会再造成任何不安全感。您只是给想要以某种方式使用它的开发人员带来不便。任何想将此功能用于邪恶(又称“真棒”)的人都可以使用其他方法来实现。

结论

我将bobince的答案标记为正确,因为他指出了关键问题。因为XMLHTTPRequest允许您使用凭据(cookie)将其发布到目标站点,并读取从站点发送回的数据以及发送人员凭据,所以您可以编排一些javascript,这些javascript可以提交一系列表单,包括确认表单,并附有为防止XSRF而生成的随机密钥。这样,您就可以像银行一样浏览目标站点,而银行的网络服务器将无法断定,不仅仅是提交所有这些表格的普通用户。

只有ajax会跨域吗_为什么跨域Ajax是安全问题?相关推荐

  1. ajax渲染数据到页面_爬虫进阶丨Ajax爬取案例实战

    爬取目标 目标网站:https://dynamic1.scrape.cuiqingcai.com/ 详情页 先尝试用requests来直接提取页面 import requestsurl = 'http ...

  2. 跨职能流程图_领导跨职能团队的6个关键技巧

    跨职能流程图 因此,您面临着领导第一个跨职能项目的挑战,这需要跨组织职能部门的人员做出自愿努力才能实现其目标. 恭喜你! 但是,在您对证明自己的机会感到兴奋的同时,您也对自己实际将如何执行感到焦虑? ...

  3. ajax 请求_前端后分离Ajax跨域请求保证Session一致

    JAVA码牛牛,程序员学习指南 前后端分离的项目,使用Ajax请求一般都出现跨域的问题. 跨域的时候所创建的session是不会被浏览器保存下来的.所以每次进行跨域请求时,服务器都认为不是同一个浏览器 ...

  4. ajax 跨域请求_什么是跨域问题?如何解决?

    1. 概述 几个疑问: 什么是跨域? 如何判断是否产生「跨域」? 跨域,带来的问题? 跨域问题,解决思路? 2. 跨域:是什么 跨域的问题根源:浏览器的「同源策略」. 2.1. 同源策略 同源策略(S ...

  5. jsonp跨域原理_【网站技术解读①】Javascript实现跨域请求

    推荐一个读者做的不错的编程学习网站: 网站:潜安 域名:http://www.qianani.com 另外将会不定期推送近期网站用到的一些技术,讲一些核心原理,今天为第一篇 问题由来: 最近一直在优化 ...

  6. html 跨域_常见跨域解决方案以及Ocelot 跨域配置

    常见跨域解决方案以及Ocelot 跨域配置 Intro 我们在使用前后端分离的模式进行开发的时候,如果前端项目和api项目不是一个域名下往往会有跨域问题.今天来介绍一下我们在Ocelot网关配置的跨域 ...

  7. cors 前后端分离跨域问题_前后端分离之CORS跨域访问踩坑总结

    前言 前后端分离的开发模式越来越流行,目前绝大多数的公司与项目都采取这种方式来开发,它的好处是前端可以只专注于页面实现,而后端则主要负责接口开发,前后端分工明确,彼此职责分离,不再高度耦合,但是由于这 ...

  8. nginx解决浏览器跨域问题_前端通过Nginx反向代理解决跨域问题

    在前面写的一篇文章SpringMVC解决跨域问题,我们探讨了什么是跨域问题以及SpringMVC怎么解决跨域问题,解决方式主要有如下三种方式: JSONP CORS WebSocket 可是这几种方式 ...

  9. ajax背景、ajax对象、ajax状态、ajax与http、ajax请求数据接口、同步与异步、ajax请求XML数据、封装ajax函数、artTemplate简介、同源策略和跨域请求、JSONP

    AJAX简介: ajax背景: 1.AJAX(Asynchronous JavaScript And Xml)异步的 JavaScript 和 XML:ajax是浏览器提供的一套API,最早出现在谷歌 ...

最新文章

  1. MarkdownView:Markdown 文档预览视图组件
  2. LVS的三种负载均衡以及高可用原理(VS/NAT、VS/TUN、VS/DR)
  3. 交换二维数组元素c语言,二维数组中元素替换问题!
  4. android 一个activity定时更新另一个activity的UI
  5. Hibernate - DetachedCriteria 的完整用法
  6. 数据结构期末复习之二叉排序树
  7. PTA16、列表元素个数的加权和(1) (10 分)
  8. 深入分析redis cluster 集群安装配置详解
  9. 一个init.php(网站启始)的一般信息
  10. vs 2005應用2003框架
  11. ios上java代码实现_IOS学习之路五(代码实现UITableView)
  12. Linux cut 实例
  13. Kotlin解析JSON数据
  14. java中uri与url的区别_URL和URI的区别与总结
  15. stm32中typedef的用法
  16. 大话西游服务器维护多长时间,《大话西游3》2010-9-21服务器停机维护公告(二)...
  17. 从oracle到mysql模型转换的自动化实现
  18. 曾“须知少时凌云志,曾许人间第一流”,却10平米不到屋子像极了你小时候的“梦想”
  19. 小程序商品数据对象累加加入购物车缓存导致的数组嵌套在上一层数组中的问题
  20. 只要7步,任何魔方6面都能还原!留着教孩子

热门文章

  1. Create an offline installation of Visual Studio 2017 RC
  2. CSS教程:实例讲解定位Position
  3. 简单工厂(Simple Factory)模式
  4. android 字母搜索栏,android仿微信通讯录搜索示例(匹配拼音,字母,索引位置)
  5. c语言用switch字母判断星期几,c语言程序,输入年月日,判断这一天是这一年的第几天,同时判断这一天是星期几。(用switch语句)...
  6. 从零开始学前端:OPPO商城轮播图 --- 今天你学习了吗?(CSS:Day23)
  7. 计算机网络基础+重点知识点
  8. python获取月份字符串_Python时间获取及转换知识汇总
  9. Python+pandas使用重采样技术按时间段查看员工业绩
  10. 日程表|第8届高等学校计算机程序设计课程论坛