CN105447382A - 一种基于沙箱的软件注册表重定向方法及系统 - Google Patents

一种基于沙箱的软件注册表重定向方法及系统 Download PDF

Info

Publication number
CN105447382A
CN105447382A CN201410510748.6A CN201410510748A CN105447382A CN 105447382 A CN105447382 A CN 105447382A CN 201410510748 A CN201410510748 A CN 201410510748A CN 105447382 A CN105447382 A CN 105447382A
Authority
CN
China
Prior art keywords
software
sandbox
registration table
redirected
needs
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.)
Pending
Application number
CN201410510748.6A
Other languages
English (en)
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 Yun Chao Artery Science And Technology Ltd
Original Assignee
Beijing Yun Chao Artery Science And Technology 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 Yun Chao Artery Science And Technology Ltd filed Critical Beijing Yun Chao Artery Science And Technology Ltd
Priority to CN201410510748.6A priority Critical patent/CN105447382A/zh
Publication of CN105447382A publication Critical patent/CN105447382A/zh
Pending legal-status Critical Current

Links

Abstract

本发明是一种基于沙箱的软件注册表重定向方法系统,涉及软件处理领域。该方法:S1、当软件A运行时,沙箱系统捕获到所述软件A的进程父ID,判断所述软件A的进程父ID与沙箱系统中存储的需要重定向的软件的进程ID是否相同;如果相同,则确定所述软件A是需要重定向的软件,进入S2;如果不相同,则确定所述软件A不是需要重定向的软件,操作系统执行所述软件A;S2、将所述软件A的注册表操作替换为所述软件A的注册表映射文件的操作;S3、直接访问所述软件A的注册表的映射文件,在沙箱环境中运行所述软件A。本发明解决了现有的注册表保护技术软件处理缓慢和处理后运行启动慢的问题。

Description

