CN104036183B - 沙箱内安装软件的方法和系统 - Google Patents

沙箱内安装软件的方法和系统 Download PDF

Info

Publication number
CN104036183B
CN104036183B CN201310185825.0A CN201310185825A CN104036183B CN 104036183 B CN104036183 B CN 104036183B CN 201310185825 A CN201310185825 A CN 201310185825A CN 104036183 B CN104036183 B CN 104036183B
Authority
CN
China
Prior art keywords
file
content
sandbox
injecting
authority
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
Application number
CN201310185825.0A
Other languages
English (en)
Other versions
CN104036183A (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.)
Tencent Technology Shenzhen Co Ltd
Tencent Cloud Computing Beijing Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201310185825.0A priority Critical patent/CN104036183B/zh
Priority to PCT/CN2013/086713 priority patent/WO2014183391A1/zh
Publication of CN104036183A publication Critical patent/CN104036183A/zh
Application granted granted Critical
Publication of CN104036183B publication Critical patent/CN104036183B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及一种沙箱内安装软件的方法和系统。所述方法包括以下步骤:检测是否有安装软件的超级权限,若有,则搜索得到沙箱内普通权限的文件;备份所述文件;将预先选择的注入代码内容和沙箱进程标识替换所述文件的内容,所述注入代码内容包括超级权限的待安装代码和超级权限的唤醒进程标识;在沙箱内激活超级权限的沙箱进程,执行所述注入代码内容,将所述待安装代码注入到唤醒进程中;激活所述唤醒进程,执行所述待安装代码;安装完成后恢复备份的文件。上述沙箱内安装软件的方法和系统,实现了在沙箱内安装超级权限的软件,使得超级权限的软件的安装方式更灵活。

Description

