CN103019674A - 注册表重定向方法和装置 - Google Patents

注册表重定向方法和装置 Download PDF

Info

Publication number
CN103019674A
CN103019674A CN2012104605146A CN201210460514A CN103019674A CN 103019674 A CN103019674 A CN 103019674A CN 2012104605146 A CN2012104605146 A CN 2012104605146A CN 201210460514 A CN201210460514 A CN 201210460514A CN 103019674 A CN103019674 A CN 103019674A
Authority
CN
China
Prior art keywords
lsp
dll
registry
configuration
chain
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012104605146A
Other languages
English (en)
Other versions
CN103019674B (zh
Inventor
张波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201210460514.6A priority Critical patent/CN103019674B/zh
Publication of CN103019674A publication Critical patent/CN103019674A/zh
Application granted granted Critical
Publication of CN103019674B publication Critical patent/CN103019674B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种注册表重定向方法,该方法包括:加载应用程序的配置信息;根据所加载的配置信息判断LSP配置注册表数据中是否包括需要屏蔽的LSP DLL;包括当包括需要屏蔽的LSP DLL时,则将该LSP DLL的信息从LSP配置注册表数据中删除,构造出一份新的LSP配置注册表数据;将对LSP配置注册表数据的操作重定向到新建的LSP注册表配置注册表数据上。利用本发明的方法,通过利用注册表重定向机制,针对Windows系统中的特定或全部进程屏蔽特定或者全部的LSP DLL,避免这些LSP DLL加载到进程中,提高应用程序的稳定性和安全性。

Description

注册表重定向方法和装置
技术领域
本发明涉及应用程序监控技术,具体涉及一种注册表重定向方法和装置。
背景技术
LSP(Layered Service Provider)是Windows平台的通信架构WinSock(WinSock(Windows Sockets)是操作系统提供的Windows操作系统应用层的网络通信架构和规范的缩写)中特有的一个机制。通过可扩展的LSP机制,使得第三方软件开发商可以在应用程序中插入DLL对TCP/IP数据包进行监听、修改,从而开发出丰富的网络应用,如聊天软件通信加密工具、网络代理软件、网络游戏加速器等。
LSP既可以用来开发正规的应用,病毒木马作者也可以利用LSP在用户的系统中插入恶意代码,窃取用户信息等。另外,由于LSP注入到系统的绝大多数进程中,串接在应用程序的网络访问操作中,如果代码考虑不周,就会导致不能上网、程序崩溃或卡死等现象。所以需要有一定的手段来屏蔽LSP机制,防止对应用程序无实际作用的第三方的LSP DLL加载到应用程序进程中产生干扰,这对安全软件尤其重要。
然而,目前还没有一种有效的措施来及时发现并屏蔽一些有问题的LSPDLL。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的通过注册表重定向屏蔽特定LSP DLL的方法和相应的通过注册表重定向屏蔽特定LSP DLL的装置。
依据本发明的一个方面,提供了一种注册表重定向方法,该方法包括:步骤1,加载应用程序的配置信息;步骤2,根据所加载的配置信息判断LSP配置注册表数据中是否包括需要屏蔽的LSP DLL;步骤3,如果包括,则将该LSP DLL的信息从LSP配置注册表数据中删除,构造出一份新的LSP配置注册表数据;步骤4,将对LSP配置注册表数据的操作重定向到新建的LSP注册表配置注册表数据上。
可选地,所述配置信息包括需要屏蔽哪些LSP DLL,以及在哪些进程中屏蔽这些LSP DLL。
可选地,所述步骤4中的重定向操作包括:在应用层对指定或者全部进程进行文件操作API函数的挂钩。
可选地,所述步骤4中的重定向操作包括:步骤4中的重定向操作包括:在驱动层通过挂钩文件操作的系统调用,或者使用系统提供的文件系统过滤驱动机制。
可选地,所述步骤2进一步包括:读取系统的LSP配置注册表数据。
依据本发明的另一方面,提供了一种注册表重定向装置,该装置包括:配置文件加载模块,用于加载应用程序的配置信息;判断模块,根据所加载的配置信息判断LSP配置注册表数据中是否包括需要屏蔽的LSP DLL,如果包括,则将该LSP DLL的信息从LSP配置注册表数据中删除,构造出一份新的LSP配置注册表数据;重定向执行模块,将对LSP配置注册表数据的操作重定向到新建的LSP注册表配置注册表数据上。
利用本发明的注册表重定向方法和装置,通过注册表重定向机制,针对Windows系统中的特定或全部进程屏蔽特定或者全部的LSP DLL,避免这些LSP DLL加载到进程中,提高应用程序的稳定性和安全性。
本发明的方案不需要携带操作系统提供的默认的任何LSP配置,既可以针对系统中的单个LSP DLL进行屏蔽,也可以将全部LSP DLL都屏蔽,既可以针对单个进程进行LSP DLL屏蔽,也可以针对所有进程进行LSP DLL屏蔽。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为现有技术的WinSock框架示意图;
图2为根据本发明一实施例的注册表重定向方法流程图;
图3为根据本发明一实施例的注册表重定向装置的结构框图;
图4为本发明注册表重定向方法的一种具体应用场景流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1为WinSock框架示意图,参照图1,transport provider有两个链:TCP链、UDP链。还可以有其它类型的LSP链。
TCP链中,从上到下共4层(其中底层的mswsock.dll是操作系统本身所具有的功能)。UDP链包括3层。
右边的3个是namespace provider,其中最右边的winrnr.dll是操作系统提供的。
其中,LSP属于应用层,所有LSP DLL都运行在环3特权级别下,但LSP的行为可以从环3或者环0来进行一定的控制,比如对其文件或注册表操作进行控制。LSP既可以用来开发正规的应用,病毒木马作者也可以利用LSP在用户的系统中插入恶意代码,窃取用户信息等。另外,由于LSP注入到系统的绝大多数进程中,串接在应用程序的网络访问操作中,如果代码考虑不周,就会导致不能上网、程序崩溃或卡死等现象。所以需要有一定的手段来屏蔽LSP机制,防止对应用程序无实际作用的第三方的LSP DLL加载到应用程序进程中产生干扰,这对安全软件尤其重要。
常见的屏蔽(或者跳过)LSP DLL的方法包括:
1、利用Windows系统提供的策略,指定哪些进程加载或者不加载特定类型的LSP DLL,这种技术存在的缺点是:只有Vista及其以上的Windows平台才支持这个特性;只能根据LSP所属的分类来排除,策略太粗放。
2、彻底抛弃WinSock,越过应用层的WinSock架构,直接向网络驱动发控制码、数据包进行网络通信。这种方法的缺点是:需要了解和驱动层通信的任何细节,这细节一般是非文档化的;在有proxy的环境下,需要自行实现proxy协议才能正常访问网络;这种方法不会加载第三方的任何LSP DLL,在必须要加载某些proxy类型的LSP DLL才能正常访问网络的环境中,无法上网。
3、自带一份Windows默认的LSP配置,这个配置中不包括操作系统提供的之外的任何LSP DLL,通过注册表重定向让应用程序访问这个默认LSP配置,从而不加载第三方的任何LSP DLL。这种方法的缺点是:不会加载第三方的任何LSP DLL,在必须要加载某些proxy类型的LSP DLL才能正常访问网络的环境中,无法上网;要针对不同的Windows版本带一份不同的默认LSP配置,比如32位XP带一份,32位Win7带另一份。
WinSock中包括transport provider DLL和namespace provider DLL两种可扩展的DLL,transport provider用于网络数据收发,是分层的,理论上支持无限多层,所有的各层上下串在一起形成一个链;namespace provider用于网络名称解析,不分层。一般所说的LSP是指transport provider。本发明既支持transport provider,也支持namespace provider。
本发明实施中,可以基于Windows的LSP注册表配置,删除其中要屏蔽的LSP DLL信息后,构造新的LSP注册表配置。将应用程序初始化WinSock时读取LSP配置的注册表操作重定向到这份新的LSP注册表配置上,从而使得应用程序不会加载要屏蔽的LSP DLL。
图2为本发明的注册表重定向方法流程图。该方法通过构造新的LSP配置注册表数据、重定向LSP注册表配置注册表数据的读写操作来向应用程序屏蔽特定或全部LSP DLL的存在。
通常需要屏蔽的LSP DLL包括:木马病毒的LSP DLL、对安全软件基本无用的网络加速器的LSP DLL(这些网络加速器主要是对网络游戏、WEB浏览等应用进行加速的)等。木马病毒的LSP DLL在WinSock初始化时加载到安全应用软件的进程中后,会对其安全功能造成干扰和破坏,比如阻断安全软件的计算机处理系统和其云安全中心服务器建立网络连接、直接终止安全软件的进程等;网络加速器的LSP DLL可能导致安全软件崩溃、卡死、无法联网等,比如“99宿舍加速器”的LSP DLL曾经导致很多用户无法正常上网。
参照图2,在步骤S200,加载应用程序的配置列表。配置列表中的配置信息包括需要屏蔽哪些LSP DLL、需要在哪些进程中屏蔽这些LSP DLL。通常,选择哪些进程来屏蔽这些LSP DLL是由用户根据实际需要来确定的,例如如果360用户需要在卫士主程序、木马查杀中屏蔽迅雷网络游戏加速器的LSP,则相应的配置为:进程列表为:360safe.exe(360卫士主程序)、dsmain.exe(360卫士的木马查杀)LSP列表为XLAccLSP.dll(迅雷网络游戏加速器的LSP DLL)。
在步骤210,读取系统的LSP配置注册表数据。
Windows的LSP配置注册表包括transport provider、namespace provider的信息,保存在注册表分支HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinSock2\Parameters下。
Transport provider(“数据传输提供者”或者“传输提供者”)的配置信息包括:1)每个LSP DLL的数字编号和全球唯一标识GUID编号、文件路径、支持的网络协议类型如TCP/UDP等;2)每个LSP链的数字编号和GUID编号、处在该链中的每个DLL的数字编号和GUID编号。
transport provider主要是针对namespace provider(名字空间提供者)而言。通常说的LSP DLL主要是指前者,本发明对传输提供者、名字空间提供者DLL都适用,下面所有的例子都是用transport provider为例来说明的,因为实际环境中遇到的导致应用程序故障的主要都是transport provider。
所述配置注册表中还包括:DLL/EXE的文件名,也可以包括DLL/EXE的公司名、原始文件名、产品名称等,这些信息一般可以从DLL/EXE的版本信息中获得。根据这些特征信息确定哪些是需要屏蔽的LSP DLL。
步骤220,根据所加载的应用程序的配置信息,判断在所读取的LSP配置注册表数据中是否包括需要屏蔽的LSP DLL。
在该步骤,判断所读取的LSP配置注册表数据中LSP DLL的特征信息与所加载的应用程序的配置信息中需要屏蔽的LSP DLL的特征信息是否匹配,特征信息例如是文件名等,如果和配置信息中要屏蔽的LSP DLL的特征符合(特征比如是文件名字符串特征,也可以是产品名称字符串/公司名字符串等特征),例如如果LSP DLL的文件名符合指定的字符串特征,就认为相匹配,也就是特征符合。
步骤230,根据判断结果,如果在所读取的LSP配置注册表数据中包括需要屏蔽的LSP DLL,则将该LSP DLL的信息从LSP配置注册表数据中删除,从而构造出新的LSP配置注册表数据,将此新的注册表数据另存在注册表的其它位置。系统原有的LSP配置注册表数据是保持不变的。
保持原有的LSP配置注册表数据是为了让其它的应用程序仍然能读取到原有的配置注册表数据,从而不影响其它程序的正常工作,例如网络游戏计算机处理系统需要能读取到原始的LSP配置注册表数据才会去加载网络游戏加速器的LSP DLL从而得到游戏的网络加速功能。只有指定的应用程序才会读取到新构造的LSP配置注册表数据,例如安全软件读取到的是不包括网络游戏加速器的LSP DLL的新的LSP配置注册表数据,从而使得安全软件不会加载网络游戏加速器的LSP DLL,避免受到不稳定的网络游戏加速器的LSP DLL的影响出现崩溃或卡死。
步骤240,采用如下方式之一进行注册表重定向,将程序操作Windows的LSP配置注册表数据的操作重定向到新建的LSP注册表配置注册表数据上。本实施例中,在应用层(ring 3)对指定或者全部进程进行注册表操作API函数的挂钩,和/或在驱动层(ring 0)通过挂钩挂钩注册表操作的系统调用或者使用系统提供的CmCallback注册表回调例程。
环0的注册表相关的系统调用包括:系统服务NtOpenKey、NtCreateKey、NtQueryValueKey、NtQueryInfoKey等,是一整套和注册表操作相关的调用。通过挂钩这些系统调用,可以实现对应用程序的注册表操作的监视、修改,包括完成注册表操作的重定向功能。对于LSP屏蔽的需求来说,可以选择挂钩挂钩NtOpenKey()系统调用。
环0的注册表操作回调可以包括一种,即通过注册表回调函数CmRegisterCallback()系统注册自定义的注册表操作过滤函数,当应用程序进行任何注册表操作时,自定义函数都会被调用,从而可以对应用程序的注册表操作进行监视、修改,包括完成注册表操作的重定向功能。
环3主要就是挂钩注册表的打开API函数RegOpenKeyEx()即可。
图3为根据本发明一实施例的通过文件重定向屏蔽特定LSP DLL的装置结构框图。仍以transport provider为例,该装置包括:
配置信息加载模块300,用于加载应用程序的配置信息。配置信息包括应用程序的基本信息,在本发明,配置信息另外还包括:需要屏蔽哪些LSP DLL、需要在哪些进程中屏蔽这些LSP DLL。
数据读取模块310,用于读取系统的LSP配置注册表数据。
判断模块320,用于根据所加载的应用程序的配置信息,判断在所读取的LSP配置注册表数据中是否包括需要屏蔽的LSP DLL,如果包括,则将该LSPDLL的信息从LSP配置注册表数据中删除,从而构造出新的LSP配置注册表数据,将此新的注册表数据另存在注册表的其它位置。系统原有的LSP配置注册表数据是保持不变的。
重定向执行模块330,将程序操作Windows的LSP配置注册表数据的操作重定向到新建的LSP注册表配置注册表数据上进行注册表重定向:第一种方式:在应用层(ring 3)对指定或者全部进程进行注册表操作API函数的挂钩;第二种方式:在驱动层(ring 0)通过挂钩注册表操作的系统调用或者使用系统提供的CmCallback注册表回调例程。
另外本发明还提供了一种包括上述注册表重定向装置的计算机处理系统,该计算机处理系统还包括有WinSock初始化启动装置,用于启动应用程序初始化WinSock。
下面是本发明方案的一个具体应用举例,仍以transport provider为例。
参照图4,
首先,在步骤S400,应用程序启动,从所在的Windows系统的LSP注册表中读取例如编号为1020、1021、1022、1017、1018的5个LSP链,在此仅以举例的方式列举了5个LSP链,LSP链的名称及数量可根据实际应用进行变化。在步骤S410,根据应用程序的配置信息判断所读取的5个LSP链是否包括要被屏蔽的链,如果在该步骤判断出未包括要被屏蔽的链,则在步骤S420,指定应用程序读取原始的LSP注册表。如果在步骤S410判断出LSP注册表中包括需要被屏蔽的DLL,例如,判断出要屏蔽TSFilter.dll这个容易导致程序崩溃的DLL,则在步骤S430从上述5个链中删除了TSFilter.dll这个LSP后,变为4个链。
其中1022这个链,因为删除了动态链接库TSFilter.dll后,链中只剩下操作系统提供的mswsock.dll,故将此链全部抹掉。然后在步骤S440,将新的LSP链数据存入新的注册表位置HKEY_LOCAL_MACHINE\Software\360\WinSock2\Parameters\Protocol_Catalog9。在此仅以举例的方式描述了删除动态链接库TSFilter.dll及其所在的链1022,当然在实际应用中,在删除DLL的同时,可根据实际情况来删除其所在的链或者也可保留其所在的链。
在步骤S450,在应用层挂钩RegOpenKeyEx()API函数,或者在驱动层NtOpenKey()系统调用。当指定的应用程序即将读取原有注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinSock2\Parameters\Protocol_Catalog9时,让其读取新的注册表HKEY_LOCAL_MACHINE\Sofiware\360\WinSock2\Parameters\Protocol_Catalog9。
从而使得指定的应用程序不会加载TSFilter.dll,并且网络通信正常。
本发明实施例中,由于既可以屏蔽指定的LSP DLL,也可以屏蔽Windows系统中的全部LSP DLL,既可以屏蔽指定进程中的LSP DLL,也可以屏蔽所有进程中的LSP DLL,对于采用哪种屏蔽方式,主要取决于应用程序的开发商的屏蔽策略,屏蔽策略通过应用程序的LSP屏蔽配置注册表数据来实现。具有很大的灵活性,从而允许应用程序在保证网络通信功能正常的前提下提高自身的稳定性和安全性,带来好的用户体验。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的通过注册表重定向屏蔽特定LSP DLL的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序应用程序)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包括”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (12)

1.一种注册表重定向的方法,其特征在于,包括:
加载应用程序的配置列表;
根据所加载的配置列表中的配置信息来判断LSP配置注册表数据中是否包括需要屏蔽的LSP DLL;
如果包括,则将该LSP DLL的信息从LSP配置注册表数据中删除,构造出新的LSP配置注册表数据;
将对LSP配置注册表数据的操作重定向到新建的LSP注册表配置注册表数据上。
2.根据权利要求2所述的方法,包括:根据所述配置列表中的LSP DLL的特征信息来判断LSP配置列表数据中是否包括需要被屏蔽的LSP DLL。
3.根据权利要求2所述的方法,其特征在于,所述特征信息为DLL/EXE的文件名、DLL/EXE的公司名、原始文件名或者产品名称,所述特征信息从DLL/EXE的版本信息中获得。
4.根据权利要求2或3所述的方法,其特征在于,该方法进一步包括:如果LSP配置注册表数据与所述配置列表需要被屏蔽的LSP DLL的特征信息相匹配,则判断该LSP配置注册表中包括需要被屏蔽的LSP DLL。
5.根据权利要求1所述的方法,其特征在于,该方法进一步包括:应用程序启动时,从所述LSP配置注册表读取其中的LSP链,并确定每个LSP链中是否包括所述配置列表中需要被屏蔽的LSP DLL。
6.根据权利要求3所述的方法,其特征在于,该方法进一步包括:如果在所读取的LSP链中包括需要被屏蔽的LSP DLL,则删除该LSP DLL,和/或
在所读取的LSP链中删除所述LSP DLL之后,进一步判断该LSP DLL所在的LSP链是否需要删除,如果需要,则删除该LSP链。
7.根据权利要求4所述的方法,其特征在于,该方法进一步包括,在删除需要被屏蔽的所述LSP DLL之后,将得到的新的LSP链数据存储到新的注册表位置,并将原LSP链数据仍保留在原注册表位置。
8.根据权利要求6所述的方法,其中,所述重定向为当应用程序即将读取原有的注册表位置时,使其读取新的注册表位置,所述注册表位置是文件路径。
9.根据权利要求7所述的方法,其特征在于,该方法进一步包括:通过在应用层对注册表操作API函数进行挂钩,或者通过在驱动层挂钩注册表操作的系统调用来实现读取新的注册表位置。
10.如权利要求2所述的方法,其特征在于,重定向操作包括:在应用层对指定或者全部进程进行注册表操作API函数的挂钩;和或,在驱动层通过挂钩注册表操作的系统调用或者使用系统提供的注册表回调例程。
11.一种注册表重定向装置,其特征在于,包括:
配置列表加载装置,用于加载应用程序的配置信息;
判断装置,根据所加载的配置信息判断LSP配置注册表数据中是否包括需要屏蔽的LSP DLL,如果包括,则将该LSP DLL的信息从LSP配置注册表数据中删除,构造出新的LSP配置注册表数据;
重定向执行装置,将对LSP配置注册表数据的操作重定向到新建的LSP注册表配置数据上。
12.根据权利要求11所述的装置,其特征在于,该装置进一步包括:数据读取模块,用于应用程序启动时,从所述LSP配置注册表读取其中的LSP链,并确定每个LSP链中是否包括所述配置列表中需要被屏蔽的LSP DLL。
CN201210460514.6A 2012-11-15 2012-11-15 注册表重定向方法和装置 Expired - Fee Related CN103019674B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210460514.6A CN103019674B (zh) 2012-11-15 2012-11-15 注册表重定向方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210460514.6A CN103019674B (zh) 2012-11-15 2012-11-15 注册表重定向方法和装置

Publications (2)

Publication Number Publication Date
CN103019674A true CN103019674A (zh) 2013-04-03
CN103019674B CN103019674B (zh) 2016-09-28

Family

ID=47968313

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210460514.6A Expired - Fee Related CN103019674B (zh) 2012-11-15 2012-11-15 注册表重定向方法和装置

Country Status (1)

Country Link
CN (1) CN103019674B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105204861A (zh) * 2015-09-29 2015-12-30 上海二三四五网络科技有限公司 一种注册表重定向方法及装置
CN105631318A (zh) * 2015-12-23 2016-06-01 北京金山安全软件有限公司 一种注册表键值的获取方法及装置
CN106326735A (zh) * 2015-07-02 2017-01-11 腾讯科技(深圳)有限公司 防注入的方法和装置
CN113918060A (zh) * 2021-09-06 2022-01-11 荣耀终端有限公司 应用管理方法和电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6148336A (en) * 1998-03-13 2000-11-14 Deterministic Networks, Inc. Ordering of multiple plugin applications using extensible layered service provider with network traffic filtering
CN1601465A (zh) * 2003-08-29 2005-03-30 微软公司 动态注册表分区
CN1740945A (zh) * 2004-05-28 2006-03-01 微软公司 用自动启动可扩展性点来管理间谍软件以及不需要的软件
CN102222189A (zh) * 2011-06-13 2011-10-19 上海置水软件技术有限公司 一种保护操作系统的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6148336A (en) * 1998-03-13 2000-11-14 Deterministic Networks, Inc. Ordering of multiple plugin applications using extensible layered service provider with network traffic filtering
CN1601465A (zh) * 2003-08-29 2005-03-30 微软公司 动态注册表分区
CN1740945A (zh) * 2004-05-28 2006-03-01 微软公司 用自动启动可扩展性点来管理间谍软件以及不需要的软件
CN102222189A (zh) * 2011-06-13 2011-10-19 上海置水软件技术有限公司 一种保护操作系统的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IS2120: "注册表重定向", 《HTTP://BLOG.CSDN.NET/IS2120/ARTICLE/DETAILS/7246334》 *
小金: "一个EXE文件引发的危机", 《新电脑》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106326735A (zh) * 2015-07-02 2017-01-11 腾讯科技(深圳)有限公司 防注入的方法和装置
CN105204861A (zh) * 2015-09-29 2015-12-30 上海二三四五网络科技有限公司 一种注册表重定向方法及装置
CN105204861B (zh) * 2015-09-29 2018-07-10 上海二三四五网络科技有限公司 一种注册表重定向方法及装置
CN105631318A (zh) * 2015-12-23 2016-06-01 北京金山安全软件有限公司 一种注册表键值的获取方法及装置
CN113918060A (zh) * 2021-09-06 2022-01-11 荣耀终端有限公司 应用管理方法和电子设备
CN113918060B (zh) * 2021-09-06 2023-10-24 荣耀终端有限公司 应用管理方法和电子设备

