一种互联网安全调用本地功能的系统和方法

文档序号:7645359阅读:135来源:国知局
专利名称:一种互联网安全调用本地功能的系统和方法
技术领域
本发明涉及互联网技术,特别涉及一种互联网安全调用本地功能的系 统和方法。
技术背景一些内容来自服务器的联网程序常常会访问用户本地的资源,运行一 些本地的程序。上述本地资源通常是安装于本地的程序,或者通过安装于 本地的程序访问到的本地文件。如果这类程序是用户通过第三方程序(比 如浏览器)进行下载和安装,出于安全性的考虑,操作系统会要求上述的 本地程序提供可信的依据,或者要求用户手动确认该程序的合法性。否则 这些程序将被视为非法,不会被安装到本机上。 一旦程序被安装后,该程 序在本地便可以正常运行,此类程序往往会提供一些方法供其他程序调用。最典型的例子是网页通过ActiveX控件调用本地程序。 一些浏览器,例如Internet Explorer、网景浏览器等都在不同程度上 支持ActiveX控件。这允许网页通过脚本和控件交互产生更加丰富的效果, 同时也带来一些安全性的问题。Internet Explorer和一些其他应用程序同 时支持ActiveX Documents接口规范,允许在一个应用程序中嵌入另一个 支持这个规范的应用程序。很多应用软件,例如微软的Microsoft Office 系列和Adobe的Acrobat Reader都实现了这个规范。ActiveX在广义上是指微软公司的整个COM架构,但是现在通常用来
称呼基于标准COM接口来实现对象连接与嵌入的ActiveX控件。后者是指 从VBX发展而来的,面向微软的Internet Explorer技术而设计的以OCX 为扩展名的OLE控件。通过定义容器和组件之间的接口规范,如果编写了 一个遵循规范的控件,那么可以很方便地在多种容器中使用而不用修改控 件的代码。同样,通过实现标准接口调用, 一个遵循规范的容器可以很容 易地嵌入任何遵循规范的控件。ActiveX控件本身是一个可执行程序, 一个ActiveX控件只要安装注册 到了本地,就可以在本地完全受信地运行,在安装注册ActiveX控件时, 它的安全性是通过ActiveX控件安全证书来保证的。ActiveX控件安全证书 由专门的评估机构评估并颁发,证明该ActiveX控件是安全的,它和ActiveX 控件一起打包分发。当用户浏览一个包含有ActiveX控件的网页时,浏览 器会检查本地是否安装过该控件,如果没有安装,浏览器会根据自身的安 全策略验证安全证书的合法性,如果通过验证或者用户人为允许,就自动 把它下载到本地,然后进行安装。网页本身无法访问本地的资源,但是却可以创建在本地安装注册过的 ActiveX控件,通过创建的该ActiveX控件调用本地的功能。ActiveX控件 在本地安装注册后,任何网页都可以检测并在本地创建这个ActiveX控件, 并调用相应的方法。比如一个ActiveX控件提供了一个下载文件的方法, 其他网页可以创建该ActiveX控件,利用该方法下载恶意程序。ActiveX控 件在页面上的传统的调用方法会通过脚本语言直接创建一个Act i veX控件, 通过这个对象直接调用下属的方法。虽然在ActiveX控件的下载和安装阶段,有安全签名来确保该ActiveX 控件是可信的。但是,由于ActiveX控件在系统安装注册之后,任何网页 都可以创建该ActiveX控件,调用相应的函数,所以这样会带来严重的安
全问题。同样,在其他可供网页创建和调用的控件如XPCOM组件的使用中也有 类似的安全问题。发明内容本发明的目的在于,提供一种互联网安全调用本地功能的系统,在互 联网程序调用本地程序的时候会做相关限制,以保证本地程序不被其他互 联网程序非法调用。本发明的这一 目的是通过如下技术方案实现的一种互联网安全调用本地功能的系统,包括用于创建一个已在本地安 装注册的可供网页创建和调用的控件并调用可供网页创建和调用的控件方 法的页面调用模块、用于执行客户端程序模块提供的相应方法、返回数据 的功能执行模块;其中,所述页面调用模块创建的所述可供网页创建和调 用的控件提供一个用于向客户端程序内核发送HTTP请求的方法,客户端程 序内核在接受到请求后会根据请求参数对HTTP请求作出响应。特别地,所述可供网页创建和调用的控件包括来源有效性验证模块,用于判断上述HTTP请求的来源是否合法,从而 判断可供网页创建和调用的控件是否被合法调用;HTTP请求签名模块,用于对通过了来源验证的HTTP请求做签名; 所述客户端程序内核,包括HTTP服务器,用于接收所述可供网页创建和调用的控件发过来的HTTP 请求,并且根据HTTP请求的参数将请求转化为具体的对客户端程序调用命 令,调用客户端程序模块提供的相应方法,调用时会附带签名;签名有效性验证模块,用于验证调用请求附带的签名的合法性,防止
非法调用。所述可供网页创建和调用的控件包括但不限于ActiveX控件或XPCOM 组件。本发明的另一目的在于,提供一种互联网安全调用本地功能的方法, 在互联网程序调用本地程序的时候会做相关限制,以保证本地程序不被其 他互联网程序非法调用。本发明的这一 目的是通过如下技术方案实现的 一种互联网安全调用本地功能的方法,所述方法包括 创建一个已在本地安装注册的可供网页创建和调用的控件的可供网页 创建和调用的控件创建步骤;调用可供网页创建和调用的控件方法的页面 调用步骤;执行客户端程序模块提供的相应方法、返回数据的功能执行步 骤;其中,所述可供网页创建和调用的控件提供一个用于向客户端程序内 核发送HTTP请求的方法,客户端程序内核在接受到请求后会根据请求参数 对HTTP请求作出响应。特别地,所述可供网页创建和调用的控件包括-来源有效性验证模块,用于判断上述HTTP请求的来源是否合法,从而 判断可供网页创建和调用的控件是否被合法调用;HTTP请求签名模块,用于对通过了来源验证的HTTP请求做签名; 所述客户端程序内核,包括HTTP服务器,用于接收所述可供网页创建和调用的控件发过来的HTTP 请求,并且根据HTTP请求的参数将请求转化为具体的对客户端程序调用命 令,调用客户端程序模块提供的相应方法,调用时会附带签名;签名有效性验证模块,用于验证调用请求附带的签名的合法性,防止 非法调用。
非法调用。所述可供网页创建和调用的控件包括但不限于ActiveX控件或XPCOM 组件。本发明的另一目的在于,提供一种互联网安全调用本地功能的方法, 在互联网程序调用本地程序的时候会做相关限制,以保证本地程序不被其 他互联网程序非法调用。本发明的这一 目的是通过如下技术方案实现的 一种互联网安全调用本地功能的方法,所述方法包括 创建一个已在本地安装注册的可供网页创建和调用的控件的可供网页 创建和调用的控件创建步骤;调用可供网页创建和调用的控件方法的页面 调用步骤;执行客户端程序模块提供的相应方法、返回数据的功能执行步 骤;其中,所述可供网页创建和调用的控件提供一个用于向客户端程序内 核发送HTTP请求的方法,客户端程序内核在接受到请求后会根据请求参数 对HTTP请求作出响应。特别地,所述可供网页创建和调用的控件包括-来源有效性验证模块,用于判断上述HTTP请求的来源是否合法,从而 判断可供网页创建和调用的控件是否被合法调用;HTTP请求签名模块,用于对通过了来源验证的HTTP请求做签名; 所述客户端程序内核,包括HTTP服务器,用于接收所述可供网页创建和调用的控件发过来的HTTP 请求,并且根据HTTP请求的参数将请求转化为具体的对客户端程序调用命 令,调用客户端程序模块提供的相应方法,调用时会附带签名;签名有效性验证模块,用于验证调用请求附带的签名的合法性,防止 非法调用。
商认可的网页调用。从而保证互联网安全地调用本地功能,进一步确保系 统的安全。