沙箱内安装软件的方法和系统
技术领域
本发明涉及软件安装领域,特别是涉及一种沙箱内安装软件的方法和系统。
背景技术
随着智能手机的发展,智能手机的市场占有率逐步提高。由于智能手机内的操作系统的封闭性,为了安装很多软件,需要对智能手机进行越狱,以获得超级权限(即root权限)。
传统安装软件的方法,以安装Debian软件为例,主要是通过Cydia使得用户拥有超级权限,然后经过添加软件源,获取更新的软件,搜索得到所需的软件,然后下载进行安装,这一系列的操作过程繁琐。很多用户借助软件安装助手进行搜索和安装软件,但在常规方式下,沙箱内只拥有普通权限,无法安装root权限的软件。其中,Debian软件是指一款安装在计算机上使用的操作系统。Cydia是指在ipone、ipad等上使用的一种破解软件。沙箱是指运行的安全环境,在其中运行的代码不能修改或查看用户系统。
发明内容
基于此,有必要提供一种沙箱内安装软件的方法,能实现在沙箱内安装root权限软件,使得软件安装方式灵活。
此外,还有必要提供一种沙箱内安装软件的系统,能实现在沙箱内安装root权限软件,使得软件安装方式灵活。
一种沙箱内安装软件的方法,包括以下步骤:
检测是否有安装软件的超级权限,若有,则搜索得到沙箱内普通权限的文件;
备份所述文件;
将预先选择的注入代码内容和沙箱进程标识替换所述文件的内容,所述注入代码内容包括超级权限的待安装代码和超级权限的唤醒进程标识;
在沙箱内激活超级权限的沙箱进程,执行所述注入代码内容,将所述待安装代码注入到唤醒进程中;
激活所述唤醒进程,执行所述待安装代码;
安装完成后恢复备份的文件。
在其中一个实施例中,在所述检测是否有安装软件的超级权限的步骤之前,还包括:
安装越狱插件。
在其中一个实施例中,所述文件包括执行文件和指定注入进程标识的文件;
所述将预先选择的注入代码内容和沙箱进程标识替换所述文件的内容的步骤包括:
将所述注入代码内容替换所述执行文件的内容;
将所述沙箱进程标识替换所述指定注入进程标识的文件的内容。
在其中一个实施例中,将所述注入代码内容替换所述执行文件的内容的步骤包括:
将注入代码内容编译生成可执行文件,并所述可执行文件的内容序列化,读取序列化后的所述可执行文件的内容,将所述可执行文件的内容覆盖所述执行文件的内容。
在其中一个实施例中,所述方法还包括:对终端进行重启或注销。
一种沙箱内安装软件的方法,包括以下步骤:
检测是否有安装软件的超级权限,若有,则搜索得到沙箱内普通权限的文件,所述文件包括执行文件和指定注入进程标识的文件;
新增文件;
将预先选择的注入代码内容替换所述执行文件的内容,以及将预先选择的沙箱进程标识替换所述指定注入进程标识的文件的内容,所述注入代码内容包括超级权限的待安装代码和超级权限的唤醒进程标识;
在沙箱内激活超级权限的沙箱进程,执行所述注入代码内容,将所述待安装代码注入到唤醒进程中;
激活所述唤醒进程,执行所述待安装代码;
安装完成后恢复所述新增文件。
在其中一个实施例中,将所述注入代码内容替换所述执行文件的内容的步骤包括:
将注入代码内容编译生成可执行文件,并所述可执行文件的内容序列化,读取序列化后的所述可执行文件的内容,将所述可执行文件的内容覆盖所述执行文件的内容。
一种沙箱内安装软件的系统,包括:
检测模块,用于检测是否有安装软件的超级权限;
搜索模块,用于在检测到有安装软件的超级权限时,搜索得到沙箱内普通权限的文件;
备份模块,用于备份所述文件;
替换模块,用于将预先选择的注入代码内容和沙箱进程标识替换所述文件的内容,所述注入代码内容包括超级权限的待安装代码和超级权限的唤醒进程标识;
注入模块,用于在沙箱内激活超级权限的沙箱进程,执行所述注入代码内容,将所述待安装代码注入到唤醒进程中;
执行模块,用于激活所述唤醒进程,执行所述待安装代码;
恢复模块,用于在安装完成后恢复备份的文件。
在其中一个实施例中,所述系统还包括:
插件安装模块,用于安装越狱插件。
在其中一个实施例中,所述文件包括执行文件和指定注入进程标识的文件;
所述替换模块还用于将所述注入代码内容替换所述执行文件的内容,以及将所述沙箱进程标识替换所述指定注入进程标识的文件的内容。
在其中一个实施例中,所述替换模块还用于将注入代码内容编译生成可执行文件,并所述可执行文件的内容序列化,读取序列化后的所述可执行文件的内容,将所述可执行文件的内容覆盖所述执行文件的内容。
在其中一个实施例中,所述系统还包括:重启/注销模块,用于对终端进行重启或注销。
一种沙箱内安装软件的系统,包括:
检测模块,用于检测是否有安装软件的超级权限;
备份模块,用于新增文件;
搜索模块,用于在检测到有安装软件的超级权限时,搜索得到沙箱内普通权限的文件,所述文件包括执行文件和指定注入进程标识的文件;
替换模块,用于将预先选择的注入代码内容替换所述执行文件的内容,以及将预先选择的沙箱进程标识替换所述指定注入进程标识的文件的的内容,所述注入代码内容包括超级权限的待安装代码和超级权限的唤醒进程标识;
注入模块,用于在沙箱内激活超级权限的沙箱进程,执行所述注入代码内容,将所述待安装代码注入到唤醒进程中;
执行模块,用于激活所述唤醒进程,执行所述待安装代码;
恢复模块,用于安装完成后恢复所述新增文件。
在其中一个实施例中,所述替换模块还用于将注入代码内容编译生成可执行文件,并所述可执行文件的内容序列化,读取序列化后的所述可执行文件的内容,将所述可执行文件的内容覆盖所述执行文件的内容。
上述沙箱内安装软件的方法和系统,通过将注入代码内容和沙箱进程标识替换沙箱内的普通权限的文件,然后再将超级权限的待安装代码注入到唤醒进程中,以实现安装待安装代码,实现了在沙箱内安装超级权限的软件,使得超级权限的软件的安装方式更灵活,不再局限于在越狱情况下添加软件源,获取更新的软件,搜索得到所需的软件,然后下载进行安装这一安装方式。
附图说明
图1为一个实施例中沙箱内安装软件的方法的流程示意图;
图2为将预先选择的注入代码内容和沙箱进程标识替换该文件的内容的流程示意图;
图3为一个实施例中沙箱内安装软件的系统的内部结构示意图;
图4为另一个实施例中沙箱内安装软件的系统的内部结构示意图。
具体实施方式
下面结合具体的实施例及附图对沙箱内安装软件的方法和系统的技术方案进行详细的描述,以使其更加清楚。
如图1所示,在一个实施例中,一种沙箱内安装软件的方法,包括以下步骤:
步骤S102,检测是否有安装软件的超级权限,若有,执行步骤S104,否则结束。
具体的,在步骤S102之前,可在终端上安装越狱插件。该终端可为智能手机、掌上电脑、个人数字助理等。以智能手机为例,该越狱插件可为MobileSubstrate,该插件能够自动对/Library/MobileSubstrate/DynamicLibraries目录下面的动态库进行加载,如:
/Library/MobileSubstrate/DynamicLibraries/MobileSafety.dylib,及其对应的plist,如MobileSafety.plist。
其中,dylib文件为执行文件,其内包含执行的内容;plist文件为指定注入进程标识的文件,以声明要注入的进程标识。注入进程标识可为注入进程名称或编号等。
超级权限(root权限)指可进行任意操作的最高权限。
步骤S104,搜索得到沙箱内普通权限的文件。
具体的,普通权限(mobile权限)是相对超级权限,其权限范围小,能完成部分操作。一般系统软件的安装等需要超级权限。因在沙箱内无法对超级权限的文件进行变更操作,需要搜索得到普通权限的文件。本实施例中,搜索得到/Library/MobileSubstrate/DynamicLibraries目录下可进行写入的文件作为普通权限的文件,如MobileSafety.dylib和MobileSafety.plist。
步骤S106,备份该文件。
具体的,该文件包括执行文件和指定注入进程标识的文件。该注入进程标识可为注入进程的名称或编号等。将MobileSafety.dylib备份为backup1,MobileSafety.plist备份为backup2文件。
步骤S108,将预先选择的注入代码内容和沙箱进程标识替换该文件的内容。
具体的,该注入代码内容包括超级权限的待安装代码和超级权限的唤醒进程标识。该待安装代码可为Detian软件代码或Windows操作系统代码或安卓系统代码。超级权限的待安装代码和唤醒进程是指需要在超级权限下才能运行。
唤醒进程标识可为唤醒进程名称或编号,根据唤醒进程名称或编号可得到对应的唤醒进程。沙箱进程标识可为沙箱进程名称或编号等。
在一个实施例中,如图2所示,步骤S108包括:
步骤S208,将该注入代码内容替换该执行文件的内容。
具体的,将注入代码内容编译生成可执行文件,并该可执行文件的内容序列化,读取序列化后的该可执行文件的内容,将该可执行文件的内容覆盖该执行文件的内容。
进一步的,将可执行文件的内容的序列化形成的字符串反序列化,然后写入该执行文件中。
例如注入代码内容为abcdef,MobileSafety.dylib文件的内容为fedcba,则将注入代码内容覆盖MobileSafety.dylib文件的内容,得到MobileSafety.dylib文件的内容为abcdef。
步骤S218,将该沙箱进程标识替换该指定注入进程标识的文件的内容。
具体的,将沙箱进程(sandboxd进程)标识替换MobileSafety.plist文件的内容。
步骤S110,在沙箱内激活超级权限的沙箱进程,执行该注入代码内容,将该待安装代码注入到唤醒进程中。
具体的,sandboxd进程是负责控制对沙箱的操作,该进程不属于常驻进程,需在特定的情况下才会启动,如在进入沙箱的App(Applicant,应用)里面,沙箱App退到后台,以及沙箱App的一些操作。启动sandboxd进程,会加载注入代码内容,执行超级权限代码到sandboxd进程中。该超级权限代码包括待安装代码(dpkg)和重启代码(reboot)。因sandboxd进程具有不稳定及自动退出的机制,采用唤醒进程对待安装代码执行操作。
根据沙箱进程标识可得到对应的沙箱进程,即可根据沙箱进程名称或编号获得对应的沙箱进程。
将待安装代码替换MobileSafety.dylib文件的内容,将唤醒进程标识替换MobileSafety.plist文件的内容。该唤醒进程可为Locationd进程或Configd进程。
将待安装代码注入到唤醒进程后,执行killall唤醒进程指令,杀掉唤醒进程,然后再重新唤醒,如此唤醒进程中注入了待安装代码。
步骤S112,激活该唤醒进程,执行该待安装代码。
本实施例中,唤醒进程为Locationd进程,激活Locationd进程,使用dpkg指令对detian软件进行安装。
根据唤醒进程标识可得到对应的唤醒进程,即可根据唤醒进程名称或编号获得对应的唤醒进程。
步骤S114,安装完成后恢复备份的文件。
具体的,安装完成后通过备份的两个文件backup1和backup2进行恢复,恢复得到原始的MobileSafety.dylib文件和MobileSafety.plist文件。
进一步的,所述方法还包括步骤:对终端进行重启或注销。
具体的,可通过reboot或者killallSpringBoard命令自动对终端进行重启或注销。SpringBoard属于Dock结构,包括iDevice的解锁后主菜单界面、Spotlight搜索界面和多任务切换菜单,其存在于iDevice进程中,可通过killallSpringBoard重启终端。重启或注销后安装完成。
在其他实施例中,步骤S106和步骤S114可省略。或者,步骤106可替换为新增文件,该新增文件可为搜索得到的沙箱内普通权限的文件或者其他文件,步骤114则为安装完成后恢复该新增文件。
上述沙箱内安装软件的方法,通过将注入代码内容和沙箱进程标识替换沙箱内的普通权限的文件,然后再将超级权限的待安装代码注入到唤醒进程中,以实现安装待安装代码,实现了在沙箱内安装超级权限的软件,使得超级权限的软件的安装方式更灵活,且该安装方式适用于推广debtian软件的应用。
如图3所示,在一个实施例中,一种沙箱内安装软件的系统,包括检测模块102、搜索模块104、备份模块106、替换模块108、注入模块110、执行模块112和恢复模块114。其中:
检测模块102用于检测是否有安装软件的超级权限。超级权限(root权限)指可进行任意操作的最高权限。
搜索模块104用于在检测到有权限安装软件时,搜索得到沙箱内普通权限的文件。具体的,普通权限(mobile权限)是相对超级权限,其权限范围小,能完成部分操作。一般系统软件的安装等需要超级权限。因在沙箱内无法对超级权限的文件进行变更操作,需要搜索得到普通权限的文件。本实施例中,搜索得到/Library/MobileSubstrate/DynamicLibraries目录下可进行写入的文件作为普通权限的文件,如MobileSafety.dylib和MobileSafety.plist。
其中,dylib文件为执行文件,其内包含执行的内容;plist文件为指定注入进程标识的文件,以声明要注入的进程标识。注入进程标识可为注入进程名称或编号等。
备份模块106用于备份该文件。
具体的,该文件包括执行文件和指定注入进程标识的文件。该注入进程标识可为注入进程的名称或编号等。将MobileSafety.dylib备份为backup1,MobileSafety.plist备份为backup2文件。
替换模块108用于将预先选择的注入代码内容和沙箱进程标识替换该文件的内容,该注入代码内容包括超级权限的待安装代码和超级权限的唤醒进程标识。
该待安装代码可为Detian软件代码或Windows操作系统代码或安卓系统代码。超级权限的待安装代码和唤醒进程是指需要在超级权限下才能运行。唤醒进程标识可为唤醒进程名称或编号,根据唤醒进程名称或编号可得到对应的唤醒进程。沙箱进程标识可为沙箱进程名称或编号等。
进一步的,替换模块108还用于将该注入代码内容替换该执行文件的内容,以及将该沙箱进程标识替换该指定注入进程标识的文件的内容。
具体的,替换模块108还用于将注入代码内容编译生成可执行文件,并该可执行文件的内容序列化,读取序列化后的该可执行文件的内容,将该可执行文件的内容覆盖该执行文件的内容。
例如注入代码内容为abcdef,MobileSafety.dylib文件的内容为fedcba,则将注入代码内容覆盖MobileSafety.dylib文件的内容,得到MobileSafety.dylib文件的内容为abcdef。将沙箱进程(sandboxd进程)标识替换MobileSafety.plist文件的内容。沙箱进程标识可为沙箱进程名称或编号等。
注入模块110用于在沙箱内激活超级权限的沙箱进程,执行该注入代码内容,将该待安装代码注入到唤醒进程中。
具体的,sandboxd进程是负责控制对沙箱的操作,该进程不属于常驻进程,需在特定的情况下才会启动,如在进入沙箱的App(Applicant,应用)里面,沙箱App退到后台,以及沙箱App的一些操作。启动sandboxd进程,会加载注入代码内容,执行超级权限代码到sandboxd进程中。该超级权限代码包括待安装代码(dpkg)和重启代码(reboot)。因sandboxd进程具有不稳定及自动退出的机制,采用唤醒进程对待安装代码执行操作。
根据沙箱进程标识可得到对应的沙箱进程,即可根据沙箱进程名称或编号获得对应的沙箱进程。
将待安装代码替换MobileSafety.dylib文件的内容,将唤醒进程标识替换MobileSafety.plist文件的内容。该唤醒进程可为Locationd进程或Configd进程。
将待安装代码注入到唤醒进程后,执行killall唤醒进程指令,杀掉唤醒进程,然后再重新唤醒,如此唤醒进程中注入了待安装代码。
执行模块112用于激活该唤醒进程,执行该待安装代码。
本实施例中,唤醒进程为Locationd进程,激活Locationd进程,使用dpkg指令对detian软件进行安装。
根据唤醒进程标识可得到对应的唤醒进程,即可根据唤醒进程名称或编号获得对应的唤醒进程。
恢复模块114用于在安装完成后恢复备份的文件。
具体的,安装完成后通过备份的两个文件backup1和backup2进行恢复,恢复得到原始的MobileSafety.dylib文件和MobileSafety.plist文件。
上述沙箱内安装软件的系统,通过将注入代码内容和沙箱进程标识替换沙箱内的普通权限的文件,然后再将超级权限的待安装代码注入到唤醒进程中,以实现安装待安装代码,实现了在沙箱内安装超级权限的软件,使得超级权限的软件的安装方式更灵活,且该安装方式适用于推广debtian软件的应用。
如图4所示,在一个实施例中,上述沙箱内安装软件的系统,除了包括检测模块102、搜索模块104、备份模块106、替换模块108、注入模块110、执行模块112和恢复模块114,还包括插件安装模块116和重启/注销模块118。其中:
插件安装模块116用于安装越狱插件。该终端可为智能手机、掌上电脑、个人数字助理等。以智能手机为例,该越狱插件可为MobileSubstrate,该插件能够自动对/Library/MobileSubstrate/DynamicLibraries目录下面的动态库进行加载,如:
/Library/MobileSubstrate/DynamicLibraries/MobileSafety.dylib,及其对应的plist,如MobileSafety.plist。
重启/注销模块118用于对终端进行重启或注销。
具体的,可通过reboot或者killallSpringBoard命令自动对终端进行重启或注销。SpringBoard属于Dock结构,包括iDevice的解锁后主菜单界面、Spotlight搜索界面和多任务切换菜单,其存在于iDevice进程中,可通过killallSpringBoard重启终端。重启或注销后安装完成。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (14)

