CN113791813A - 更新SELinux安全策略的方法及终端 - Google Patents
更新SELinux安全策略的方法及终端 Download PDFInfo
- Publication number
- CN113791813A CN113791813A CN202110882773.7A CN202110882773A CN113791813A CN 113791813 A CN113791813 A CN 113791813A CN 202110882773 A CN202110882773 A CN 202110882773A CN 113791813 A CN113791813 A CN 113791813A
- Authority
- CN
- China
- Prior art keywords
- security policy
- terminal
- value
- policy file
- memory
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 165
- 230000008569 process Effects 0.000 claims abstract description 107
- 230000015654 memory Effects 0.000 claims abstract description 86
- 238000005192 partition Methods 0.000 claims description 70
- 238000004590 computer program Methods 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 abstract description 15
- 238000013461 design Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 22
- 238000012545 processing Methods 0.000 description 20
- 238000004891 communication Methods 0.000 description 14
- 238000011084 recovery Methods 0.000 description 9
- 238000012795 verification Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000008439 repair process Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000005484 gravity Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Stored Programmes (AREA)
- Telephone Function (AREA)
Abstract
本申请涉及操作系统技术领域,尤其涉及一种更新SELinux安全策略的方法及终端。本申请实施例公开一种更新SELinux安全策略的方法,包括以下步骤:终端接收服务器发送的安全策略文件。在接收到所述安全策略文件后,终端在保持开机的状态下执行以下各个步骤:将所述安全策略文件存储至预设存储空间,从所述预设存储空间中读取所述安全策略文件并写入内存,所述终端加载所述内存中的所述安全策略文件。本申请应用在终端更新系统文件的过程中。
Description
技术领域
本申请涉及操作系统技术领域,尤其涉及一种更新SELinux安全策略的方法及终端。
背景技术
随着智能手机等智能终端的普及,智能终端的安全性也越来越重要。SELinux(Security-Enhanced Linux,安全强化的Linux)技术在现有的操作系统平台的应用,使得操作系统的安全性得到很大的提升。以将SELinux技术应用在安卓系统为例,SELinux技术通过制定安全策略文件,该安全策略文件规定了不同进程在访问系统资源时的访问权限,使得不同进程具有不同的访问权限,保证进程既能顺利执行其基本功能又能防止系统资源被恶意使用。在保证每个进程功能的前提下最小化其访问权限能够保最大限度证系统安全。进程正常业务外的权限对于整个系统来说是有安全隐患的,要修改进程的访问权限,只能修改安全策略文件,并更新到终端上。现有的更新方式是:修改安全策略文件,重新编译并生成系统升级补丁包,然后通过无线软件升级(Over-the-air programming,OTA)方式向智能终端推送生成的系统升级补丁包,然后智能终端使用该系统升级补丁包升级系统以更新安全文件。这种通过升级系统的方式更新安全策略文件时,智能终端需要重启,会导致当前服务中断,且当系统升级补丁包较大时,修复时间较长。
发明内容
本申请公开一种更新SELinux安全策略的方法及终端,以解决现有技术中存在的通过系统升级的方式更新安全策略文件时终端重启,会导致当前服务中断,且当系统升级补丁包较大时,修复时间较长的问题而发明。
第一方面,提供一种更新SELinux安全策略的方法,应用于终端,包括:所述终端接收服务器发送的安全策略文件,在接收到所述安全策略文件后,终端在保持开机的状态下执行以下各个步骤:将所述安全策略文件存储至预设存储空间;从所述预设存储空间中读取所述安全策略文件并写入内存;加载所述内存中的所述安全策略文件。
本申请实施例提供的上述方法,能够实现对SELinux技术制定的安全策略文件的更新。采用本申请实施例提供的更新方式,终端无需重启,不会中断终端当前正在运行的服务。此外,终端在收到服务器发送的安全策略文件后可自动后台运行本申请实施例提供的更新方法,且由于仅更新安全策略文件,省去了刷新分区的过程,其更新速度快。因此,更新后的安全策略文件能够及时、快速生效。
在一种可能的设计中,在所述终端从所述预设存储空间中读取所述安全策略文件并写入内存之前,所述方法还包括:所述终端对存储在所述预设存储空间中的所述安全策略文件进行安全性和/或完整性校验。
在一种可能的设计中,所述终端将所述安全策略文件存储至预设存储空间,包括:所述终端通过第一服务或进程将所述安全策略文件存储至预设存储空间。所述终端从所述预设存储空间中读取所述安全策略文件并写入内存,包括:所述终端通过所述第一服务或进程将预设属性值的取值由第一取值修改为第二取值。当检测到所述预设属性值的取值由第一取值变化为所述第二取值时,所述终端通过第二服务或进程从所述预设存储空间中读取所述安全策略文件并写入内存。所述终端加载所述内存中的所述安全策略文件,包括:所述终端通过所述第二服务或进程加载所述内存中的所述安全策略文件。
在第一方面的一种可能设计中,当所述终端下电关机时,所述预设属性值的取值由第二取值变化为第一取值,则当所述终端重启时,所述方法还包括:在内核启动阶段,所述终端将所述预设属性值的取值由第一取值修改为第二取值以便于所述第二服务或进程检测到所述预设属性值的取值由第一取值被修改为第二取值后从所述预设存储空间中读取所述安全策略文件并写入内存。
在第一方面的一种可能设计中,所述第一服务或进程为update_sepolicy服务,所述第二服务或进程为init进程,所述预设属性值为SELinux.reload_policy属性值。
在第一方面的一种可能设计中,所述终端将所述安全策略文件存储至预设存储空间;从所述预设存储空间中读取所述安全策略文件并写入内存;以及加载所述内存中的所述安全策略文件,包括:所述终端通过预设服务或进程将所述安全策略文件存储至预设存储空间;从所述预设存储空间中读取所述安全策略文件并写入内存以及加载所述内存中的所述安全策略文件。
在第一方面的一种可能设计中,所述预设服务或进程为init进程。
在第一方面的一种可能设计中,所述预设存储空间为所述终端的预设可写分区。
第二方面,提供一种终端,包括:接收单元,用于接收服务器发送的安全策略文件。处理单元,用于在保持开机的状态下将所述安全策略文件写入第一存储单元。所述处理单元,还用于从所述第一存储单元中读取所述安全策略文件并写入第二存储单元;其中,所述第二存储单元为内存。所述处理单元,还用于加载所述第二存储单元中的所述安全策略文件。
在第二方面的一种可能设计中,所述处理单元,还用于对存储在所述第一存储单元中的所述安全策略文件进行安全性和/或完整性校验。
在第二方面的一种可能设计中,所述处理单元,还用于通过第一服务或进程将所述安全策略文件存储至所述第一存储单元;通过所述第一服务或进程将预设属性值的取值由第一取值修改为第二取值。当检测到所述预设属性值的取值由第一取值变化为所述第二取值时,通过第二服务或进程从所述第一存储单元中读取所述安全策略文件并写入所述第二存储单元;以及通过所述第二服务或进程加载所述第二存储单元中的所述安全策略文件。
在第二方面的一种可能设计中,当所述终端下电关机时,所述预设属性值的取值由第二取值变化为第一取值,则当所述终端重启时,所述处理单元,还用于:在内核启动阶段,将所述预设属性值的取值由第一取值修改为第二取值以便于所述第二服务或进程检测到所述预设属性值的取值由第一取值被修改为第二取值后从所述第一存储单元中读取所述安全策略文件并写入所述第二存储单元。
在第二方面的一种可能设计中,所述第一服务或进程为update_sepolicy服务,所述第二服务或进程为init进程,所述预设属性值为SELinux.reload_policy属性值。
在第二方面的一种可能设计中,所述处理单元,还用于:通过预设服务或进程将所述安全策略文件存储至所述第一存储单元;从所述第一存储单元中读取所述安全策略文件并写入所述第二存储单元以及加载所述第二存储单元中的所述安全策略文件。
在第二方面的一种可能设计中,所述预设服务或进程为init进程。
在第二方面的一种可能设计中,所述第一存储单元为所述终端的预设可写分区。
第三方面,提供一种终端,包括:通信接口、处理器、存储器和总线,所述存储器包括第一存储器和第二存储器,所述第二存储器为内存;所述存储器中存储有程序代码,当所述程序代码被所述处理器执行时,使得所述终端执行以下步骤:所述通信接口,用于接收服务器发送的安全策略文件;所述处理器,用于在保持开机的状态下将所述安全策略文件写入所述第一存储器;从所述第一存储器中读取所述安全策略文件并写入所述第二存储器;以及加载所述第二存储器中的所述安全策略文件。
在第三方面的一种可能设计中,所述处理器,还用于对存储在所述第一存储器中的所述安全策略文件进行安全性和/或完整性校验。
在第三方面的一种可能设计中,所述处理器,还用于通过第一服务或进程将所述安全策略文件存储至所述第一存储器;通过所述第一服务或进程将预设属性值的取值由第一取值修改为第二取值;当检测到所述预设属性值的取值由第一取值变化为所述第二取值时,通过第二服务或进程从所述第一存储器中读取所述安全策略文件并写入所述第二存储器;以及通过所述第二服务或进程加载所述第二存储器中的所述安全策略文件。
在第三方面的一种可能设计中,当所述终端下电关机时,所述预设属性值的取值由第二取值变化为第一取值,则当所述终端重启时,所述处理器,还用于:在内核启动阶段,将所述预设属性值的取值由第一取值修改为第二取值以便于所述第二服务或进程检测到所述预设属性值的取值由第一取值被修改为第二取值后从所述第一存储器中读取所述安全策略文件并写入所述第二存储器。
在第三方面的一种可能设计中,所述第一服务或进程为update_sepolicy服务,所述第二服务或进程为init进程,所述预设属性值为SELinux.reload_policy属性值。
在第三方面的一种可能设计中,所述处理器,还用于:通过预设服务或进程将所述安全策略文件存储至所述第一存储器;从所述第一存储器中读取所述安全策略文件并写入所述第二存储器以及加载所述第二存储器中的所述安全策略文件。
在第三方面的一种可能设计中,所述预设服务或进程为init进程。
在第三方面的一种可能设计中,所述第一存储器为所述终端的预设可写分区。
第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端上运行时,使得所述终端执行上述第一方面所述的更新SELinux安全策略的方法。
第五方面,提供一种包含指令的计算机程序产品,当所述计算机程序产品在终端上运行时,使得所述终端执行上述第一方面所述的更新SELinux安全策略的方法。
附图说明
图1A为现有技术中更新SELinux安全策略的方法流程示意图;
图1B为在终端上应用图1A所示方法的界面示意图;
图2为手机的一种结构示意图;
图3为本申请实施例提供的一种更新SELinux安全策略的方法流程示意图;
图4A为本申请实施例提供的又一种更新SELinux安全策略的方法流程示意图;
图4B为本申请实施例提供的再一种更新SELinux安全策略的方法流程示意图;
图5为在终端上应用图3或图4A或图4B的方法的界面示意图;
图6为本申请实施例提供的一种终端的结构示意图。
具体实施方式
SELinux技术制定了诸多权限策略,使得访问主体对访问客体仅拥有最小的访问权限,进而提升系统的安全性。其中,访问主体主要是指终端中的各种进程和线程等。访问客体主要是指终端中的各类用于通信、信息共享和存储的系统资源,如文件、套接字(socket)、存储空间、目录、共享内存等。以手机为例,手机中的系统资源包括手机中存储的系统文件、手机的存储空间以及不同存储空间的存储目录等。
SELinux定义的权限策略可表达为如下形式:rule_name source_type target_type:object_class perm_set。
其中,rule_name用于表示该权限策略的类型其可能为允许(allow)或禁止(forbid)。source_type表示访问主体,一般为某个进程或线程的名称;target_type:object_class表示访问客体,perm_set表示允许访问主体可对访问客体执行的操作(rule_name为allow时)或者禁止访问主体对访问客体执行的操作(rule_name为forbid时)。object_class可能为file,表示普通文件;或者为dir,代表目录;或者为fd,表示文件描述符。当object_class为file时,perm_set可能为读(read)、写(write)创建(create)等多种操作。
示例性的,一种权限策略为:allow netd proc:file write。其中,allow表示该规则为“允许规则”,netd表示访问主体为netd进程,proc:file表示访问客体为proc目录下的普通文件,write表示该规则定义的对proc:file的可执行操作为写。因此该权限策略的意思为允许netd进程访问proc资源中的普通文件,并对其执行写操作。
SELinux在具体应用时有可选的三种模式:(1)不可用(disabled)模式,表示SELinux完全失效。(2)宽容(permissive)模式,表示发生策略违反时仅记录日志,不做禁止。(3)强制(enforcing)模式,表示发生策略违反时记录日志并禁止访问行为。目前,SELinux在Android L及后续版本上会全面生效并默认打开强制模式。在这种模式下,当应用程序违反该权限策略时会无法获取资源进而使得某些功能异常或者失效。将SELinux技术应用在安卓平台时,该SELinux技术又可被称为SEAndroid。
当应用程序的访问权限过大或过小时,需要修改SELinux制定的上述权限策略。例如:为应用进程A设定的访问权限为允许该应用进程A访问或修改系统资源1,但应用进程A的实际业务根本不需要访问该系统资源1,那么如果应用进程A存在漏洞,则赋予该应用进程A的上述权限可能会导致系统资源1被篡改等导致终端存在安全漏洞。在上述应用场景下,终端需要修改SELinux制定的权限策略,例如:修改应用进程A对系统资源1的访问权限等。目前,手机等终端出厂时,将安全策略文件和其他文件生成镜像文件并将该镜像文件写入某个只读分区中。当需要修改该安全策略文件时,通常采用OTA升级的方式升级系统(也即更新用于存储安全策略文件的分区)以更新安全策略文件。OTA升级是指终端通过无线网下载远程服务器上的升级包,对系统或应用进行升级的技术,是目前系统常用的软件升级方式。
参考图1A,手机10的存储区包括两部分:双倍速率同步动态随机存储器(DoubleData Rate,DDR)101和嵌入式多媒体卡(Embedded Multi Media Card,EMMC)/通用闪存存储(Universal Flash Storage,UFS)102。其中,DDR101相当于手机的“内存”,EMMC/UFS102相当于手机的“硬盘”。图1A中示例性的示出了EMMC/UFS102的一种划分,包括Firstbootloader分区、Second bootloader分区、misc分区、boot分区、recovery分区、cache分区、modem分区、system分区、data分区、sdcard分区等。
其中,First bootloader分区、Second bootloader分区和boot分区存放有手机启动相关的应用程序,用于手机启动。具体的,First bootloader分区主要执行硬件检测,确定硬件能够正常工作后将Second bootloader分区中的文件拷贝到DDR中开始执行启动操作。Second bootloader分区会进行一些硬件初始化、获取内存大小等工作,之后会从boot分区包含的内容开始启动。Cache分区一般用于存储手机系统产生的临时缓存。misc分区用于存储一些标志类临时性文件,recovery分区一般会写入一个具有还原功能的系统软件,该系统软件能够对现有系统进行重新刷写或清理。modem分区用于存储存放基带相关的文件,例如手机进行长期演进(long term evolution,LTE)通信等相关的文件。system分区一般用于存储系统文件,该分区一般默认为只读,也即无法修改该分区存储的系统文件。data分区一般而言用于存储用户数据,如各种安卓安装包(Android Package,APK)数据。sdcard分区用于挂载安全数码卡(Secure Digital Memory Card,SD)。在手机开启时,EMMC/UFS102中存储的数据会被加载到DDR101中。
需要说明的是,上述对分区的划分仅为一种示例性的划分。实际应用中可能还存在其他划分形式,可能包含更多或更少的分区。
此外,图1A中,以手机的存储空间包括DDR和EMMC/UFS为例进行说明。在其他实现方式中,手机的存储空间还可能包括:静态随机存取存储器(Static Random AccessMemory,SRAM)存储区、Nand/Nor Flash存储区、同步动态随机存储器(SynchronousDynamic Random Access Memory,SDRAM)存储区及外设地址空间。其中,SRAM存储区相当于手机的“内存”,Nand/Nor Flash存储区为手机的“硬盘”,Nand/Nor Flash中存储着手机的全部系统数据,可对Nand/Nor Flash划分为上述各个分区。
以存储安全策略文件的分区为boot分区为例,参考图1A,目前的OTA升级方式具体为:服务器20重新编译并制作升级包,该升级包例如为OTA差分包,然后服务器20将该升级包发送给手机10。手机10收到该升级包后先下载到本地(可以理解为写入手机的存储空间,如写入某个可写分区,对于Android来说一般就是DATA分区),之后需要在用户同意升级后重新将其由该可写分区刷新到boot分区中,刷新boot分区的过程需要重启并启动recovery分区存储的系统软件进入recovery模式(又称为升级模式)下执行。手机10的工作模式包括正常模式和recovery模式,recovery模式为与手机10正常开机不同的模式,手机10需要重启进入recovery模式。刷新boot分区后,boot分区中的内容只有在手机10开机的时候才会加载到内存中,因此,手机需要再次重启以重新加载刷新后的boot分区中的内容,至此,更新后的安全策略文件生效。
参考图1B,从用户可见的角度而言,手机10收到更新后的升级包后的升级过程包括:手机显示界面(1),该界面(1)中显示有提示用户升级的提示信息。当手机检测到用户确认升级的操作110时,手机重启以进入recovery模式,手机显示界面(2),该界面(2)显示有进度指示,例如以进度条120的方式呈现升级进度,该过程实质上为刷新boot分区的过程。当完成升级后,手机显示界面(3),该界面(3)显示有升级完成的提示消息,以及提示用户重启,当检测到用户执行重启的操作130时,手机再次重启以加载刷新后的boot分区,并显示如界面(4)所示的开机界面。
可见,采用目前的OTA升级的方式更新安全策略文件时,手机需要两次重启。该方式会导致当前服务中断,且当系统升级补丁包较大时,修复时间较长,甚至存在升级失败时无法正常开机使用的修复风险。
为了解决上述问题,本申请实施例提供一种更新SELinux安全策略的方法,可应用于手机、可穿戴设备、增强现实(Augmented Reality,AR)\虚拟现实(Virtual Reality,VR)设备、平板电脑、个人数字助理(Personal Digital Assistant,PDA)、车载终端等任何具有应用了SELinux技术的操作系统的终端,当然,在以下实施例中,对该终端的具体形式不作任何限制。
以所述终端为手机为例,如图2所示,该终端200包括:通信接口210、存储器220、输入单元230、一个或多个传感器240、处理器250、电源260、显示单元270、音频电路280等部件。本领域技术人员可以理解,图2中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面分别对终端200的各功能组件进行介绍:
其中,通信接口210用于终端200与其他设备通信,该通信接口210具体可实现为射频(radio frequency,RF)电路,用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器250处理;另外,将上行的数据发送给基站。通常,RF电路不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noise amplifier,LNA)、双工器等。此外,RF电路还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(global system ofmobile communication,GSM)、通用分组无线服务(general packet radio service,GPRS)、码分多址(code division multiple access,CDMA)、宽带码分多址(wideband codedivision multiple access,WCDMA)、长期演进(long term evolution,LTE)、电子邮件、短消息服务(short messaging service,SMS)等。
存储器220可用于存储软件程序以及模块,该处理器250通过运行存储在存储器220的软件程序以及模块,从而执行终端200的各种功能应用以及数据处理。存储器220可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(Application,APP)等,比如声音播放功能、图像播放功能等;存储数据区可存储根据终端200的使用所创建的数据(比如音频数据、图像数据、电话本等)等。当然,存储器还可包括第一存储器和第二存储器,其中第一存储器为终端的“外存”例如为图1A所示的EMMC/UFS,第二存储器为存储器的“内存”例如为图1A所示的DDR。此外,存储器220可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元230可用于接收用户输入的数字或字符信息,以及产生与终端200的用户设置以及功能控制有关的键信号输入。具体地,输入单元230可包括触摸屏231以及其他输入设备232。触摸屏231,也称为触控面板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触摸屏231上或在触摸屏231附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触摸屏231可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器250,并能接收处理器250发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触摸屏231。除了触摸屏231,输入单元230还可以包括其他输入设备232。具体地,其他输入设备232可以包括但不限于物理键盘、功能键(比如音量控制按键、电源开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
传感器240包括用于进行生物特征识别的传感器,如指纹识别传感器、人脸识别传感器以及虹膜识别传感器等。以指纹识别传感器为例,指纹识别传感器能够采集用户的指纹信息并将采集的指纹信息上报给处理器250,处理器250根据该指纹信息对用户进行身份识别。
传感器240还包括重力传感器(gravity sensor),可以检测手机在各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等。
终端200还可以包括其它传感器,比如光传感器。具体地,光传感器可包括环境光传感器及接近光传感器。其中,环境光传感器可根据环境光线的明暗来调节显示面板231的亮度;接近光传感器可以检测是否有物体靠近或接触手机,可在终端200移动到耳边时,关闭显示面板231和/或背光。终端200还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
显示单元270可用于显示由用户输入的信息或提供给用户的信息以及终端200的各种菜单。显示单元270可包括显示面板271,可选的,可以采用液晶显示器(LiquidCrystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板271。进一步的,触摸屏231可覆盖显示面板271,当触摸屏231检测到在其上或附近的触摸操作后,传送给处理器250以确定触摸事件的类型,随后处理器250根据触摸事件的类型在显示面板271上提供相应的视觉输出。虽然在图2中,触摸屏231与显示面板271是作为两个独立的部件来实现终端200的输入和输入功能,但是在某些实施例中,可以将触摸屏231与显示面板271集成而实现终端200的输入和输出功能。
音频电路280、扬声器281、麦克风282可提供用户与终端200之间的音频接口。音频电路280可将接收到的音频数据转换后的电信号,传输到扬声器281,由扬声器281转换为声音信号输出;另一方面,麦克风282将收集的声音信号转换为电信号,由音频电路280接收后转换为音频数据,再将音频数据输出至RF电路210以发送给比如另一手机,或者将音频数据输出至存储器220以便进一步处理。
处理器250是终端200的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器220内的软件程序和/或模块,以及调用存储在存储器220内的数据,执行终端200的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器250可包括一个或多个处理单元;可选的,处理器250可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器250中。
终端200还包括给各个部件供电的电源260(比如电池),可选的,电源可以通过电源管理系统与处理器250逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,终端200还可以包括天线、无线保真(Wireless-Fidelity,WiFi)模块、近距离无线通信(Near Field Communication,NFC)模块、蓝牙模块、扬声器、加速计、陀螺仪等。
本申请实施例提供的下述各个方法均可应用在包括图2所示手机在内的各种终端。
参考图3,本申请实施例提供一种更新SELinux安全策略的方法,包括以下步骤:
301、终端接收服务器发送的安全策略文件。
其中,所述安全策略文件为普通文件。可见,与现有技术中,服务器向终端推送包含安全策略文件的镜像文件相比,本申请实施例中服务器仅需要向终端推送安全策略文件。服务器侧不需要生成OTA差分包等升级包。
302、所述终端在保持开机的状态下,所述终端将所述安全策略文件存储至预设存储空间。
其中,所述预设存储空间为终端中的除内存外的存储空间。可选的,所述终端的某个可写分区,例如可以为图1A中的Data分区。
该过程可视为终端下载安全策略文件的过程。
303、终端对存储在所述预设存储空间中的所述安全策略文件进行合法性和完整性校验。
在一种实现方式中,服务器生成数字签名以对安全策略文件进行加密,并向终端推送加密后的安全策略文件。终端校验安全策略文件的数字签名,以实现安全性和/或完整性校验。对文件进行安全性和/或完整性校验的具体实现可参考现有技术,此处不再赘述。
需要说明的是,该步骤303为可选步骤,终端可在执行步骤302之后直接执行下述步骤304。
304、所述终端从所述预设存储空间中读取所述安全策略文件并写入内存。
其中,内存为终端中暂时存储数据的存储空间,即终端中缓存数据的存储空间,比如:图1A中所述的DDR101。还可以为同步动态随机存取存储器(Synchronous DynamicRandom Access Memory,SDRAM)等。
305、所述终端加载所述内存中的所述安全策略文件。
需要说明的是,终端在支持本申请实施例提供的步骤301至步骤305所示的更新SELinux安全策略的方法的同时,仍可兼容现有的采用OTA升级方式更新安全策略文件的方法。实际应用中,本申请实施例提供的方法主要应用在更新SELinux技术制定的安全策略文件的场景下,采用OTA升级方式更新的方法可针对所有类型的更新,是一种通用的更新方法。
本申请实施例提供的上述方法,能够实现对SELinux技术制定的安全策略文件的更新。采用本申请实施例提供的更新方式,终端无需重启,不会中断终端当前正在运行的服务。此外,终端在收到服务器发送的安全策略文件后可自动后台运行本申请实施例提供的更新方法,且由于仅更新安全策略文件,省去了刷新分区的过程,其更新速度快。因此,更新后的安全策略文件能够及时、快速生效。
参考图4A,在一种实现方式中,上述步骤302至步骤305可由终端特定服务或进程交互完成,其中,一个进程或服务用于下载更新后的安全策略文件,另一个进程或服务用于加载该下载完成的安全策略文件。例如:可以由update_sepolicy服务和init进程交互完成。
update_sepolicy服务和init进程交互完成上述过程的具体实现包括以下步骤:
401、update_sepolicy服务将所述安全策略文件存储至终端的预设可写分区的预设目录下。
例如:预设可写分区为data分区,该预设目录可以为data分区下的目录,例如:/data/security/sepolicy.bin。
该步骤401可视为update_sepolicy服务下载安全策略文件的过程。
402、update_sepolicy服务对所述安全策略文件进行安全性和完整性校验。
update_sepolicy服务为本申请实施例新建的服务,用于从远程服务器下载要更新的安全策略文件,并进行完整性校验。
当然,为了支持update_sepolicy服务执行该步骤402,update_sepolicy服务要对存放安全策略文件的目录有读写权限。例如:安全策略文件存放在/data/security/sepolicy.bin目录下,则update_sepolicy服务要对该目录下的文件需要有读写权限。
因此,本申请实施例对update_sepolicy服务的一个前提设置为:在终端出厂时配置的好此服务的对目录/data/security/写权限。
对安全策略文件进行安全性和完整性校验的具体实现可参考现有技术,此处不再赘述。
校验通过后,执行下述步骤403。
403、update_sepolicy服务设置属性值SELinux.reload_policy的取值为1。
其中,SELinux.reload_policy这一属性值用于触发init进程重新加载安全策略文件。该属性值的初始化值为0,update_sepolicy服务对安全校验策略文件校验通过后,会设置该属性值为1。当init进程监听到该属性值被设置为1时,init进程会尝试重新加载安全策略文件,详细请参考步骤404。
可选的,update_sepolicy服务还可设定其他自定义的属性值,当该属性值的取值为预设取值时,同样触发init进程执行下述步骤404。
404、init进程从所述预设可写分区的预设目录中读取所述安全策略文件并写入内存后加载所述安全策略文件。
可选的,在执行该步骤404时,init进程可再次对安全策略文件进行安全性和完整性校验,校验通过后再加载该安全策略文件。
init进程为现有的进程,是系统第一个用户态进程,用于加载后续其他系统进程。其具体实现可参考现有技术,此处不再赘述。
当然,为了支持init进程执行该步骤404,本申请实施例对init进程的改进在于:修改init进程的加载策略文件为本申请实施例指定的用于存放安全策略文件的路径,如/data/security/sepolicy.bin。
可见,在图4A所示的实现方式中,安全策略文件的下载、安全性和完整性校验由update_sepolicy服务执行。安全策略文件的加载由init进程完成,并且init进程会对文件进行二次校验。
考虑到终端重启后,启动时按照现有的流程会默认加载只读分区中镜像文件(例如boot分区)中的安全策略文件,则当手机再次开机时,内核启动init.rc脚本后,要在post-fs-dat阶段设置属性值SELinux.reload_policy属性值为1,以便触发init进程重新读取位于预设可写分区的预设目录下的安全策略文件来加载安全策略文件,从而覆盖从boot分区中读取的安全策略文件。
参考图4B,在另一种实现方式中,上述步骤302至步骤305可由终端的特定服务或进程完成,例如:update_sepolicy服务。
update_sepolicy服务完成上述步骤302至步骤305所示过程的具体实现包括以下步骤:
410、update_sepolicy服务将所述安全策略文件存储至终端的预设可写分区的预设目录下。
420、update_sepolicy服务对所述安全策略文件进行安全性和完整性校验。
该步骤410和步骤420的具体实现可参考前述步骤401和步骤402,此处不再赘述。
校验通过后,update_sepolicy服务执行下述步骤430。
430、校验通过后,update_sepolicy服务从所述预设可写分区的预设目录中读取所述安全策略文件并写入内存后加载所述安全策略文件。
在图4B所示的实现方式中,安全策略文件的下载、安全性和完整性校验以及对下载完成的安全策略文件的加载均由update_sepolicy服务执行,因此不需要设置SELinux.reload_policy的属性值。
考虑到终端重启时会加载只读分区中的镜像文件,该镜像文件中同样包含安全策略文件,为了执行图4B所示的方法,修改开机时的加载安全策略文件的策略,使得update_sepolicy服务直接读取位于预设可写分区中的安全策略文件并加载。
此外,在一种实现方式中,本申请实施例提供的上述方法在用户无感知的情况下自动后台运行。在另一种实现方式中,参考图5,如界面(1)所示,用户在使用“微信”应用聊天的过程中,接收到服务器发送的更新后的安全策略文件后,在界面501上悬浮显示提示框502,该界面502显示有提示用户手机当前存在可更新的安全性文件的提示消息。当手机检测到用户确定更新的操作503时,手机后台执行本申请实施例提供的方法更新安全性策略文件,手机显示界面(2),在该界面(2)的右上角以缩小的进度条504显示该安全文件的更新进度。当更新完成后,如界面(3)所示,在微信界面501弹出提示框505以提示用户已更新完成安全策略文件。当然,还可采用响铃、振动、语音等方式提示用户已完成更新。当检测到用户执行的确定操作506时,手机又仅显示图5的(4)所示微信界面501。
可以理解的是,本申请所述的终端为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本申请实施例中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对终端进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
参考图6,本申请实施例公开一种终端600,包括:接收单元601、处理单元602、存储单元603,该存储单元603具体又包括第一存储单元6031和第二存储单元6032。
其中,所述接收单元601用于接收服务器发送的安全策略文件。处理单元602,用于在保持开机的状态下将所述安全策略文件写入第一存储单元6031。所述处理单元602,还用于从所述第一存储单元6031中读取所述安全策略文件并写入第二存储单元6032。所述处理单元602,还用于加载所述第二存储单元6032中的所述安全策略文件。
可选的,所述处理单元602,还用于对存储在所述第一存储单元6031中的所述安全策略文件进行安全性和/或完整性校验。
可选的,所述处理单元602,还用于通过第一服务或进程将所述安全策略文件存储至所述第一存储单元6031;通过所述第一服务或进程将预设属性值的取值由第一取值修改为第二取值;当检测到所述预设属性值的取值由第一取值变化为所述第二取值时,通过第二服务或进程从所述第一存储单元6031中读取所述安全策略文件并写入所述第二存储单元6032;以及通过所述第二服务或进程加载所述第二存储单元6032中的所述安全策略文件。
可选的,当所述终端下电关机时,所述预设属性值的取值由第二取值变化为第一取值,则当所述终端重启时,所述处理单元602,还用于:在内核启动阶段,将所述预设属性值的取值由第一取值修改为第二取值以便于所述第二服务或进程检测到所述预设属性值的取值由第一取值被修改为第二取值后从所述第一存储单元6031中读取所述安全策略文件并写入所述第二存储单元6032。
可选的,所述第一服务或进程为update_sepolicy服务,所述第二服务或进程为init进程,所述预设属性值为SELinux.reload_policy属性值。
可选的,所述处理单元602,还用于:通过预设服务或进程将所述安全策略文件存储至所述第一存储单元6031;从所述第一存储单元6031中读取所述安全策略文件并写入所述第二存储单元6032以及加载所述第二存储单元6032中的所述安全策略文件。
可选的,所述预设服务或进程为init进程。所述第一存储单元6031为所述终端的预设可写分区。
其中,所述接收单元601可由图2所示终端200的通信接口210实现。所述处理单元602可由图2所示终端200的处理器250实现。所述存储单元603可由图2所示终端200的存储器220实现。
本申请实施例提供的上述终端,能够实现对SELinux技术制定的安全策略文件的更新。采用本申请实施例提供的更新方式,终端无需重启,不会中断终端当前正在运行的服务。此外,终端在收到服务器发送的安全策略文件后可自动后台运行本申请实施例提供的更新方法,且由于仅更新安全策略文件,省去了刷新分区的过程,其更新速度快。因此,更新后的安全策略文件能够及时、快速生效。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端上运行时,使得所述终端执行上述各方法实施例所述的方法。
本申请实施例还提供一种包含指令的计算机程序产品,当所述计算机程序产品在终端上运行时,使得所述终端执行上述各方法实施例所述的方法。
结合本申请公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(Random Access Memory,RAM)、闪存、只读存储器(ReadOnly Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable ROM,EPROM)、电可擦可编程只读存储器(Electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。
Claims (10)
1.一种更新SELinux安全策略的方法,其特征在于,应用于终端,包括:
所述终端接收服务器发送的安全策略文件;
在接收到所述安全策略文件后,所述终端在保持开机的状态下执行以下各个步骤:
所述终端将所述安全策略文件存储至预设存储空间;
所述终端将预设属性值的取值由第一取值修改为第二取值;
当检测到所述预设属性值的取值由第一取值变化为所述第二取值时,所述终端从所述预设存储空间中读取所述安全策略文件并写入内存;
所述终端加载所述内存中的所述安全策略文件。
2.根据权利要求1所述的方法,其特征在于,在所述终端从所述预设存储空间中读取所述安全策略文件并写入内存之前,所述方法还包括:
所述终端对存储在所述预设存储空间中的所述安全策略文件进行安全性和/或完整性校验。
3.根据权利要求1或2所述的方法,其特征在于,所述终端将所述安全策略文件存储至预设存储空间,包括:所述终端通过第一服务或进程将所述安全策略文件存储至预设存储空间;
所述终端将预设属性值的取值由第一取值修改为第二取值,包括:所述终端通过所述第一服务或进程将预设属性值的取值由第一取值修改为第二取值;
当检测到所述预设属性值的取值由第一取值变化为所述第二取值时,所述终端从所述预设存储空间中读取所述安全策略文件并写入内存,包括:当检测到所述预设属性值的取值由第一取值变化为所述第二取值时,所述终端通过第二服务或进程从所述预设存储空间中读取所述安全策略文件并写入内存;
所述终端加载所述内存中的所述安全策略文件,包括:所述终端通过所述第二服务或进程加载所述内存中的所述安全策略文件。
4.根据权利要求3所述的方法,其特征在于,当所述终端下电关机时,所述预设属性值的取值由第二取值变化为第一取值,则当所述终端重启时,所述方法还包括:
在内核启动阶段,所述终端将所述预设属性值的取值由第一取值修改为第二取值以便于所述第二服务或进程检测到所述预设属性值的取值由第一取值被修改为第二取值后从所述预设存储空间中读取所述安全策略文件并写入内存。
5.根据权利要求3或4所述的方法,其特征在于,所述第一服务或进程为update_sepolicy服务,所述第二服务或进程为init进程,所述预设属性值为SELinux.reload_policy属性值。
6.根据权利要求1或2所述的方法,其特征在于,所述终端将所述安全策略文件存储至预设存储空间;从所述预设存储空间中读取所述安全策略文件并写入内存;以及加载所述内存中的所述安全策略文件,包括:
所述终端通过预设服务或进程将所述安全策略文件存储至预设存储空间;从所述预设存储空间中读取所述安全策略文件并写入内存以及加载所述内存中的所述安全策略文件。
7.根据权利要求6所述的方法,其特征在于,所述预设服务或进程为init进程。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述预设存储空间为所述终端的预设可写分区。
9.一种电子设备,其特征在于,所述电子设备包括存储器和一个或多个处理器;所述存储器和所述处理器耦合;所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器执行所述计算机指令时,使所述一个或多个所述处理器执行如权利要求1-8任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,其特征在于,当所述指令在终端上运行时,使得所述终端执行如权利要求1-8中任一项所述的更新SELinux安全策略的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110882773.7A CN113791813A (zh) | 2017-10-30 | 2017-10-30 | 更新SELinux安全策略的方法及终端 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110882773.7A CN113791813A (zh) | 2017-10-30 | 2017-10-30 | 更新SELinux安全策略的方法及终端 |
CN201780066960.XA CN109964227B (zh) | 2017-10-30 | 2017-10-30 | 更新SELinux安全策略的方法及终端 |
PCT/CN2017/108436 WO2019084737A1 (zh) | 2017-10-30 | 2017-10-30 | 更新SELinux安全策略的方法及终端 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780066960.XA Division CN109964227B (zh) | 2017-10-30 | 2017-10-30 | 更新SELinux安全策略的方法及终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113791813A true CN113791813A (zh) | 2021-12-14 |
Family
ID=66331267
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780066960.XA Active CN109964227B (zh) | 2017-10-30 | 2017-10-30 | 更新SELinux安全策略的方法及终端 |
CN202110882773.7A Pending CN113791813A (zh) | 2017-10-30 | 2017-10-30 | 更新SELinux安全策略的方法及终端 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780066960.XA Active CN109964227B (zh) | 2017-10-30 | 2017-10-30 | 更新SELinux安全策略的方法及终端 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11222118B2 (zh) |
CN (2) | CN109964227B (zh) |
WO (1) | WO2019084737A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11188640B1 (en) * | 2018-08-23 | 2021-11-30 | Advanced Micro Devices, Inc. | Platform firmware isolation |
US11012853B2 (en) * | 2018-11-20 | 2021-05-18 | Parallel Wireless, Inc. | Secure software update in a wireless mesh radio network using peer-to-peer file sharing |
US11411758B2 (en) * | 2020-10-12 | 2022-08-09 | Vmware, Inc. | Generating contextual compliance policies |
TWI756867B (zh) | 2020-10-16 | 2022-03-01 | 財團法人工業技術研究院 | 在作業系統標記物件標籤及產生安全政策的方法及系統 |
CN112182590A (zh) * | 2020-11-16 | 2021-01-05 | 中国银联股份有限公司 | 一种Web应用的漏洞更新方法及装置 |
CN112861118B (zh) * | 2021-04-26 | 2021-07-06 | 湖北亿咖通科技有限公司 | 双系统的容器间安全策略隔离方法、电子设备及存储介质 |
CN113672297A (zh) * | 2021-07-23 | 2021-11-19 | 荣耀终端有限公司 | 一种recovery模式升级过程中的重启方法及终端 |
CN114780168B (zh) * | 2022-03-30 | 2023-04-28 | 全球能源互联网研究院有限公司南京分公司 | 智能终端容器安全策略动态变更的方法、装置及电子设备 |
CN114726612B (zh) * | 2022-04-01 | 2024-03-26 | 北京指掌易科技有限公司 | 一种工作域管理方法、装置、介质及电子设备 |
CN117436079B (zh) * | 2023-12-20 | 2024-04-05 | 麒麟软件有限公司 | 一种Linux系统的完整性保护方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104346572A (zh) * | 2013-07-25 | 2015-02-11 | 中国科学院信息工程研究所 | 一种通用的外置式智能终端安全运行环境构建方法 |
CN105491026A (zh) * | 2015-11-24 | 2016-04-13 | 无锡江南计算技术研究所 | 一种安全策略的远程加载方法 |
CN106453413A (zh) * | 2016-11-29 | 2017-02-22 | 北京元心科技有限公司 | 在多系统中应用SELinux安全策略的方法及装置 |
CN106775903A (zh) * | 2017-02-24 | 2017-05-31 | 北京小米移动软件有限公司 | 安全策略文件更新方法及装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090065183A (ko) * | 2007-12-17 | 2009-06-22 | 한국전자통신연구원 | 셀트 문법 형식의 셀이눅스 보안정책 자동 생성 장치 및방법 |
US8352933B2 (en) * | 2009-03-26 | 2013-01-08 | International Business Machines Corporation | Concurrent patching of operating systems |
US20120216281A1 (en) | 2011-02-22 | 2012-08-23 | PCTEL Secure LLC | Systems and Methods for Providing a Computing Device Having a Secure Operating System Kernel |
US8595810B1 (en) * | 2013-01-13 | 2013-11-26 | Mourad Ben Ayed | Method for automatically updating application access security |
US9483341B2 (en) | 2014-01-02 | 2016-11-01 | Red Hat, Inc. | Applying security label on kernel core crash file |
CN104112089B (zh) * | 2014-07-17 | 2017-02-01 | 中国人民解放军国防科学技术大学 | 基于多策略融合的强制访问控制方法 |
CN107533608B (zh) * | 2014-12-26 | 2021-08-24 | 迈克菲有限责任公司 | 可信更新 |
CN104572212A (zh) | 2015-01-26 | 2015-04-29 | 易联众信息技术股份有限公司 | 一种终端更新系统及其更新方法 |
WO2016192774A1 (en) | 2015-06-02 | 2016-12-08 | Huawei Technologies Co., Ltd. | Electronic device and method in an electronic device |
US10187773B1 (en) * | 2015-07-25 | 2019-01-22 | Gary M. Zalewski | Wireless coded communication (WCC) devices with power harvesting power sources for monitoring state data of objects |
US10505982B2 (en) * | 2015-10-23 | 2019-12-10 | Oracle International Corporation | Managing security agents in a distributed environment |
CN106650480B (zh) | 2015-10-29 | 2020-01-03 | 杭州华为数字技术有限公司 | 文件访问隔离方法和装置 |
CN106878239A (zh) | 2015-12-14 | 2017-06-20 | 中国移动通信集团公司 | 一种安全策略更新方法及装置 |
CN106919411A (zh) * | 2015-12-25 | 2017-07-04 | 英业达科技有限公司 | 适用于Linux的操作系统更新系统及其方法 |
CN105718268A (zh) | 2016-01-22 | 2016-06-29 | 青岛海信移动通信技术股份有限公司 | 一种ota多包升级的校验方法及装置 |
US10318209B2 (en) * | 2017-01-30 | 2019-06-11 | Forcepoint Llc | Secure file transfer to process |
-
2017
- 2017-10-30 WO PCT/CN2017/108436 patent/WO2019084737A1/zh active Application Filing
- 2017-10-30 CN CN201780066960.XA patent/CN109964227B/zh active Active
- 2017-10-30 CN CN202110882773.7A patent/CN113791813A/zh active Pending
- 2017-10-30 US US16/758,619 patent/US11222118B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104346572A (zh) * | 2013-07-25 | 2015-02-11 | 中国科学院信息工程研究所 | 一种通用的外置式智能终端安全运行环境构建方法 |
CN105491026A (zh) * | 2015-11-24 | 2016-04-13 | 无锡江南计算技术研究所 | 一种安全策略的远程加载方法 |
CN106453413A (zh) * | 2016-11-29 | 2017-02-22 | 北京元心科技有限公司 | 在多系统中应用SELinux安全策略的方法及装置 |
CN106775903A (zh) * | 2017-02-24 | 2017-05-31 | 北京小米移动软件有限公司 | 安全策略文件更新方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US11222118B2 (en) | 2022-01-11 |
WO2019084737A1 (zh) | 2019-05-09 |
CN109964227A (zh) | 2019-07-02 |
CN109964227B (zh) | 2021-08-13 |
US20200380133A1 (en) | 2020-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109964227B (zh) | 更新SELinux安全策略的方法及终端 | |
KR102400384B1 (ko) | 외장 메모리를 구비하는 전자장치 및 그 동작 방법 | |
EP3479243B1 (en) | Fault-tolerant variable region repaving during firmware over the air update | |
US11256496B2 (en) | Apparatus and method for managing application | |
CN110457894B (zh) | root权限的分配方法、装置、存储介质及终端设备 | |
US20130031631A1 (en) | Detection of unauthorized device access or modifications | |
KR20140136350A (ko) | 전자장치의 사용 방법 및 장치 | |
CN109416657B (zh) | 在空中固件更新期间的容错变量区域重新铺设 | |
CN109657448B (zh) | 一种获取Root权限的方法、装置、电子设备及存储介质 | |
US11176228B2 (en) | Application interface display method, apparatus, and terminal, and storage medium | |
EP3539046B1 (en) | Electronic device and method for managing data in electronic device | |
US20210325948A1 (en) | Device and method for restoring application removed by factory data reset function | |
EP3021250B1 (en) | Electronic device and method for suggesting response manual in occurrence of denial | |
US20170078269A1 (en) | Method for managing application and electronic device supporting the same | |
KR20190109979A (ko) | 전자 장치 및 전자 장치의 업데이트 제어 방법 | |
US11604656B2 (en) | Method and apparatus for managing application | |
US11947709B2 (en) | Electronic device for controlling access to device resource and operation method thereof | |
CN107766089B (zh) | 一种系统启动的方法和装置 | |
US20240015156A1 (en) | Electronic device for controlling access to device resource and operation method thereof | |
US20210390176A1 (en) | Electronic device and control method therefor | |
CN117707629A (zh) | 系统启动方法、可读存储介质和电子设备 | |
CN116594698A (zh) | 一种系统控制方法、装置和可读存储介质 | |
CN113961246A (zh) | 微控制芯片上的权限配置方法、装置及存储介质 | |
KR20200101049A (ko) | 어플리케이션 데이터를 관리하는 전자 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |