CN102981874B - 计算机处理系统和注册表重定向方法 - Google Patents
计算机处理系统和注册表重定向方法 Download PDFInfo
- Publication number
- CN102981874B CN102981874B CN201210460891.XA CN201210460891A CN102981874B CN 102981874 B CN102981874 B CN 102981874B CN 201210460891 A CN201210460891 A CN 201210460891A CN 102981874 B CN102981874 B CN 102981874B
- Authority
- CN
- China
- Prior art keywords
- lsp
- lspdll
- registry
- configuration
- table data
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000012545 processing Methods 0.000 title claims abstract description 15
- 230000008569 process Effects 0.000 claims abstract description 31
- 238000004891 communication Methods 0.000 claims abstract description 4
- 239000007858 starting material Substances 0.000 claims abstract description 3
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 claims description 4
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 230000000717 retained effect Effects 0.000 claims 1
- 230000007246 mechanism Effects 0.000 abstract description 7
- 230000006870 function Effects 0.000 description 17
- 208000032826 Ring chromosome 3 syndrome Diseases 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000002147 killing effect Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003612 virological effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种注册表重定向方法和计算机处理系统,该计算机处理系统包括:初始化启动装置,用于启动应用程序初始化操作系统通信接口;注册表重定向装置,用于基于操作系统的LSP配置注册表数据,删除其中需要屏蔽的LSP?DLL信息后,构造新的LSP配置注册表数据,将应用程序初始化WinSock时读取LSP配置的注册表操作重定向到该新的LSP配置注册表数据上,使得应用程序不加载要屏蔽的LSP?DLL。利用本发明的技术方案,通过利用注册表重定向机制,针对Windows系统中的特定或全部进程屏蔽特定或者全部的LSP?DLL,避免这些LSP?DLL加载到进程中,提高应用程序的稳定性和安全性。
Description
技术领域
本发明涉及应用程序监控技术,具体涉及一种计算机处理系统和注册表重定向方法。
背景技术
LSP(LayeredServiceProvider)是Windows平台的通信架构WinSock(WinSock(WindowsSockets)是操作系统提供的Windows操作系统应用层的网络通信架构和规范的缩写)中特有的一个机制。通过可扩展的LSP机制,使得第三方软件开发商可以在应用程序中插入DLL对TCP/IP数据包进行监听、修改,从而开发出丰富的网络应用,如聊天软件通信加密工具、网络代理软件、网络游戏加速器等。
LSP既可以用来开发正规的应用,病毒木马作者也可以利用LSP在用户的系统中插入恶意代码,窃取用户信息等。另外,由于LSP注入到系统的绝大多数进程中,串接在应用程序的网络访问操作中,如果代码考虑不周,就会导致不能上网、程序崩溃或卡死等现象。所以需要有一定的手段来屏蔽LSP机制,防止对应用程序无实际作用的第三方的LSPDLL加载到应用程序进程中产生干扰,这对安全软件尤其重要。
然而,目前还没有一种有效的措施来及时发现并屏蔽一些有问题的LSPDLL。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的通过注册表重定向屏蔽特定LSPDLL的方法和相应的通过注册表重定向屏蔽特定LSPDLL的计算机处理系统。
依据本发明的一个方面,提供了一种注册表重定向方法,该方法包括:加载应用程序的配置信息;根据所加载的配置信息判断LSP配置注册表数据中是否包括需要屏蔽的LSPDLL;应用程序启动时,从所述LSP配置注册表读取其中的LSP链,并确定每个LSP链中是否包括所述配置列表中需要被屏蔽的LSPDLL;如果包括,则将该LSPDLL的信息从LSP配置注册表数据中删除,构造出一份新的LSP配置注册表数据;将对LSP配置注册表数据的操作重定向到新建的LSP注册表配置注册表数据上。
可选地,所述配置信息包括需要屏蔽哪些LSPDLL,以及在哪些进程中屏蔽这些LSPDLL。
可选地,所述重定向操作包括:在应用层对指定或者全部进程进行文件操作API函数的挂钩。
可选地,所述重定向操作包括:在驱动层通过挂钩文件操作的系统调用,或者使用系统提供的文件系统过滤驱动机制。
依据本发明的另一方面,提供了一种计算机处理系统,其包括:WinSock初始化启动模块,用于启动应用程序初始化WinSock;注册表重定向装置,用于基于Windows的LSP配置注册表数据,删除其中需要屏蔽的LSPDLL信息后,构造新的LSP配置注册表数据,将应用程序初始化WinSock时读取LSP配置的注册表操作重定向到该新的LSP配置注册表数据上,使得应用程序不加载要屏蔽的LSPDLL。
利用本发明的注册表重定向方法和计算机处理系统,通过注册表重定向机制,针对Windows系统中的特定或全部进程屏蔽特定或者全部的LSPDLL,避免这些LSPDLL加载到进程中,提高应用程序的稳定性和安全性。
本发明的方案不需要携带操作系统提供的默认的任何LSP配置,既可以针对系统中的单个LSPDLL进行屏蔽,也可以将全部LSPDLL都屏蔽,既可以针对单个进程进行LSPDLL屏蔽,也可以针对所有进程进行LSPDLL屏蔽。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为现有技术的WinSock框架示意图;
图2为根据本发明一实施例的注册表重定向方法流程图;
图3为根据本发明一实施例的注册表重定向装置的结构框图;
图4为本发明注册表重定向方法的一种具体应用场景流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1为WinSock框架示意图,参照图1,transportprovider有两个链:TCP链、UDP链。还可以有其它类型的LSP链。
TCP链中,从上到下共4层(其中底层的mswsock.dll是操作系统本身所具有的功能)。UDP链包括3层。
右边的3个是namespaceprovider,其中最右边的winrnr.dll是操作系统提供的。
其中,LSP属于应用层,所有LSPDLL都运行在环3特权级别下,但LSP的行为可以从环3或者环0来进行一定的控制,比如对其文件或注册表操作进行控制。LSP既可以用来开发正规的应用,病毒木马作者也可以利用LSP在用户的系统中插入恶意代码,窃取用户信息等。另外,由于LSP注入到系统的绝大多数进程中,串接在应用程序的网络访问操作中,如果代码考虑不周,就会导致不能上网、程序崩溃或卡死等现象。所以需要有一定的手段来屏蔽LSP机制,防止对应用程序无实际作用的第三方的LSPDLL加载到应用程序进程中产生干扰,这对安全软件尤其重要。
常见的屏蔽(或者跳过)LSPDLL的方法包括:
1、利用Windows系统提供的策略,指定哪些进程加载或者不加载特定类型的LSPDLL,这种技术存在的缺点是:只有Vista及其以上的Windows平台才支持这个特性;只能根据LSP所属的分类来排除,策略太粗放。
2、彻底抛弃WinSock,越过应用层的WinSock架构,直接向网络驱动发控制码、数据包进行网络通信。这种方法的缺点是:需要了解和驱动层通信的任何细节,这细节一般是非文档化的;在有proxy的环境下,需要自行实现proxy协议才能正常访问网络;这种方法不会加载第三方的任何LSPDLL,在必须要加载某些proxy类型的LSPDLL才能正常访问网络的环境中,无法上网。
3、自带一份Windows默认的LSP配置,这个配置中不包括操作系统提供的之外的任何LSPDLL,通过注册表重定向让应用程序访问这个默认LSP配置,从而不加载第三方的任何LSPDLL。这种方法的缺点是:不会加载第三方的任何LSPDLL,在必须要加载某些proxy类型的LSPDLL才能正常访问网络的环境中,无法上网;要针对不同的Windows版本带一份不同的默认LSP配置,比如32位XP带一份,32位Win7带另一份。
WinSock中包括transportproviderDLL和namespaceproviderDLL两种可扩展的DLL,transportprovider用于网络数据收发,是分层的,理论上支持无限多层,所有的各层上下串在一起形成一个链;namespaceprovider用于网络名称解析,不分层。一般所说的LSP是指transportprovider。本发明既支持transportprovider,也支持namespaceprovider。
本发明实施中,可以基于Windows的LSP注册表配置,删除其中要屏蔽的LSPDLL信息后,构造新的LSP注册表配置。将应用程序初始化WinSock时读取LSP配置的注册表操作重定向到这份新的LSP注册表配置上,从而使得应用程序不会加载要屏蔽的LSPDLL。
图2为本发明的注册表重定向方法流程图。该方法通过构造新的LSP配置注册表数据、重定向LSP注册表配置注册表数据的读写操作来向应用程序屏蔽特定或全部LSPDLL的存在。
通常需要屏蔽的LSPDLL包括:木马病毒的LSPDLL、对安全软件基本无用的网络加速器的LSPDLL(这些网络加速器主要是对网络游戏、WEB浏览等应用进行加速的)等。木马病毒的LSPDLL在WinSock初始化时加载到安全应用软件的进程中后,会对其安全功能造成干扰和破坏,比如阻断安全软件的计算机处理系统和其云安全中心服务器建立网络连接、直接终止安全软件的进程等;网络加速器的LSPDLL可能导致安全软件崩溃、卡死、无法联网等,比如“99宿舍加速器”的LSPDLL曾经导致很多用户无法正常上网。
参照图2,在步骤S200,加载应用程序的配置列表。配置列表中的配置信息包括需要屏蔽哪些LSPDLL、需要在哪些进程中屏蔽这些LSPDLL。通常,选择哪些进程来屏蔽这些LSPDLL是由用户根据实际需要来确定的,例如如果360用户需要在卫士主程序、木马查杀中屏蔽迅雷网络游戏加速器的LSP,则相应的配置为:进程列表为:360safe.exe(360卫士主程序)、dsmain.exe(360卫士的木马查杀)LSP列表为XLAccLSP.dll(迅雷网络游戏加速器的LSPDLL)。
在步骤210,读取系统的LSP配置注册表数据。
Windows的LSP配置注册表包括transportprovider、namespaceprovider的信息,保存在注册表分支
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinSock2\Parameters下。
Transportprovider(“数据传输提供者”或者“传输提供者”)的配置信息包括:1)每个LSPDLL的数字编号和全球唯一标识GUID编号、文件路径、支持的网络协议类型如TCP/UDP等;2)每个LSP链的数字编号和GUID编号、处在该链中的每个DLL的数字编号和GUID编号。
transportprovider主要是针对namespaceprovider(名字空间提供者)而言。通常说的LSPDLL主要是指前者,本发明对传输提供者、名字空间提供者DLL都适用,下面所有的例子都是用transportprovider为例来说明的,因为实际环境中遇到的导致应用程序故障的主要都是transportprovider。
所述配置注册表中还包括:DLL/EXE的文件名,也可以包括DLL/EXE的公司名、原始文件名、产品名称等,这些信息一般可以从DLL/EXE的版本信息中获得。根据这些特征信息确定哪些是需要屏蔽的LSPDLL。
步骤220,根据所加载的应用程序的配置信息,判断在所读取的LSP配置注册表数据中是否包括需要屏蔽的LSPDLL。
在该步骤,判断所读取的LSP配置注册表数据中LSPDLL的特征信息与所加载的应用程序的配置信息中需要屏蔽的LSPDLL的特征信息是否匹配,特征信息例如是文件名等,如果和配置信息中要屏蔽的LSPDLL的特征符合(特征比如是文件名字符串特征,也可以是产品名称字符串/公司名字符串等特征),例如如果LSPDLL的文件名符合指定的字符串特征,就认为相匹配,也就是特征符合。
步骤230,根据判断结果,如果在所读取的LSP配置注册表数据中包括需要屏蔽的LSPDLL,则将该LSPDLL的信息从LSP配置注册表数据中删除,从而构造出新的LSP配置注册表数据,将此新的注册表数据另存在注册表的其它位置。系统原有的LSP配置注册表数据是保持不变的。
保持原有的LSP配置注册表数据是为了让其它的应用程序仍然能读取到原有的配置注册表数据,从而不影响其它程序的正常工作,例如网络游戏计算机处理系统需要能读取到原始的LSP配置注册表数据才会去加载网络游戏加速器的LSPDLL从而得到游戏的网络加速功能。只有指定的应用程序才会读取到新构造的LSP配置注册表数据,例如安全软件读取到的是不包括网络游戏加速器的LSPDLL的新的LSP配置注册表数据,从而使得安全软件不会加载网络游戏加速器的LSPDLL,避免受到不稳定的网络游戏加速器的LSPDLL的影响出现崩溃或卡死。
步骤240,采用如下方式之一进行注册表重定向,将程序操作Windows的LSP配置注册表数据的操作重定向到新建的LSP注册表配置注册表数据上。本实施例中,在应用层(ring3)对指定或者全部进程进行注册表操作API函数的挂钩,和/或在驱动层(ring0)通过挂钩挂钩注册表操作的系统调用或者使用系统提供的CmCallback注册表回调例程。
环0的注册表相关的系统调用包括:系统服务NtOpenKey、NtCreateKey、NtQueryValueKey、NtQueryInfoKey等,是一整套和注册表操作相关的调用。通过挂钩这些系统调用,可以实现对应用程序的注册表操作的监视、修改,包括完成注册表操作的重定向功能。对于LSP屏蔽的需求来说,可以选择挂钩挂钩NtOpenKey()系统调用。
环0的注册表操作回调可以包括一种,即通过注册表回调函数CmRegisterCallback()系统注册自定义的注册表操作过滤函数,当应用程序进行任何注册表操作时,自定义函数都会被调用,从而可以对应用程序的注册表操作进行监视、修改,包括完成注册表操作的重定向功能。
环3主要就是挂钩注册表的打开API函数RegOpenKeyEx()即可。
图3为根据本发明一实施例的通过文件重定向屏蔽特定LSPDLL的装置结构框图。仍以transportprovider为例,该装置包括:
配置信息加载模块300,用于加载应用程序的配置信息。配置信息包括应用程序的基本信息,在本发明,配置信息另外还包括:需要屏蔽哪些LSPDLL、需要在哪些进程中屏蔽这些LSPDLL。
数据读取模块310,用于读取系统的LSP配置注册表数据。
判断模块320,用于根据所加载的应用程序的配置信息,判断在所读取的LSP配置注册表数据中是否包括需要屏蔽的LSPDLL,如果包括,则将该LSPDLL的信息从LSP配置注册表数据中删除,从而构造出新的LSP配置注册表数据,将此新的注册表数据另存在注册表的其它位置。系统原有的LSP配置注册表数据是保持不变的。
重定向执行模块330,将程序操作Windows的LSP配置注册表数据的操作重定向到新建的LSP注册表配置注册表数据上进行注册表重定向:第一种方式:在应用层(ring3)对指定或者全部进程进行注册表操作API函数的挂钩;第二种方式:在驱动层(ring0)通过挂钩注册表操作的系统调用或者使用系统提供的CmCallback注册表回调例程。
另外本发明还提供了一种包括上述注册表重定向装置的计算机处理系统,该计算机处理系统还包括有WinSock初始化启动装置,用于启动应用程序初始化WinSock。
下面是本发明方案的一个具体应用举例,仍以transportprovider为例。
图4为本发明注册表重定向方法的一种具体应用场景流程图。参照图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\Software\360\WinSock2\Parameters\Protocol_Catalog9。
从而使得指定的应用程序不会加载TSFilter.dll,并且网络通信正常。
本发明实施例中,由于既可以屏蔽指定的LSPDLL,也可以屏蔽Windows系统中的全部LSPDLL,既可以屏蔽指定进程中的LSPDLL,也可以屏蔽所有进程中的LSPDLL,对于采用哪种屏蔽方式,主要取决于应用程序的开发商的屏蔽策略,屏蔽策略通过应用程序的LSP屏蔽配置注册表数据来实现。具有很大的灵活性,从而允许应用程序在保证网络通信功能正常的前提下提高自身的稳定性和安全性,带来好的用户体验。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的通过注册表重定向屏蔽特定LSPDLL的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序应用程序)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包括”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (12)
1.一种注册表重定向方法,其特征在于,包括:
加载应用程序的配置列表;
根据所加载的配置列表中的配置信息来判断LSP配置注册表数据中是否包括需要屏蔽的LSPDLL,其中,需要屏蔽的LSPDLL包括:木马病毒的LSPDLL、对安全软件无用的网络加速器的LSPDLL;
应用程序启动时,从所述LSP配置注册表读取其中的LSP链,并确定每个LSP链中是否包括所述配置列表中需要被屏蔽的LSPDLL;
如果包括,则将该LSPDLL的信息从LSP配置注册表数据中删除,构造出新的LSP配置注册表数据;
将对LSP配置注册表数据的操作重定向到新建的LSP注册表配置注册表数据上。
2.根据权利要求1所述的方法,包括:根据所述配置列表中的LSPDLL的特征信息来判断LSP配置列表数据中是否包括需要被屏蔽的LSPDLL。
3.根据权利要求2所述的方法,其特征在于,所述特征信息为DLL/EXE的文件名、DLL/EXE的公司名、原始文件名或者产品名称,所述特征信息从DLL/EXE的版本信息中获得。
4.根据权利要求2或3所述的方法,其特征在于,该方法进一步包括:如果LSP配置注册表数据与所述配置列表需要被屏蔽的LSPDLL的特征信息相匹配,则判断该LSP配置注册表中包括需要被屏蔽的LSPDLL。
5.根据权利要求3所述的方法,其特征在于,该方法进一步包括:如果在所读取的LSP链中包括需要被屏蔽的LSPDLL,则删除该LSPDLL,和/或
在所读取的LSP链中删除所述LSPDLL之后,进一步判断该LSPDLL所在的LSP链是否需要删除,如果需要,则删除该LSP链。
6.根据权利要求4所述的方法,其特征在于,该方法进一步包括,在删除需要被屏蔽的所述LSPDLL之后,将得到的新的LSP链数据存储到新的注册表位置,并将原LSP链数据仍保留在原注册表位置。
7.根据权利要求1至3中任一项所述的方法,其中,所述重定向为当应用程序即将读取原有的注册表位置时,使其读取新的注册表位置,所述注册表位置是文件路径。
8.根据权利要求6所述的方法,其特征在于,该方法进一步包括:通过在应用层对注册表操作API函数进行挂钩,或者通过在驱动层挂钩注册表操作的系统调用来实现读取新的注册表位置。
9.如权利要求2所述的方法,其特征在于,重定向操作包括:在应用层对指定或者全部进程进行注册表操作API函数的挂钩;和或,在驱动层通过挂钩注册表操作的系统调用或者使用系统提供的注册表回调例程。
10.一种计算机处理系统,包括:
初始化启动装置,用于启动应用程序初始化操作系统通信接口;
注册表重定向装置,用于基于操作系统的LSP配置注册表数据,删除其中需要屏蔽的LSPDLL信息后,构造新的LSP配置注册表数据,将应用程序初始化WinSock时读取LSP配置的注册表操作重定向到该新的LSP配置注册表数据上,使得应用程序不加载要屏蔽的LSPDLL,
其中,需要屏蔽的LSPDLL包括:木马病毒的LSPDLL、对安全软件无用的网络加速器的LSPDLL。
11.根据权利要求10所述的计算机处理系统,其中注册表重定向装置进一步包括:
配置列表加载模块,用于加载应用程序的配置信息;
判断模块,根据所加载的配置信息判断LSP配置注册表数据中是否包括需要屏蔽的LSPDLL,如果包括,则将该LSPDLL的信息从LSP配置注册表数据中删除,构造出新的LSP配置注册表数据;
重定向执行模块,将对LSP配置注册表数据的操作重定向到新建的LSP注册表配置数据上。
12.根据权利要求11所述的计算机处理系统,其中,该注册表重定向装置装置进一步包括:数据读取模块,用于应用程序启动时,从所述LSP配置注册表读取其中的LSP链,并确定每个LSP链中是否包括所述配置列表中需要被屏蔽的LSPDLL。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210460891.XA CN102981874B (zh) | 2012-11-15 | 2012-11-15 | 计算机处理系统和注册表重定向方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210460891.XA CN102981874B (zh) | 2012-11-15 | 2012-11-15 | 计算机处理系统和注册表重定向方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102981874A CN102981874A (zh) | 2013-03-20 |
CN102981874B true CN102981874B (zh) | 2015-12-02 |
Family
ID=47855936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210460891.XA Active CN102981874B (zh) | 2012-11-15 | 2012-11-15 | 计算机处理系统和注册表重定向方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102981874B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105094865B (zh) * | 2014-05-08 | 2020-02-18 | 腾讯科技(深圳)有限公司 | 加载自定义ie内核的方法和装置 |
CN104539585B (zh) * | 2014-12-05 | 2017-12-05 | 北京奇虎科技有限公司 | 浏览器防注入的方法、浏览器客户端和装置 |
CN104536981B (zh) * | 2014-12-05 | 2018-01-16 | 北京奇虎科技有限公司 | 实现浏览器安全的方法、浏览器客户端和装置 |
CN104615460B (zh) * | 2015-01-22 | 2018-03-06 | 百度在线网络技术(北京)有限公司 | 屏蔽lsp模块注入的方法和装置 |
CN105204861B (zh) * | 2015-09-29 | 2018-07-10 | 上海二三四五网络科技有限公司 | 一种注册表重定向方法及装置 |
CN105631318B (zh) * | 2015-12-23 | 2019-04-05 | 珠海豹趣科技有限公司 | 一种注册表键值的获取方法及装置 |
CN116700812B (zh) * | 2022-09-01 | 2024-04-16 | 荣耀终端有限公司 | 预装应用的安装方法、装置、设备、存储介质和程序产品 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5758154A (en) * | 1996-06-05 | 1998-05-26 | Microsoft Corporation | Method and system for storing configuration data into a common registry |
CN1296582A (zh) * | 1998-04-15 | 2001-05-23 | 微软公司 | 改进程序发送时间的系统和方法 |
CN1987797A (zh) * | 2005-12-23 | 2007-06-27 | 国际商业机器公司 | 避免软件冲突的方法和系统 |
CN102520944A (zh) * | 2011-12-06 | 2012-06-27 | 北京航空航天大学 | Windows应用程序虚拟化的实现方法 |
-
2012
- 2012-11-15 CN CN201210460891.XA patent/CN102981874B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5758154A (en) * | 1996-06-05 | 1998-05-26 | Microsoft Corporation | Method and system for storing configuration data into a common registry |
CN1296582A (zh) * | 1998-04-15 | 2001-05-23 | 微软公司 | 改进程序发送时间的系统和方法 |
CN1987797A (zh) * | 2005-12-23 | 2007-06-27 | 国际商业机器公司 | 避免软件冲突的方法和系统 |
CN102520944A (zh) * | 2011-12-06 | 2012-06-27 | 北京航空航天大学 | Windows应用程序虚拟化的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102981874A (zh) | 2013-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102981874B (zh) | 计算机处理系统和注册表重定向方法 | |
CN102999354B (zh) | 文件加载方法和装置 | |
CN104536981B (zh) | 实现浏览器安全的方法、浏览器客户端和装置 | |
JP5420734B2 (ja) | オブジェクトへの制御されたアクセスを有するソフトウェアシステム | |
Magazinius et al. | Safe wrappers and sane policies for self protecting JavaScript | |
CN105574411B (zh) | 一种动态脱壳方法、装置和设备 | |
CN103001947B (zh) | 一种程序处理方法和系统 | |
US10416979B2 (en) | Package installation on a host file system using a container | |
CN104484599A (zh) | 一种基于应用程序的行为处理方法和装置 | |
CN103019765B (zh) | 一种文件重定向方法、装置和计算机系统 | |
US20220100852A1 (en) | Distributed security introspection | |
CN102332072A (zh) | 用于检测恶意软件和管理恶意软件相关信息的系统和方法 | |
CN102999720B (zh) | 程序鉴别方法和系统 | |
US20070169065A1 (en) | Computer program with metadata management function | |
CN113138836B (zh) | 一种使用基于Docker容器的防逃逸系统的防逃逸方法 | |
CN102982281B (zh) | 程序状况检测方法和系统 | |
CN106569856A (zh) | 一种应用视图资源文件的加载方法和装置 | |
CN104036019A (zh) | 网页链接的开启方法及装置 | |
CN103677898A (zh) | 服务器侧审核加载的扩展和/或插件的方法及服务器 | |
CN105915546A (zh) | 一种安卓应用的流量监控方法和装置 | |
CN104572197A (zh) | 一种启动项的处理方法和装置 | |
CN111309620A (zh) | 一种游戏协议测试方法、装置、电子设备和存储介质 | |
CN103019674B (zh) | 注册表重定向方法和装置 | |
CN115859280A (zh) | 内存马的检测方法、装置、设备及存储介质 | |
CN102999721B (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: 20220726 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: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park) Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Patentee before: Qizhi software (Beijing) Co.,Ltd. |