1.一种沙箱内安装软件的方法,包括以下步骤:
检测是否有安装软件的超级权限,若有,则搜索得到沙箱内普通权限的文件;
备份所述文件;
将预先选择的注入代码内容和沙箱进程标识替换所述文件的内容,所述注入代码内容包括超级权限的待安装代码和超级权限的唤醒进程标识;
在沙箱内激活超级权限的沙箱进程,执行所述注入代码内容,将所述待安装代码注入到唤醒进程中;
激活所述唤醒进程,执行所述待安装代码;
安装完成后恢复备份的文件。
2.根据权利要求1所述的沙箱内安装软件的方法,其特征在于,在所述检测是否有安装软件的超级权限的步骤之前,还包括:
安装越狱插件。
3.根据权利要求1所述的沙箱内安装软件的方法,其特征在于,所述文件包括执行文件和指定注入进程标识的文件;
所述将预先选择的注入代码内容和沙箱进程标识替换所述文件的内容的步骤包括:
将所述注入代码内容替换所述执行文件的内容;
将所述沙箱进程标识替换所述指定注入进程标识的文件的内容。
4.根据权利要求3所述的沙箱内安装软件的方法,其特征在于,将所述注入代码内容替换所述执行文件的内容的步骤包括:
将注入代码内容编译生成可执行文件,并将所述可执行文件的内容序列化,读取序列化后的所述可执行文件的内容,将所述可执行文件的内容覆盖所述执行文件的内容。
5.根据权利要求1至4中任一项所述的沙箱内安装软件的方法,其特征在于,所述方法还包括:
对终端进行重启或注销。
6.一种沙箱内安装软件的方法,包括以下步骤:
检测是否有安装软件的超级权限,若有,则搜索得到沙箱内普通权限的文件,所述文件包括执行文件和指定注入进程标识的文件;
新增文件;
将预先选择的注入代码内容替换所述执行文件的内容,以及将预先选择的沙箱进程标识替换所述指定注入进程标识的文件的内容,所述注入代码内容包括超级权限的待安装代码和超级权限的唤醒进程标识;
在沙箱内激活超级权限的沙箱进程,执行所述注入代码内容,将所述待安装代码注入到唤醒进程中;
激活所述唤醒进程,执行所述待安装代码;
安装完成后恢复所述新增文件。
7.根据权利要求6所述的沙箱内安装软件的方法,其特征在于,将所述注入代码内容替换所述执行文件的内容的步骤包括:
将注入代码内容编译生成可执行文件,并将所述可执行文件的内容序列化,读取序列化后的所述可执行文件的内容,将所述可执行文件的内容覆盖所述执行文件的内容。
8.一种沙箱内安装软件的系统,其特征在于,包括:
检测模块,用于检测是否有安装软件的超级权限;
搜索模块,用于在检测到有安装软件的超级权限时,搜索得到沙箱内普通权限的文件;
备份模块,用于备份所述文件;
替换模块,用于将预先选择的注入代码内容和沙箱进程标识替换所述文件的内容,所述注入代码内容包括超级权限的待安装代码和超级权限的唤醒进程标识;
注入模块,用于在沙箱内激活超级权限的沙箱进程,执行所述注入代码内容,将所述待安装代码注入到唤醒进程中;
执行模块,用于激活所述唤醒进程,执行所述待安装代码;
恢复模块,用于在安装完成后恢复备份的文件。
9.根据权利要求8所述的沙箱内安装软件的系统,其特征在于,所述系统还包括:
插件安装模块,用于安装越狱插件。
10.根据权利要求8所述的沙箱内安装软件的系统,其特征在于,所述文件包括执行文件和指定注入进程标识的文件;
所述替换模块还用于将所述注入代码内容替换所述执行文件的内容,以及将所述沙箱进程标识替换所述指定注入进程标识的文件的内容。
11.根据权利要求10所述的沙箱内安装软件的系统,其特征在于,所述替换模块还用于将注入代码内容编译生成可执行文件,并将所述可执行文件的内容序列化,读取序列化后的所述可执行文件的内容,将所述可执行文件的内容覆盖所述执行文件的内容。
12.根据权利要求8至11中任一项所述的沙箱内安装软件的系统,其特征在于,所述系统还包括:
重启/注销模块,用于对终端进行重启或注销。
13.一种沙箱内安装软件的系统,其特征在于,包括:
检测模块,用于检测是否有安装软件的超级权限;
备份模块,用于新增文件;
搜索模块,用于在检测到有安装软件的超级权限时,搜索得到沙箱内普通权限的文件,所述文件包括执行文件和指定注入进程标识的文件;
替换模块,用于将预先选择的注入代码内容替换所述执行文件的内容,以及将预先选择的沙箱进程标识替换所述指定注入进程标识的文件的内容,所述注入代码内容包括超级权限的待安装代码和超级权限的唤醒进程标识;
注入模块,用于在沙箱内激活超级权限的沙箱进程,执行所述注入代码内容,将所述待安装代码注入到唤醒进程中;
执行模块,用于激活所述唤醒进程,执行所述待安装代码;
恢复模块,用于安装完成后恢复所述新增文件。
14.根据权利要求13所述的沙箱内安装软件的系统,其特征在于,所述替换模块还用于将注入代码内容编译生成可执行文件,并将所述可执行文件的内容序列化,读取序列化后的所述可执行文件的内容,将所述可执行文件的内容覆盖所述执行文件的内容。
CN201310185825.0A 2013-05-17 2013-05-17 沙箱内安装软件的方法和系统 Active CN104036183B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310185825.0A CN104036183B (zh) 2013-05-17 2013-05-17 沙箱内安装软件的方法和系统
PCT/CN2013/086713 WO2014183391A1 (zh) 2013-05-17 2013-11-07 沙箱内安装软件的方法和系统、计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310185825.0A CN104036183B (zh) 2013-05-17 2013-05-17 沙箱内安装软件的方法和系统

