JSONP网站跨域请求的一种调用方式的安全风险

简介: 在网站开发设计的过程当中,我们会多多少少的遇到网站跨域的问题,一般网站的跨域,除了一个简单的img、link、script、iframe等等的标签调用法的跨域,还有一些特殊用途用到的跨域方式,我们现在了解应用比较广泛的JSONP跨域。

在网站开发设计的过程当中,我们会多多少少的遇到网站跨域的问题,一般网站的跨域,除了一个简单的img、link、script、iframe等等的标签调用法的跨域,还有一些特殊用途用到的跨域方式,我们现在了解应用比较广泛的JSONP跨域。


JSONP 网站跨域方式


JSONP英文称呼(JSON WITH PADDING),跨域的作用机制是调用在script标签里,这个需要网站开发人员在设计的过程当中,前端以及网站后端都要做好函数对接工作,这样才能使JSONP的跨域有效果。原理机制是当用户访问并请求到网站后端的情况下,会返回一个JS的地址,该JS地址会直接调用之前程序员设置好的函数,并把用户前端输入的数据作为一个参数,传入到后端服务器里,并成功的完成数据的对接工作。


我们看个例子,如下图所示:

u=959819984,1625297956&fm=173&app=25&f=JPEG.jpg

JSONP跨域方式


当用户访问一个页面,是不同跨域的页面就会返回没有值的页面,在上面的这个例子里,我们可以看出来,程序内置好的函数为foot经过callback函数的调用并直接传递给服务器的后端,后端服务器根据传递过来的参数值进行判断匹配,并返回给用户相应的值,来达到网站交互的功能,并实现整个jsonp的跨域调用,在整个调用过程当中,我们使用的都是script标签,用户的提交方式也只能是以GET提交数据的方式来执行。


JSONP跨域调用的方式上还存在着一些安全风险:


第一个是API 跨域调用的接口页面是大家都可以调用的那还好说,如果是管理员内部使用的一个API跨域接口那么带来的安全风险也是很大,存在着用户隐私安全泄露风险。


第二个是跨域调用返回的函数里用的JS代码的话,那么前端用户输入过来的值没有做判断的话,或者是安全过滤的话,有可能造成SQL注入问题,以及XSS跨站攻击,甚至严重一点的话会导致SOME漏洞的发生。


以上两个安全风险,在程序员开发网站代码的过程中,一定要提前做好漏洞修复,包括网站上线后,要做好网站安全检测,检测是否存在以上的安全风险,尽可能的对用户输入的值进行严谨的过滤,保障整个网站的安全稳定运行。

相关文章
|
4月前
|
移动开发 JavaScript 应用服务中间件
终结同源策略!轻松实现跨域访问的9种方式!
终结同源策略!轻松实现跨域访问的9种方式!
如何实现跨域请求?有哪些常用的方法?
如何实现跨域请求?有哪些常用的方法?
145 0
|
JSON JavaScript 前端开发
跨域请求的基本实现几种方式
跨域请求的基本实现几种方式
跨域请求的基本实现几种方式
|
JSON JavaScript 前端开发
ajax跨域问题
ajax跨域问题
101 0
ajax跨域问题
|
JSON 缓存 前端开发
|
前端开发 Java 应用服务中间件
|
前端开发 Java 数据格式
解决ajax跨域问题的一种方法
解决ajax跨域问题的一种方法 前后端分离经常用json来传输数据,比较常见的问题就有ajax跨域请求的错误问题,这里是我的一种解决方法: 在java中加入如下的注解类: import org.
915 0
|
JavaScript 前端开发
jsonp跨域请求360数据乱码解决办法
Document $(function(){ $('input').keyup(function(){ var vals = $(this).
1555 0
jsonpweb端跨域资源请求
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34173549/article/details/80547783 js...
697 0
|
Web App开发 前端开发 应用服务中间件
AJAX跨域完全讲解
AJAX跨域完全讲解 今天在慕课网上学习了AJAX跨域完全讲解:https://www.imooc.com/learn/947 我在收集AJAX面试题的时候其实就已经有过AJAX跨域的问题的了,当时候知道了为什么会存在跨域,以及跨域解决的方案有哪些,今天随着课程的学习,又加深了AJAX跨域的理解,以此记录下来。
1556 0