一种基于沙箱的软件注册表重定向方法及系统
技术领域
本发明涉及软件处理领域,尤其涉及一种基于沙箱的软件注册表重定向方法及系统。
背景技术
在操作系统中安装应用程序时,需要向注册表中写入大量数据,形成新增的注册表项,而在此应用程序卸载时,这些新增的注册表项并不能够清理干净,即使使用现有的注册表清理工具也无法保证这些新增的注册表纯净性。而且由于不同版本的软件在安装的时候都会在注册表中的相同位置写入一些配置信息,这样就导致不同版本的软件在同一操作系统中不能同时并存,也就是说没法保证注册表很好的隔离开来。
因此需要用一种新的平台去保证注册表的纯净性和隔离性,从而实现不同版本软件可以同时并存,安装不同版本的软件时,也不会对现有注册表产生垃圾。
发明内容
本发明的目的在于提供一种基于沙箱的软件注册表重定向方法及系统,从而解决现有技术中存在的前述问题。
为了实现上述目的,本发明的一种沙箱软件注册表重定向方法,采用的技术方案如下:
S1、当软件A运行时,沙箱系统捕获到所述软件A的进程父ID,判断所述软件A的进程父ID与沙箱系统中存储的需要重定向的软件的进程ID是否相同;
如果相同,则确定所述软件A是需要重定向的软件,进入S2;
如果不相同,则确定所述软件A不是需要重定向的软件,保持所述软件A的注册表操作不变,操作系统直接访问所述软件A的注册表运行所述当前软件;
S2、将所述软件A的注册表操作替换为所述软件A的注册表映射文件的操作;
S3、直接访问所述软件A的注册表的映射文件,在所述沙箱系统中运行所述软件A。
优选地,在步骤S1前存在以下操作:
S0-1、需要重定向的软件与沙箱系统通信,并将所述需要重定向的软件的进程ID发送给所述沙箱系统;
S0-2、依据操作系统中存储的所述需要重定向的软件的注册表信息,在所述沙箱系统中形成所述需要重定向的软件的注册表的映射文件;
优选地,步骤S0-1中,所述需要进行重定向的软件,包括:病毒程序和/或不安全的应用程序运行载体和/或不能在操作系统中同时并存的软件。
优选地,步骤S1中,所述软件A为操作系统启动的任意一个软件。
优选地,步骤S1中,所述软件A包括:操作系统中已安装的软件或未安装的软件。
优选地,步骤S2中,当所述软件A为操作系统中已安装的软件时,操作系统捕获所述软件A的进程父ID。
优选地,步骤S2中,当所述软件A为操作系统中未安装的软件时,操作系统捕获所述软件A的进程父ID。
优选地,步骤S3中,当确定所述软件A是需要重定向的软件,所述沙箱系统向用户发出提示消息。
优选地,步骤S5中,在所述沙箱中运行所述需要进行重定向的软件时,运行过程中产生的垃圾文件被存储在所述注册表的映射文件中。
本发明的一种基于沙箱的软件注册表重定向系统,该系统包括:沙箱系统模块、判断模块和重定向模块;
沙箱系统模块,负责获取需要重定向软件的进程ID、软件A的进程父ID,还负责执行需要重定向软件运行;
判断模块,负责判断所述系统获取的需要重定向软件的进程ID和所述软件A的进程父ID是否相同,并将“相同”的结果发送给重定向模块,将“不相同,保持注册表操作不变”的结果发送给系统模块;
重定向模块,在接收到判断模块发送的“相同”结果后,将所述需要进行重定向的软件的注册表操作替换为所述注册表的映射文件的操作,并将结果发送给沙箱系统模块。
本发明的有益效果是:
因为在运行软件时,直接运行存储在沙箱系统中所述软件的注册表的映射文件或在所述软件的注册表的映射文件上写入配置信息,并不会在原有注册表上进行操作,所以本发明保护原有注册表的纯净性以及不同软件之间注册表的隔离性的方法,更优于现有注册表保护的方法,不会产生不同版本软件冲突、不会生成较大软件包和软件运行迟缓问题的方法。
附图说明
图1是具体实施例1一种基于沙箱的软件注册表重定向方法的流程图;
图2是具体实施例3一种基于沙箱的软件注册表重定向结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。
本发明的核心是:在软件运行过程中的注册表操作全部重定向为文件操作,该文件就是对所述软件的原有注册表的一个映射,在运行该软件的操作过程中产生的垃圾都会存储在映射文件中,如果系统判定所述软件是需要被保护的软件,在运行所述软件时,系统直接访问映射文件,完全不需要对原注册表进行任何的操作,这样既保证了原注册表的纯净又可以保证不同版本软件隔离,也不会产生过大的软件包以及运行缓慢的问题。
参照图1,具体实施例1,一种基于沙箱的软件注册表重定向方法,该方法包括:
S1、需要重定向的软件与沙箱系统通信,并将所述需要重定向的软件的进程ID存储到所述沙箱系统中;
S2、依据操作系统中存储的所述需要重定向的软件的注册表信息,在沙箱系统中形成所述需要重定向的软件的注册表的映射文件;
S3、当软件A运行时,沙箱系统捕获到软件A的进程ID以及所述软件A的进程父ID,判断所述软件A的进程父ID与步骤S1获取的所述软件的进程ID是否相同;
如果相同,则确定所述软件A是需要重定向的软件,进入S4,同时,向用户提示所述软件A为需要重定向的软件;
如果不相同,则确定所述软件A不是需要重定向的软件,保持所述软件A的注册表操作不变,直接访问所述注册表运行所述当前软件;
S4、将所述需要重定向的软件的注册表操作替换为所述注册表的映射文件的操作;
S5、直接访问所述注册表的映射文件,在所述沙箱系统中运行所述需要重定向的软件。
所述软件A为office2007软件。
所述需要重定向的软件运行过程中产生的垃圾文件或中间缓存文件被存储在所述注册表的映射文件中。
本具体实施例中所述当前软件是在当前操作系统中已安装的软件时,则系统驱动捕获到启动所述当前软件的进程ID以及其进程父ID。更具体为:所述当前软件指:在安装了office2007软件的操作系统中已安装的office2007软件,在步骤S2中系统捕获到启动所述已安装的office2007软件的进程ID以及其进程父ID。
即本具体实施例1是在安装了office2007软件的操作系统的基础上将启动的office2007软件作为当前软件进行注册表重定向技术。
本具体实施例中,所述软件A的进程父ID指所述软件A在其所安装的计算机中形成的唯一的序列号,也称识别码。
所述需要重定向的软件的进程ID指需要重定向的软件在其所安装的计算机中形成的唯一的序列号,也称识别码。
本具体实施例中,当卸载软件A时,将其注册表的映射文件删除即可完成软件A的卸载。
本具体实施例,不仅仅可以在物理计算的操作系统下进行,还可以在虚拟机的操作系统下进行。
具体实施方式2,本具体实施方式与具体实施方式1的不同之处是:
所述当前软件是在当前操作系统中未安装的软件时,则系统驱动捕获到安装所述当前软件的进程ID以及其进程父ID。
更具体为:所述当前软件指:在安装了office2003软件的操作系统中准备安装的office2007软件,在步骤S2中系统捕获到安装所述已安装的office2007软件的进程ID以及其进程父ID。
即本具体实施例2是在安装了office2003软件的操作系统的基础上将准备安装的office2007软件作为当前软件进行注册表重定向技术。
本发明的技术中所述的当前软件不限于软件的类型,为本技术领域中的任意一个软件。
参照图2,具体实施例3,一种基于沙箱的软件注册表重定向系统,沙箱系统模块、判断模块、重定向模块
沙箱系统模块,负责获取需要重定向软件的进程ID、软件A的进程ID和进程父ID,还负责执行需要重定向软件的运行;
判断模块,负责判断所述系统获取的需要重定向软件的进程ID和所述软件A的进程父ID是否相同,并将“相同”的结果发送给重定向模块,将“不相同,保持注册表操作不变”的结果发送给系统模块;
重定向模块,在接收到判断模块发送的“相同”结果后,将所述需要进行重定向的软件的注册表操作替换为所述注册表的映射文件的操作,并将结果发送给沙箱系统模块。
通过采用本发明公开的上述技术方案,得到了如下有益的效果:
因为在运行软件时,直接运行存储在沙箱系统中所述软件的注册表的映射文件或在所述软件的注册表的映射文件上写入配置信息,并不会在原有注册表上进行操作,所以本发明保护原有注册表的纯净性以及不同软件之间注册表的隔离性的方法,更优于现有注册表保护的方法,不会产生不同版本软件冲突、不会生成较大软件包和软件运行迟缓问题的方法。
本发明所述的重定向注册表方法,实现了在Windows系统中对应用程序软件启动、并分析启动的应用程序是否是需要进行拦截、过滤、重定向操作,并将对应信息通知用户或者是调用更改驱动的主程序。
在不同操作系统中,对注册表操作功能的管理是不完全一样的,本专利所述方法,在不同的操作系统中,需要依据具体的操作系统注册表操作功能的不同而做不同的处理。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。

Claims (10)

1.一种基于沙箱的软件注册表重定向方法,其特征在于,该方法包括:
S1、当软件A运行时,沙箱系统捕获到所述软件A的进程父ID,判断所述软件A的进程父ID与沙箱系统中存储的需要重定向的软件的进程ID是否相同;
如果相同,则确定所述软件A是需要重定向的软件,进入S2;
如果不相同,则确定所述软件A不是需要重定向的软件,保持所述软件A的注册表操作不变,操作系统直接访问所述软件A的注册表运行所述当前软件;
S2、将所述软件A的注册表操作替换为所述软件A的注册表映射文件的操作;
S3、直接访问所述软件A的注册表的映射文件,在所述沙箱系统中运行所述软件A。
2.根据权利要求1所述基于沙箱的软件注册表重定向方法,其特征在于,在步骤S1前存在以下操作:
S0-1、需要重定向的软件与沙箱系统通信,并将所述需要重定向的软件的进程ID发送给所述沙箱系统;
S0-2、依据操作系统中存储的所述需要重定向的软件的注册表信息,在所述沙箱系统中形成所述需要重定向的软件的注册表的映射文件。
3.根据权利要求2所述基于沙箱的软件注册表重定向方法,其特征在于,步骤S0-1中,所述需要进行重定向的软件包括:病毒程序和/或不安全的应用程序运行载体和/或不能与操作系统已安装的软件同时并存的软件。
4.根据权利要求1所述基于沙箱的软件注册表重定向方法,其特征在于,步骤S1中,所述软件A为操作系统启动的任意一个软件。
5.根据权利要求1所述基于沙箱的软件注册表重定向方法,其特征在于,步骤S1中,所述软件A包括:操作系统中已安装的软件或未安装的软件。
6.根据权利要求5所述基于沙箱的软件注册表重定向方法,其特征在于,步骤S2中,当所述软件A为操作系统中已安装的软件时,操作系统捕获所述软件A的进程父ID。
7.根据权利要求5所述基于沙箱的软件注册表重定向方法,其特征在于,步骤S2中,当所述软件A为操作系统中未安装的软件时,操作系统捕获所述软件A的进程父ID。
8.根据权利要求1所述基于沙箱的软件注册表重定向方法,其特征在于,步骤S3中,当确定所述软件A是需要重定向的软件,向用户发出提示消息。
9.根据权利要求1所述基于沙箱的软件注册表重定向方法,其特征在于,步骤S5中,在所述沙箱中运行所述需要进行重定向的软件时,运行过程中产生的垃圾文件被存储在所述注册表的映射文件中。
10.一种基于沙箱的软件注册表重定向系统,其特征在于,该系统包括:沙箱系统模块、判断模块和重定向模块;
沙箱系统模块,负责获取需要重定向软件的进程ID、软件A的进程父ID,还负责执行需要重定向软件运行;
判断模块,负责判断所述系统获取的需要重定向软件的进程ID和所述软件A的进程父ID是否相同,并将“相同”的结果发送给重定向模块,将“不相同,保持注册表操作不变”的结果发送给系统模块;
重定向模块,在接收到判断模块发送的“相同”结果后,将所述需要进行重定向的软件的注册表操作替换为所述注册表的映射文件的操作,并将结果发送给沙箱系统模块。
CN201410510748.6A 2014-09-28 2014-09-28 一种基于沙箱的软件注册表重定向方法及系统 Pending CN105447382A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410510748.6A CN105447382A (zh) 2014-09-28 2014-09-28 一种基于沙箱的软件注册表重定向方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410510748.6A CN105447382A (zh) 2014-09-28 2014-09-28 一种基于沙箱的软件注册表重定向方法及系统