Publications (2)

Publication Number Publication Date
CN104036183A CN104036183A (zh) 2014-09-10
CN104036183B true CN104036183B (zh) 2015-04-08

Family

ID=51466951

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310185825.0A Active CN104036183B (zh) 2013-05-17 2013-05-17 沙箱内安装软件的方法和系统

Country Status (2)

Country Link
CN (1) CN104036183B (zh)
WO (1) WO2014183391A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104091132B (zh) * 2014-06-17 2017-07-28 小米科技有限责任公司 在路由设备上运行插件的方法、装置及路由设备
CN106155808B (zh) * 2015-04-16 2020-10-13 腾讯科技(深圳)有限公司 计算机系统资源的管理方法及装置
CN106293667B (zh) * 2015-05-27 2020-01-21 阿里巴巴集团控股有限公司 一种应用程序修改检测方法及装置
CN105512548B (zh) * 2015-12-02 2018-03-30 湘潭大学 基于隐藏可执行镜像并注入dll保护镜像代码的方法
CN110837383B (zh) * 2019-09-30 2023-10-31 奇安信科技集团股份有限公司 应用免安装升级方法及装置
US11698966B2 (en) 2020-04-13 2023-07-11 Capital One Services, Llc Systems and methods for code injection detection

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101425016A (zh) * 2007-11-01 2009-05-06 珠海金山软件股份有限公司 运行安装软件的方法和系统
US7685638B1 (en) * 2005-12-13 2010-03-23 Symantec Corporation Dynamic replacement of system call tables
CN102542187A (zh) * 2010-12-23 2012-07-04 盛趣信息技术(上海)有限公司 基于安全沙盒提高计算机安全性能的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8245270B2 (en) * 2005-09-01 2012-08-14 Microsoft Corporation Resource based dynamic security authorization
CN102184356B (zh) * 2011-04-21 2014-04-02 奇智软件(北京)有限公司 利用沙箱技术进行防御的方法、装置及安全浏览器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7685638B1 (en) * 2005-12-13 2010-03-23 Symantec Corporation Dynamic replacement of system call tables
CN101425016A (zh) * 2007-11-01 2009-05-06 珠海金山软件股份有限公司 运行安装软件的方法和系统
CN102542187A (zh) * 2010-12-23 2012-07-04 盛趣信息技术(上海)有限公司 基于安全沙盒提高计算机安全性能的方法