图1为本发明所述一种互联网安全调用本地功能的系统的结构示意图; 图2为本发明所述一种互联网安全调用本地功能的方法的流程图;具体实施方式
本发明通过对可供网页创建和调用的控件其中之ActiveX控件的安全 调用为例,进一步说明本发明的技术方案。如图1所示, 一种互联网安全调用本地功能的系统,包括用于创建一 个已在本地安装注册的ActiveX控件1并调用ActiveX控件方法的页面调 用模块2、用于执行客户端程序模块提供的相应方法、返回数据的功能执行 模块3;所述页面调用模块2创建的ActiveX控件1提供一个用于向客户端 程序内核4发送HTTP的请求的方法,该方法用于调用客户端程序模块;所 述客户端程序内核4在接受到请求后会根据请求参数对HTTP请求作出响 应。所述ActiveX控件1包括来源有效性验证模块ll,用于判断上述HTTP请求的来源是否合法,从而判断ActiveX控件1是否被合法调用;HTTP请求签名模块12,用于对通过了来源验证的HTTP请求做签名; 所述客户端程序内核4除了本身的功能模块,如在本地创建和删除文件的模块,还包括HTTP服务器41,用于接收ActiveX控件1发过来的HTTP请求,并且 根据HTTP请求的参数将请求转化为具体的对客户端程序调用命令,调用客 户端程序模块提供的相应方法,调用时会附带签名;签名有效性验证模块42,用于验证调用请求附带的签名的合法性,防 止非法调用。如图2所示, 一种互联网安全调用本地功能的方法,所述方法包括如 下步骤ActiveX控件创建步骤通过页面调用模块2创建一个已在本地安装注 册的ActiveX控件1;所述ActiveX控件1提供一个用于向客户端程序内核 4发送HTTP请求的ActiveX控件方法,该ActiveX控件方法用于调用客户 端程序模块。页面ActiveX控件方法调用步骤通过页面调用模块2调用ActiveX 控件方法,当试图调用的本地功能和该ActiveX控件方法的参数对应,该 ActiveX控件方法会根据参数向客户端程序内核4的HTTP服务器41发送 HTTP请求;来源有效性验证步骤在HTTP请求被执行之前,ActiveX控件1提供 的用于调用客户端程序模块的ActiveX控件方法会通过来源有效性验证模 块11判断该HTTP请求的来源,即验证调用该ActiveX控件方法的页面来 源,与允许的来源地址对比。如果通过来源有效性验证,则进入HTTP请求 签名步骤;无法通过来源有效性验证的请求将到此结束。来源的合法性由 来源有效性验证模块ll自定义,往往限制为处于特定域的终端才能发送调 用请求。HTTP请求签名步骤通过HTTP请求签名模块12对通过了来源有效性 验证的HTTP请求做签名;HTTP请求签名模块12会给HTTP请求进行签名,
并以参数的形式和原HTTP请求参数一起发送给HTTP服务器41。签名有效性验证步骤客户端程序内核4的HTTP服务器41接受HTTP 请求,并且根据HTTP请求的参数将请求转化为具体的对客户端程序调用命 令;之后,客户端程序内核4会首先验证签名的合法性,再根据请求的参 数调用相应的客户端程序模块;而签名验证不合法的请求将到此结束。功能执行步骤通过功能执行模块3执行客户端程序模块提供的相应 方法,返回数据。为了本领域的技术人员更清楚的了解本发明,下面是上述方法在实际 应用中的实例a. ActiveX控件创建步骤,通过页面调用模块2创建一个已在本地安装注册 的名为"KLocal. Server"的ActiveX控件,其提供一个向客户端程序内 核4发送HTTP请求的ActiveX控件方法KLocal. Server. CallLocal (uri);b. 页面ActiveX控件方法调用步骤,通过页面调用模块2调用KLocal提 供的唯 一 的用于调用客户端程序模块方法"KLocal. Server. CallLocal (uri) ", uri为请求的参数,该方法会组 装参数,向HTTP服务器41发送HTTP请求,形如 "/dosomething modual=getList&id=123,,;c. 来源有效性验证步骤,在HTTP请求被执行之前,通过来源有效性验证 模块11判断"/dosomething modual=getList&id=123"这个HTTP请求 的来源,由于只希望该ActiveX控件只被来自"duba.kingsoft.net" 的页面所调用,检验为该HTTP请求头的Referer,如果发现来源不是"duba.kingsoft.net"的页面,就终止本次调用;d. HTTP请求签名步骤,对于来源正确的HTTP请求,通过HTTP请求签名 模块12对该HTTP请求做一个签名,并以参数的形式和原HTTP请求参
数一起发送给HTTP服务器41;e. 签名有效性验证步骤,位于所述客户端程序内核4的HTTP服务器41, 接受经过签名的HTTP请求,验证签名的合法性,根据请求的参数"modua卜getList&id-123 ",调用客户端程序模块提供的方法 "getList(id)";f. 功能执行步骤通过功能执行模块3执行"getList(id)"方法,返回 数据;g. 结束。上述过程简而言之就是,ActiveX控件1提供一个CallLocal的方法, 页面调用ActiveXl. CallLocal ( "getList i(KL23");该方法内部会生成 一个http请求http:〃localhost/ge让ist id二123&sig:xx其中sig是做 本地请求做的签名;HTTP服务器41接收到请求后,会直接调用程序内核4 总代理goFunction(getList, 123, xx)方法,签名有效性验证模块42会对 签名做验证,做最后的调用getList(123),最后逐层返回数据。下面是本发明在本申请人的产品中的典型例子产品类型安全类软件。在安全类软件中,提供了置于mercury, duba.net的页面供用户访问。 当用户访问该页面时页面会要求用户安装ActiveX控件,该控件用于将用户本地运行的一 些软件人为设置为"阻止"或者"不阻止"的状态。 应用本发明后不属于mercury, duba. net网页一旦创建该ActiveX控件并调用方法, 将不能通过来源验证;如果试图直接访问所述客户端程序内核的HTTP服务器,将无法通过请
求签名的合法性验证,同样无法调用所述客户端程序模块提供的任何方法。进而确保了 ActiveX控件调用的安全性。 而在传统方式下由于该ActiveX控件安装后就被认为是受信的,在方法暴露的情况下, 其他网页会创建该ActiveX控件,并有可能将某些"不安全"的程序非法 设置为"安全",从而会影响系统的安全。同样,对于其他可供网页创建和调用的控件,比如XPCOM组件的调用, 也能够通过上述技术方案实现安全调用。以上实施例仅用以说明而非限制本发明的技术方案;如果本领域的技 术人员受到本发明的启发,不脱离本发明精神和范围的任何修改或局部替 换,均应涵盖在本发明的保护范围当中。
权利要求
1、一种互联网安全调用本地功能的系统,包括用于创建一个已在本地安装注册的可供网页创建和调用的控件并调用可供网页创建和调用的控件方法的页面调用模块、用于执行客户端程序模块提供的相应方法、返回数据的功能执行模块;其中,所述页面调用模块创建的所述可供网页创建和调用的控件提供用于向客户端程序内核发送HTTP请求的方法,客户端程序内核在接受到请求后会根据请求参数对HTTP请求作出响应。
2、 根据权利要求1所述的一种互联网安全调用本地功能的系统,其特 征在于,所述可供网页创建和调用的控件包括来源有效性验证模块,用于判断上述HTTP请求的来源是否合法,从而 判断所述可供网页创建和调用的控件是否被合法调用;HTTP请求签名模块,用于对通过了来源验证的HTTP请求做签名;所述客户端程序内核,包括-HTTP服务器,用于接收所述可供网页创建和调用的控件发过来的HTTP 请求,并且根据HTTP请求的参数将请求转化为具体的对客户端程序调用命 令,调用客户端程序模块提供的相应方法,调用时会附带签名;签名有效性验证模块,用于验证调用请求附带的签名的合法性,防止 非法调用。
3、 根据权利要求1或2所述的一种互联网安全调用本地功能的系统, 其特征在于,所述可供网页创建和调用的控件是ActiveX控件或XPC0M组 件。
4、根据权利要求1或2所述的一种互联网安全调用本地功能的系统, 其特征在于,所述可供网页创建和调用的控件只提供一个用于调用客户端 程序模块的方法。
5、 一种互联网安全调用本地功能的方法,所述方法包括-创建一个己在本地安装注册的可供网页创建和调用的控件的可供网页创建和调用的控件创建步骤;调用可供网页创建和调用的控件方法的页面 调用步骤;执行客户端程序模块提供的相应方法、返回数据的功能执行步 骤;其中,所述可供网页创建和调用的控件提供用于向客户端程序内核发 送HTTP请求的方法,客户端程序内核在接受到请求后会根据请求参数对 HTTP请求作出响应。
6、 根据权利要求5所述的一种互联网安全调用本地功能的方法,其特 征在于,所述可供网页创建和调用的控件包括来源有效性验证模块,用于判断上述HTTP请求的来源是否合法,从而 判断可供网页创建和调用的控件是否被合法调用;HTTP请求签名模块,用于对通过了来源验证的HTTP请求做签名; 所述客户端程序内核,包括HTTP服务器,用于接收所述可供网页创建和调用的控件发过来的HTTP 请求,并且根据HTTP请求的参数将请求转化为具体的对客户端程序调用命 令,调用客户端程序模块提供的相应方法,调用时会附带签名;签名有效性验证模块,用于验证调用请求附带的签名的合法性,防止 非法调用。
7、根据权利要求5或6所述的一种互联网安全调用本地功能的方法, 其特征在于,所述可供网页创建和调用的控件是ActiveX控件或XPC0M组 件。
8、 根据权利要求5或6所述的一种互联网安全调用本地功能的方法, 其特征在于,所述可供网页创建和调用的控件只提供一个用于调用客户端 程序模块的方法。
9、 一种互联网安全调用本地功能的方法,所述方法包括如下步骤-可供网页创建和调用的控件创建步骤通过页面调用模块创建一个己在本地安装注册的可供网页创建和调用的控件;页面可供网页创建和调用的控件方法调用步骤通过页面调用模块调 用可供网页创建和调用的控件方法,当试图调用的功能和该方法的参数对 应,该方法会根据参数向客户端程序内核的HTTP服务器发送HTTP请求;来源有效性验证步骤在HTTP请求被执行之前,通过来源有效性验证 模块判断该HTTP请求的来源,如果通过了来源有效性验证,则进入HTTP 请求签名步骤;无法通过来源有效性验证的请求将到此结束;HTTP请求签名步骤通过HTTP请求签名模块对通过了来源有效性验证 的HTTP请求做签名,并以参数的形式和原HTTP请求参数一起发送给HTTP 服务器;签名有效性验证步骤客户端程序内核的HTTP服务器接受HTTP请求, 并且根据HTTP请求的参数将请求转化为具体的对客户端程序调用命令;之 后,客户端程序内核会首先验证签名的合法性,再根据请求的参数调用相 应的客户端程序模块;而签名验证不合法的请求将到此结束;功能执行步骤通过功能执行模块执行客户端程序模块提供的相应方法,返回数据。
10、根据权利要求9所述的一种互联网安全调用本地功能的方法,其 特征在于,所述可供网页创建和调用的控件是ActiveX控件或XPCOM组件。
全文摘要
一种互联网安全调用本地功能的方法,所述方法包括创建一个已在本地安装注册的可供网页创建和调用的控件的可供网页创建和调用的控件创建步骤;调用可供网页创建和调用的控件方法的页面调用步骤;执行客户端程序模块提供的相应方法、返回数据的功能执行步骤;其中,所述可供网页创建和调用的控件提供一个用于向客户端程序内核发送HTTP请求的方法,客户端程序内核在接受到请求后会根据请求参数对HTTP请求作出响应。由于本发明对可供网页创建和调用的控件方法的调用做了特殊的封装,确保了安装在用户机器上的可供网页创建和调用的控件只会被该可供网页创建和调用的控件开发厂商认可的网页调用,从而保证互联网安全地调用本地功能。
文档编号H04L29/06GK101150577SQ200710031239
公开日2008年3月26日 申请日期2007年11月2日 优先权日2007年11月2日
发明者何卫东, 军 李, 段雨洛 申请人:珠海金山软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1