移动终端应用进程的调试方法及装置的制造方法
【技术领域】
[0001]本公开涉及通信技术领域,尤其涉及一种移动终端应用进程的调试方法及装置。
【背景技术】
[0002]近年来,随着网络安全问题的日益突出,很多企业纷纷采用沙箱技术来提高产品安全。安卓(Android)的安全模型就是基于一部分应用程序沙箱(sandbox)的概念建立的,每个应用程序都运行在自己的沙箱之中。
【发明内容】
[0003]为克服相关技术中存在的问题,本公开实施例提供一种移动终端应用进程的调试方法及装置。
[0004]根据本公开实施例的第一方面,提供一种移动终端应用进程的调试方法,包括:
[0005]当需对移动终端应用进程进行调试时,读取所述移动终端应用进程的SElinux权限状态;
[0006]若移动终端应用进程包括SElinux权限状态为受限的进程条目,则将SElinux权限状态为受限的进程条目内容进行词法和语法分析,并配置得到不受限权限形式的安全策略sepolicy文件;
[0007]对移动终端应用进程进行调试。
[0008]在一实施例中,所述将SElinux权限状态为受限的进程条目内容进行词法和语法分析,并配置得到不受限权限形式的安全策略sepolicy文件,包括:
[0009]对所述SElinux权限状态为受限的进程条目进行词法分析,以获得多个单词符号;
[0010]根据所述多个单词符号和预先定义的语法规则生成语法树;
[0011]根据所述语法树和安全策略语句生成规则得到sepolicy文件。
[0012]在一实施例中,所述对所述SElinux权限状态为受限的进程条目进行词法分析,以获得多个单词符号,包括:
[0013]以预设分隔符将所述SElinux权限状态为受限的进程条目按顺序分解成多个单词符号,并按顺序缓存所述多个单词符号;
[0014]针对每个单词符号,查询当前单词符号是否属于关键字、运算符或界符,若不属于,则将当前单词符号匹配为标识符,并将当前单词符号和标识符组成二元式,若属于,则将当前单词符号和匹配结果组成二元式。
[0015]在一实施例中,所述根据所述多个单词符号和预先定义的语法规则生成语法树,包括:
[0016]按顺序读取缓存的单词符号,并在每次读取后查询所述语法规则和所述二元式,以判断当前读取的内容是否符合所述语法规则;
[0017]当确认当前读取的内容不符合所述语法规则时,继续按顺序读取缓存的单词符号;
[0018]当确认当前读取的内容符合所述语法规则时,生成一棵语法树,并继续按顺序读取缓存的单词符号,直至读取完所有的单词符号。
[0019]在一实施例中,所述SElinux权限状态为受限的进程条目是指包含预设关键字和进程标识的进程条目;所述预设关键字和进程标识为根据SElinux权限受限状态设置得到。
[0020]根据本公开实施例的第二方面,提供一种移动终端应用进程的调试装置,包括:
[0021]读取模块,被配置为当需对移动终端应用进程进行调试时,读取所述移动终端应用进程的SElinux权限状态;
[0022]分析得到模块,被配置为若所述读取模块读取到的移动终端应用进程包括SElinux权限状态为受限的进程条目,则将SElinux权限状态为受限的进程条目内容进行词法和语法分析,并配置得到不受限权限形式的安全策略sepolicy文件;
[0023]调试模块,被配置为对移动终端应用进程进行调试。
[0024]在一实施例中,所述分析得到模块包括:
[0025]词法分析子模块,被配置为对所述SElinux权限状态为受限的进程条目进行词法分析,以获得多个单词符号;
[0026]语法树生成子模块,被配置为根据所述词法分析子模块获得的所述多个单词符号和预先定义的语法规则生成语法树;
[0027]文件生成子模块,被配置为根据所述语法树生成子模块生成的所述语法树和安全策略语句生成规则得到sepolicy文件。
[0028]在一实施例中,所述词法分析子模块包括:
[0029]分解缓存单元,被配置为以预设分隔符将所述目标日志条目按顺序分解成多个单词符号,并按顺序缓存所述多个单词符号;
[0030]查询组成单元,被配置为针对所述分解缓存单元缓存的每个单词符号,查询当前单词符号是否属于关键字、运算符或界符,若不属于,则将当前单词符号匹配为标识符,并将当前单词符号和标识符组成二元式,若属于,则将当前单词符号和匹配结果组成二元式。[0031 ] 在一实施例中,所述语法树生成子模块,包括:
[0032]读取判断单元,被配置为按顺序读取缓存的单词符号,并在每次读取后查询所述语法规则和所述二元式,以判断当前读取的内容是否符合所述语法规则;
[0033]确认单元,被配置为当确认所述读取判断单元当前读取的内容不符合所述语法规则时,继续调用所述读取判断单元按顺序读取缓存的单词符号;
[0034]生成单元,被配置为当确认所述读取判断单元当前读取的内容符合所述语法规则时,生成一棵语法树,继续调用所述读取判断单元按顺序读取缓存的单词符号,直至读取完所有的单词符号。
[0035]在一实施例中,所述SElinux权限状态为受限的进程条目是指包含预设关键字和进程标识的进程条目;所述预设关键字和进程标识为根据SElinux权限受限状态设置得到。
[0036]根据本公开实施例的第三方面,提供一种移动终端应用进程的调试装置,包括:
[0037]处理器;
[0038]用于存储处理器可执行指令的存储器;
[0039]其中,处理器被配置为:
[0040]当需对移动终端应用进程进行调试时,读取所述移动终端应用进程的SElinux权限状态;
[0041]若移动终端应用进程包括SElinux权限状态为受限的进程条目,则将SElinux权限状态为受限的进程条目内容进行词法和语法分析,并配置得到不受限权限形式的安全策略sepolicy文件;
[0042]对移动终端应用进程进行调试。
[0043]本公开的实施例提供的技术方案可以包括以下有益效果:通过将SElinux权限状态为受限的进程条目内容进行词法和语法分析,并配置得到不受限权限形式的安全策略sepolicy文件,然后对移动终端应用进程进行调试,使得SElinux权限状态受限的进程具有相应的操作权限,且上述过程自动实现,实现效率高。
[0044]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
【附图说明】
[0045]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
[0046]图1是根据一示例性实施例示出的一种移动终端应用进程的调试方法的流程图。
[0047]图2是根据一示例性实施例示出的另一种移动终端应用进程的调试方法的流程图。
[0048]图3是根据一示例性实施例示出的一种移动终端应用进程的调试方法的场景图。
[0049]图4是根据一示例性实施例示出的一种生成安全策略语句的过程示意图。
[0050]图5是根据一示例性实施例示出的一种移动终端应用进程的调试装置的框图。
[0051]图6是根据一示例性实施例示出的另一种移动终端应用进程的调试装置的框图。
[0052]图7是根据一示例性实施例示出的另一种移动终端应用进程的调试装置的框图。
[0053]图8是根据一示例性实施例示出的一种适用于移动终端应用进程的调试装置的框图。
【具体实施方式】
[0054]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
[0055]图1是根据一示例性实施例示出的移动终端应用进程的调试方法的流程图,如图1所示,该移动终端应用进程的调试方法包括以下步骤S101-S 103:
[0056]在步骤S101中,当需对移动终端应用进程进行调试时,读取所述移动终端应用进程的SElinux权限状态。
[0057]该实施例的执行主体可以为与移动终端连接的计算机,该移动终端可以为手机、平板电脑(PAD)等安卓操作系统终端。
[0058]该实施例中,可以通过getenforce命令读取移动终端应用进程的SElinux权限状
??τ O
[0059]在步骤S