Also Published As

Publication number Publication date
CN103019674B (zh) 2016-09-28

Similar Documents

Publication Publication Date Title
CN102981874B (zh) 计算机处理系统和注册表重定向方法
US10732962B1 (en) End-to-end deployment infrastructure
CN102999354A (zh) 文件加载方法和装置
CN104536981B (zh) 实现浏览器安全的方法、浏览器客户端和装置
AU2005201434B2 (en) Efficient patching
CN101379479B (zh) 具有对于对象的受控访问的软件系统
CN103001947B (zh) 一种程序处理方法和系统
KR101183305B1 (ko) 효과적 패칭
CN102999720B (zh) 程序鉴别方法和系统
CN103019765A (zh) 一种文件重定向方法、装置和计算机系统
CN104484599A (zh) 一种基于应用程序的行为处理方法和装置
KR20110111341A (ko) 효과적 패칭
CN101529414A (zh) 瘦客户机软件开发环境
CN102332072A (zh) 用于检测恶意软件和管理恶意软件相关信息的系统和方法
CN102982281B (zh) 程序状况检测方法和系统
CN104036019A (zh) 网页链接的开启方法及装置
US11036522B2 (en) Remote component loader
CN113138836B (zh) 一种使用基于Docker容器的防逃逸系统的防逃逸方法
CN103763354A (zh) 一种升级数据下载的方法及装置
CN103019674A (zh) 注册表重定向方法和装置
CN103677898A (zh) 服务器侧审核加载的扩展和/或插件的方法及服务器
CN102592086A (zh) 在沙箱中浏览网页方法及装置
CN103970574A (zh) office程序的运行方法及装置、计算机系统
CN106845270A (zh) 一种无痕浏览方法及装置
CN102446253A (zh) 一种网页木马检测方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220725

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: Room 112, block D, No. 28, Xinjiekou outer street, Xicheng District, Beijing 100088 (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160928