Publications (1)

Publication Number Publication Date
CN105447382A true CN105447382A (zh) 2016-03-30

Family

ID=55557547

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410510748.6A Pending CN105447382A (zh) 2014-09-28 2014-09-28 一种基于沙箱的软件注册表重定向方法及系统

Country Status (1)

Country Link
CN (1) CN105447382A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109413189A (zh) * 2018-11-05 2019-03-01 张维加 一种基于底层转译的电子交易系统
CN109472133A (zh) * 2017-12-01 2019-03-15 北京安天网络安全技术有限公司 一种沙箱监控方法和装置
CN112506451A (zh) * 2020-12-08 2021-03-16 西安雷风电子科技有限公司 一种打印机信息管理工具包及管理方法
CN116880866A (zh) * 2023-09-07 2023-10-13 京东科技信息技术有限公司 安装操作系统的方法、设备及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060021029A1 (en) * 2004-06-29 2006-01-26 Brickell Ernie F Method of improving computer security through sandboxing
CN102184356A (zh) * 2011-04-21 2011-09-14 奇智软件(北京)有限公司 利用沙箱技术进行防御的方法、装置及安全浏览器
CN102314373A (zh) * 2011-07-07 2012-01-11 李鹏 一种基于虚拟化技术实现安全工作环境的方法
CN103309666A (zh) * 2013-06-09 2013-09-18 北京奇虎科技有限公司 一种软件运行控制方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060021029A1 (en) * 2004-06-29 2006-01-26 Brickell Ernie F Method of improving computer security through sandboxing
CN102184356A (zh) * 2011-04-21 2011-09-14 奇智软件(北京)有限公司 利用沙箱技术进行防御的方法、装置及安全浏览器
CN102314373A (zh) * 2011-07-07 2012-01-11 李鹏 一种基于虚拟化技术实现安全工作环境的方法
CN103309666A (zh) * 2013-06-09 2013-09-18 北京奇虎科技有限公司 一种软件运行控制方法和装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109472133A (zh) * 2017-12-01 2019-03-15 北京安天网络安全技术有限公司 一种沙箱监控方法和装置
CN109413189A (zh) * 2018-11-05 2019-03-01 张维加 一种基于底层转译的电子交易系统
CN112506451A (zh) * 2020-12-08 2021-03-16 西安雷风电子科技有限公司 一种打印机信息管理工具包及管理方法
CN112506451B (zh) * 2020-12-08 2023-04-07 西安雷风电子科技有限公司 一种打印机信息管理工具包及管理方法
CN116880866A (zh) * 2023-09-07 2023-10-13 京东科技信息技术有限公司 安装操作系统的方法、设备及系统

