一种基于JSONP跨域获取信息的网络溯源方法技术

技术编号:14509663 阅读:211 留言:0更新日期:2017-02-01 02:15
本发明专利技术公开了一种基于JSONP跨域获取信息的网络溯源方法,利用JSONP技术越过浏览器的跨域限制,能够让被溯源目标在无感的状态下执行JS代码,访问不同网站的JSONP接口,获取被溯源目标的相关信息,在更全面信息的支撑下,分析并达到网络溯源的目的扩充了网络溯源的手段,且代理不会对目标信息的获取产生影响,达到穿透代理的效果。

【技术实现步骤摘要】

本专利技术涉及网络溯源
,更具体的是涉及一种基于JSONP跨域获取信息的网络溯源方法
技术介绍
网络溯源目前常用的方法是基于路由器的信息收集方法、基于反向追踪机制的方法等,其中基于路由器信息收集方法的主要思路为对流经可编程路由器(网络拓扑结构中部署的所有路由器均为可控的,而且可编程的)进行操作,对所有的数据报文进行取样、查看、修改报文头部内容。基于反向追踪机制的方法的主要思路为链接测试响应跟踪技术,包括输入调试和控制洪泛等,通常从诱饵网站或被影响站点最近的路由器开始检查,一步一步到溯源目标最近的路由器。当前阶段的对网络溯源方法的研究主要集中在对目标位置或者路径重构方面,目标若位于国内或者未使用任何代理的前提下,现有方法能够有效对目标的进行溯源,获取目标的IP地址、MAC地址等,但对于目标的身份信息确认以及在目标使用了VPN等某种代理下的网络溯源,现有方法则无法使用。
技术实现思路
针对上述问题,本专利技术提供了一种基于JSONP跨域获取信息的网络溯源方法,利用JSONP技术越过浏览器的跨域限制,且代理不会对目标信息的获取产生影响,达到穿透代理的效果。为了实现上述目的,本专利技术采用以下技术方案:一种基于JSONP跨域获取信息的网络溯源方法,包括:1)在网站服务器中植入JS代码;2)被溯源的目标通过浏览器访问已被植入JS代码的网站服务器,JS代码被自动下载到浏览器中;3)浏览器执行下载到本地的JS代码,并获取目标相关信息;4)收集并分析步骤3)获取的目标相关信息,实现对目标的网络溯源。进一步地,步骤1)中植入JS代码包括以下两种方式:一是挖掘网站自身的漏洞,渗透并在网站服务器中注入JS代码;第二种方式是建立诱饵网站,在网站服务器上部署JS代码。植入的JS代码用于劫持网站本身正常功能接口。进一步地,所述JS代码中包含了多个具有JSONP接口的网站。进一步地,步骤3)中,所述被溯源的目标在后台循环访问JS代码包含的不同网站的JSONP接口,获取目标相关信息。进一步地,所述JSONP的工作流程,具体如下:(i)在浏览器页面下注册一个JavaScript函数作为回调函数。(ii)在使用浏览器过程中,根据触发相关事件,动态形成script元素,设置其src属性,属性值即为JSONP接口地址(例:src属性是一个存在的JS文件,或是一个url,src属性是url时,则把步骤(i)中注册的回调函数名称作为参数附加在url后面)。(iii)网站服务器在接收到用户输入的请求以后,则会分析请求的url,获取代码并执行,将请求到的数据作为参数传递给(i)中定义的回调函数。(iv)浏览器在接收到步骤(iii)的响应后,将调用步骤(i)中注册的回调函数进行处理。进一步地,上述网络溯源方法还包括将步骤3)获取的目标相关信息跨域上传至第三方服务器,由第三方服务器收集并分析上述目标相关信息。进一步地,所述目标相关信息包括根据溯源需要获取的被溯源目标访问具有JSONP接口网站的身份信息。本专利技术的有益效果如下:本专利技术利用跨域获取的技术特点,能够让被溯源目标在无感的状态下执行JS代码,访问不同网站的JSONP接口,获取被溯源目标的相关信息,在更全面信息的支撑下,分析并达到网络溯源的目的,能够更有效的获取目标的信息,扩充了网络溯源的手段。本专利技术由目标机在本地浏览器直接执行JS代码,并采用跨域信息获取技术实现信息的上传,能够穿透代理,不会影响信息的收集,因此本专利技术突破代理的限制,具有更广阔的应用空间。附图说明图1是JSONP的工作流程图。图2是本专利技术基于JSONP跨域获取信息的网络溯源方法的流程图。具体实施方式JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JSONP(JSONwithPadding)是JSON的一种“使用模式”,属于一种非官方跨域数据交互协议,可用于解决主流浏览器的跨域数据访问的问题。本专利技术的实现首先涉及JSONP的工作流程,如图1所示,具体如下:步骤1:在浏览器页面下注册一个JavaScript函数作为回调函数。步骤2:在使用浏览器过程中会触发相关事件,依此动态形成script元素,设置其src属性,src属性不一定必须是一个存在的JS文件,也可以是一个url,若是url,则需要把步骤1中注册的回调函数名称作为参数附加在url后面。步骤3:Web服务器在接收到用户输入请求以后,则会分析请求的url,从而得到回调函数的名字,并以JSON格式生成请求需要的数据,并将作为回调函数的参数,按照JavaScript函数的格式组装后返回给浏览器。步骤4:浏览器在接收到步骤3的响应后,将调用步骤1中注册的回调函数进行处理。网络溯源的一种场景是通过积累大量的网站JSONP接口,所有目标在访问植入JS代码网站时,在被溯源的目标机器上循环访问这些接口地址,获取每个目标的身份信息(账号、密码、手机号等),通过这些数据来分析目标的身份信息。本场景中网络溯源方法的流程,如图2所示:步骤1:被追溯的目标机访问已被植入JS代码的网站服务器。步骤2:将网站的JS代码打包下载到目标机。步骤3:目标机浏览器执行下载到本地的JS代码,在JS代码中包含了多个存在可获取个人信息接口(即:JSONP接口)。步骤4:目标机浏览器将后台自动请求这些存在可获取个人信息接口。步骤5:获取目标的相关个人信息。步骤6:分析获取的目标相关个人信息达到溯源的目的。更具体的实现方式又涉及以下几个方面:(一)JS代码的植入主要有两种方式进行JS代码的插入,一是挖掘网站自身的漏洞,渗透并在网站服务器中注入JS代码;第二种方式是建立诱饵网站,在网站服务器上部署JS代码。完成两种方式中的任意一种动作,是进行基于跨域信息获取网络溯源的基础。当目标机访问上述两种插入JS代码的网站时,将会触发JS代码自动下载到目标机执行。(二)JSONP跨域获取信息浏览器的同源策略是浏览器的一个安全策略,该策略的设计主要是为了防止一个域的脚本操作或访问另外一个域的文档属性或数据信息。也就是说,受到请求的域必须与当前页面的域相同,否则将无法获取该所指向的数据。这意味着浏览器隔离来自不同源的内容,以防止它们之间的操作。之所以有同源策略限制的最根本原因就在于浏览器的规范制定者考虑用户在浏览网页时出现的安全问题。虽然浏览器的同源策略最初的设计是为了安全,但同时这种约束限制了很多有创意的网络应用的发展。为打破这种限制,逐渐形成了一种非正式传输协议,称作JSONP。JSONP技术是JSON的一种扩展,本身的实现非常简单,JSONP的实现主要是利用了浏览器的script标签可以跨域访问的机制,只需要通过代码动态创建节点,并将该节点的属性指向需要访问的域的资源地址,并附上一个参数,该参数的含义是回调函数,参数值是一个已经在本域的页面中定义的函数,服务器后台获取到参数值,并与需要返回的数据拼接成调用函数的形式,当数据返回第三方应用的前端页面时,已经定义好的函数就会执行,从而将跨域的数据在页面展现,实现基于的跨域数据访问。在JSONP技术的支持下,目标机将执行JS代码跨域访问不同站点接口的信息,达到跨域获取信息的目的。(三)网络溯源收集汇总不同本文档来自技高网...