Also Published As

Publication number Publication date
CN104036183A (zh) 2014-09-10
WO2014183391A1 (zh) 2014-11-20

Similar Documents

Publication Publication Date Title
CN104036183B (zh) 沙箱内安装软件的方法和系统
CN102207881B (zh) 一种基于Android的操作系统快速启动方法
US10162965B2 (en) Portable media system with virus blocker and method of operation thereof
WO2006100669A3 (en) Loading internal applications on a smartcard
CN103176864B (zh) 一种基于安卓系统的备份方法、装置以及移动终端
US20140372799A1 (en) System Differential Upgrade Method, Apparatus, and Mobile Terminal
CN104506639A (zh) 一种获取Root权限的方法及装置
CN104102506A (zh) 一种基于ARM平台的Android启动加速方法
WO2016078130A1 (zh) 一种防逆向apk文件的动态加载方法
CN105844157A (zh) 一种针对Android系统App行为的监控方法
CN102141923B (zh) 内存文件系统加载方法及装置
CN107995284B (zh) 一种适用于pos机的ota升级方法
TWI608345B (zh) Operating system recovery method, device and terminal equipment
CN102841802B (zh) 移动终端的软件升级方法
CN102799452B (zh) 系统软件升级方法和装置
CN104461594A (zh) 嵌入式操作系统的升级方法及装置
CN104881283A (zh) 一种获取基于安卓的终端设备的root权限的方法及系统
WO2022247301A1 (zh) 检测方法、图形界面及相关装置
CN103631679A (zh) 一种移动终端中应用程序安装的控制方法及系统
CN111488589A (zh) 基于硬件写保护的安全可信启动及固件升级系统和方法
CN111045686A (zh) 一种提高应用反编译速度的方法、智能终端及存储介质
CN103631639A (zh) 一种用户态虚拟网卡的自动探测方法
CN104461622A (zh) 智能终端的系统更新方法和装置
WO2015058639A1 (zh) 一种应用程序保护系统和方法
CN104765631A (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

Effective date of registration: 20200826

Address after: 518000 Nanshan District science and technology zone, Guangdong, Zhejiang Province, science and technology in the Tencent Building on the 1st floor of the 35 layer

Co-patentee after: TENCENT CLOUD COMPUTING (BEIJING) Co.,Ltd.

Patentee after: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.

Address before: Shenzhen Futian District City, Guangdong province 518044 Zhenxing Road, SEG Science Park 2 East Room 403

Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.

TR01 Transfer of patent right