Similar Documents

Publication Publication Date Title
CN105138382B (zh) 一种Android系统升级的方法及终端
CN114207586A (zh) 用于容器部署的动态映像合成
US11403146B2 (en) Method, apparatus, and server for managing image across cloud servers
CN110088733A (zh) 虚拟机迁移的基于存储层的编排
WO2019237584A1 (zh) 容器的管理方法、装置、计算机设备及存储介质
US10922123B2 (en) Container migration in computing systems
US10747585B2 (en) Methods and apparatus to perform data migration in a distributed environment
CN101488173B (zh) 支持零宕机的可信虚拟域启动文件完整性度量的方法
EP2737395B1 (en) System and method for virtual partition monitoring
EP3355543B1 (en) Method and device for managing certificate in network function virtualization architecture
US9558023B2 (en) Live application mobility from one operating system level to an updated operating system level and applying overlay files to the updated operating system
US8782630B2 (en) Smart rebinding for live product install
CN108073423B (zh) 一种加速器加载方法、系统和加速器加载装置
US20180307498A1 (en) Driver Loading Method and Server
CN105447382A (zh) 一种基于沙箱的软件注册表重定向方法及系统
WO2020238245A1 (zh) 实现函数跳转的方法、装置及计算机存储介质
CN106201660A (zh) 一种虚拟机自动升级虚拟硬件和软件的方法
US20190205282A1 (en) Universal asynchronous receiver/transmitter (uart) data pass-through for virtualized environments
CN103186400A (zh) Web应用程序升级方法及系统
CN103473113A (zh) 一种通用的虚拟机收养方法
CN105068899A (zh) 一种Vmware系统下自动重启稳定性测试方法
RU2009105127A (ru) Изменения состояния среды для изменения функциональных возможностей
CN104517067A (zh) 访问数据的方法、装置及系统
CN104978226A (zh) 输入输出重定向方法、虚拟化系统与方法及内容递送装置
CN112219202A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160330