【技术保护点】
一种基于JSONP跨域获取信息的网络溯源方法,包括:1)在网站服务器中植入JS代码;2)被溯源的目标通过浏览器访问已被植入JS代码的网站服务器,JS代码被自动下载到浏览器中;3)浏览器执行下载到本地的JS代码,获取目标相关信息;4)收集并分析步骤3)获取的目标相关信息,实现对目标的网络溯源。

【技术特征摘要】
1.一种基于JSONP跨域获取信息的网络溯源方法,包括:1)在网站服务器中植入JS代码;2)被溯源的目标通过浏览器访问已被植入JS代码的网站服务器,JS代码被自动下载到浏览器中;3)浏览器执行下载到本地的JS代码,获取目标相关信息;4)收集并分析步骤3)获取的目标相关信息,实现对目标的网络溯源。2.如权利要求1所述的基于JSONP跨域获取信息的网络溯源方法,其特征在于,步骤1)中植入JS代码包括以下两种方式:一是挖掘网站自身的漏洞,渗透并在网站服务器中注入JS代码;第二种方式是建立诱饵网站,在网站服务器上部署JS代码。3.如权利要求1所述的基于JSONP跨域获取信息的网络溯源方法,其特征在于,所述JS代码中包含了多个具有JSONP接口的网站。4.如权利要求3所述的基于JSONP跨域获取信息的网络溯源方法,其特征在于,步骤3)中,所述被溯源的目标在后台循环访问JS代码包含的不同网站的JSONP接口,获取目标相关信息。5.如权利要求1所述的基于JSONP跨域获取信息的网络溯源方法,其特征在于,所述JSONP的工作流程,具体如下:(i)在浏览器页面下注册一个JavaScript...

【专利技术属性】
技术研发人员:王扬波庞伟
申请(专利权)人:北京知道未来信息技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1