精华内容
下载资源
问答
  • selinux文件解析

    千次阅读 2016-09-19 15:26:10
    1.涉及文件 device/mediatek/common/sepolicy android/external/sepolicy2.特性(1)file_contexts 给所有的自定义变量(包括文件节点、设备节点、可执行程序)赋了具体的值 (2)device.te 声明了file_contexts...

    1.涉及文件

    
        device/mediatek/common/sepolicy
        android/external/sepolicy

    2.特性

    (1)file_contexts 给所有的自定义变量(包括文件节点、设备节点、可执行程序)赋了具体的值
    (2)device.te 声明了file_contexts中为设备节点的变量
    (3)file.te 声明了file_contexts中为文件类型的变量
    (4)很多.te文件都是以进程名来命名的


    3.demo


    3.1 添加一个设备节点的及其读写权限控制

    // 1. 自定义 GT9762AF_device为一个device节点    
        device.te           type GT9762AF_device, dev_type; 
    
    
    ----------
    
    // 2. 给自定义 GT9762AF_device 变量附上具体的设备节点值
        file_contexts           /dev/GT9762AF(/.*)? u:object_r: GT9762AF_device :s0
    
    
    ----------
    
    
    // 3.给需要操作这个节点的进程赋上控制权限
        factory.te          allow factory GT9762AF_device:chr_file { read write ioctl open };
        mediaserver.te      allow mediaserver GT9762AF_device:chr_file { read write ioctl open };
        meta_tst.te     allow meta_tst GT9762AF_device:chr_file { read write ioctl open };

    3.2 添加一个可执行程序,并为这个可执行程序添加相关控制权限

    (1)在file_contexts中声明这个可执行程序变量

    file_contexts   system/bin/st480 u:object_r:st480_exec:s0
    
    

    (2)新添加一个可执行程序的te文件(st480.te),并赋值一些节点的操作权限

    这里写图片描述


    3.3 添加对某个文件节点的控制权限

    这里写图片描述

    展开全文
  • /etc/sysconfig/selinux文件内容 # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforc

    第十单元-selinux对文件的控制

    一、修改安全上下文

    /etc/sysconfig/selinux文件内容

    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #     enforcing - SELinux security policy is enforced.
    #     permissive - SELinux prints warnings instead of enforcing.
    #     disabled - No SELinux policy is loaded.
    SELINUX=enforcing  ##selinux状态
    # SELINUXTYPE= can take one of these two values:
    #     targeted - Targeted processes are protected,
    #     minimum - Modification of targeted policy. Only selected processes are protected.
    #     mls - Multi Level Security protection.
    SELINUXTYPE=targeted
                                      
    查看selinux状态命令:
    gentenforce
    三种状态:
    disabled 关闭状态
    Enforcing 强制状态
    Permissive 警告状态

    切换状态命令:
    setenforce 1|0 【1为强制,0为警告】


    1.临时修改 chcon -t 安全上下文类型 被修改文件

    一次性定制安全上下文,执行 restorecon 刷新后还原


    [root@localhost westos]# setenforce 0  ##设置为警告模式
    [root@localhost westos]# getenforce
    Permissive
    [root@localhost westos]# mv /home/westos/westos /var/ftp/pub  ##将westos移入到指定目录下
    [root@localhost westos]# ls -Z /var/ftp/pub  ##查看/var/ftp/pub中文件的安全上下文
    -rw-rw-r--. ftp    ftp  system_u:object_r:public_content_t:s0 group
    -rw-r--r--. westos ftp  system_u:object_r:public_content_t:s0 profile
    drwxrwxr-x. ftp    ftp  system_u:object_r:public_content_t:s0 test
    -rw-r--r--. root   root unconfined_u:object_r:mnt_t:s0   westos
    [root@localhost westos]# ps auxZ | grep vsftpd  ##检测几个文件区别
    system_u:system_r:ftpd_t:s0-s0:c0.c1023 root 1308 0.0  0.0 52760  568 ?        Ss   05:06   0:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
    unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 root 2369 0.0  0.0 112644 936 pts/0 R+ 05:14   0:00 grep --color=auto vsftpd

    示图:检测区别


    示图:警告模式下可以观察到转入的文件westos


    示图:强制模式下可以看不到到转入的文件westos

    [root@localhost westos]# setenforce 1  ##转为强制模式
    [root@localhost westos]# getenforce
    Enforcing
    [root@localhost westos]# chcon -t public_content_t /var/ftp/pub/westos  ##将/var/ftp/pub下的westos文件的安全上下文修改为这个目录下可被识别认可的安全上下文
    [root@localhost westos]# ps auxZ | grep vsftpd  
    system_u:system_r:ftpd_t:s0-s0:c0.c1023 root 1308 0.0  0.0 52760  568 ?        Ss   05:06   0:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
    system_u:system_r:ftpd_t:s0-s0:c0.c1023 nobody 2494 0.0  0.0 54856 1436 ?      Ss   05:19   0:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
    system_u:system_r:ftpd_t:s0-s0:c0.c1023 ftp 2496 0.0  0.0 56964  1452 ?        S    05:19   0:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
    unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 root 2555 0.0  0.0 112644 936 pts/0 R+ 05:20   0:00 grep --color=auto vsftpd
    [root@localhost westos]# ls -Z /var/ftp/pub  ##可以观察到三个文件的安全上下文全部一样
    -rw-rw-r--. ftp    ftp  system_u:object_r:public_content_t:s0 group
    -rw-r--r--. westos ftp  system_u:object_r:public_content_t:s0 profile
    drwxrwxr-x. ftp    ftp  system_u:object_r:public_content_t:s0 test
    -rw-r--r--. root   root unconfined_u:object_r:public_content_t:s0 westos

    示图:测试


    2.永久修改文件的上下文 semanage fcontext
    semanage 命令 -l ##查看

    • restorecon 是 policycoreutil 软件包的一部分
    • semanage 是 policycoreutil-python 软件包的一部分

    [root@localhost yum.repos.d]# ls -lZ /var/ftp  ##安全上下文为public_content_t
    drwxr-xr-x. root root system_u:object_r:public_content_t:s0 pub
    [root@localhost yum.repos.d]# ls -lZ /westos  ##安全上下文为default_t
    -rw-r--r--. root root system_u:object_r:default_t:s0   westosfile1
    -rw-r--r--. root root system_u:object_r:default_t:s0   westosfile2
    -rw-r--r--. root root system_u:object_r:default_t:s0   westosfile3
    -rw-r--r--. root root system_u:object_r:default_t:s0   westosfile4
    -rw-r--r--. root root system_u:object_r:default_t:s0   westosfile5
    [root@localhost yum.repos.d]# semanage fcontext -l | grep westos  ##特定搜索查看文件或目录全上下文,westos中没有符合要求的安全上下文
    [root@localhost yum.repos.d]# semanage fcontext -l | grep var/ftp  ##在var/ftp中符合要求的安全上下文的文件
    /var/ftp(/.*)?                                     all files          system_u:object_r:public_content_t:s0
    /var/ftp/bin(/.*)?                                 all files          system_u:object_r:bin_t:s0
    /var/ftp/etc(/.*)?                                 all files          system_u:object_r:etc_t:s0
    /var/ftp/lib(/.*)?                                 all files          system_u:object_r:lib_t:s0
    /var/ftp/lib/ld[^/]*\.so(\.[^/]*)*                 regular file       system_u:object_r:ld_so_t:s0

    示图:

    [root@localhost yum.repos.d]# semanage fcontext -a -t public_content_t '/westos(/.*)?'  ##-a添加,-t类型,将/westos中的所有文件的安全上下文修改为public_content_t
    [root@localhost yum.repos.d]# semanage fcontext -l | grep westos  ##修改完毕后并没有立马更改
    /westos(/.*)?                                      all files          system_u:object_r:public_content_t:s0
    [root@localhost yum.repos.d]# semanage fcontext -l | grep var/ftp
    [root@localhost yum.repos.d]# ls -lZ /westos
    -rw-r--r--. root root system_u:object_r:default_t:s0   westosfile1
    -rw-r--r--. root root system_u:object_r:default_t:s0   westosfile2
    -rw-r--r--. root root system_u:object_r:default_t:s0   westosfile3
    -rw-r--r--. root root system_u:object_r:default_t:s0   westosfile4
    -rw-r--r--. root root system_u:object_r:default_t:s0   westosfile5
    [root@localhost yum.repos.d]# restorecon -RvvF /westos  ##重新加载/westos
    restorecon reset /westos context system_u:object_r:default_t:s0->system_u:object_r:public_content_t:s0
    restorecon reset /westos/westosfile1 context system_u:object_r:default_t:s0->system_u:object_r:public_content_t:s0
    restorecon reset /westos/westosfile2 context system_u:object_r:default_t:s0->system_u:object_r:public_content_t:s0
    restorecon reset /westos/westosfile3 context system_u:object_r:default_t:s0->system_u:object_r:public_content_t:s0
    restorecon reset /westos/westosfile4 context system_u:object_r:default_t:s0->system_u:object_r:public_content_t:s0
    restorecon reset /westos/westosfile5 context system_u:object_r:default_t:s0->system_uobject_r:public_content_t:s0
    [root@localhost yum.repos.d]#
    [root@localhost ~]# semanage fcontext -l | grep westos  ##可以查看到目录下所有的文件的安全上下文全部更改成功,all files现在存在的和即将建立的全部都会为被更改后的安全上下文
    /westos(/.*)?                                      all files          system_u:object_r:public_content_t:s0

    示图:



    实验效果:


    设置了/westos目录下所有的和即将所有的文件全部都会是设定的安全上下文pubic_content_t,所以在执行restorecon -RvvF后,会自定将westos中的所有文件全部刷成所设置的

    示图:


    二、管理 SELinux 布尔值

    • SELinux 布尔值是更改 SELinux 策略行为的开关。SELinux 布尔值是可以启用或禁用的规则。安全管理员可以使用 SELinux 布尔值来调整策略 , 以有选择地进行调整
    • 许多软件包都具有 man page *_selinux(8), 其中详细说明了所使用的一些布尔值 ; man -k ‘_selinux’ 可以轻松地找到这些手册
    • getsebool 用于显示布尔值 , setsebool 用于修改布尔值
    • setsebool -P 修改 SELinux 策略 , 以永久保留修改。semanage boolean -l 将显示布尔值是否永久
    [root@localhost ~]# getenforce  ##强制模式下
    Enforcing
    [root@localhost ~]# ll /home  
    total 0
    dr-x------. 4 student student  84 Jul 10  2014 student
    dr-x------. 4 westos  westos  101 Apr 23 01:41 westos
    [root@localhost ~]# chmod u+w /home/student  ##家用户的家目录拥有写权限
    效果:
    [root@foundation33 ~]# lftp 172.25.254.133 -u student
    Password:
    lftp student@172.25.254.133:~> ls      
    ls: Login failed: 530 Login incorrect.  ##家用户的上传受限          
    lftp student@172.25.254.133:~> quit

    [root@localhost ~]# setenforce 0  ##警告模式下
    [root@localhost ~]# getenforce
    Permissive
    效果:
    [root@foundation33 ~]# lftp 172.25.254.133 -u student
    Password:
    lftp student@172.25.254.133:~> ls      
    lftp student@172.25.254.133:~> put /etc/passwd
    2367 bytes transferred       ##上传成功                                    
    lftp student@172.25.254.133:~> ls
    -rw-r--r--    1 1000     1000         2367 Apr 29 02:07 passwd
    lftp student@172.25.254.133:~>  rm passwd
    rm ok, `passwd` removed
    lftp student@172.25.254.133:~> quit
    [root@foundation33 ~]#

    [root@localhost ~]# getsebool -a | grep ftp   ##查看所有文件的安全服务
    ftp_home_dir --> off  ##家用户的指定家目录服务关闭
    ftpd_anon_write --> off
    ftpd_connect_all_unreserved --> off
    ftpd_connect_db --> off
    ftpd_full_access --> off
    ftpd_use_cifs --> off
    ftpd_use_fusefs --> off
    ftpd_use_nfs --> off
    ftpd_use_passive_mode --> off
    httpd_can_connect_ftp --> off
    httpd_enable_ftp_server --> off
    sftpd_anon_write --> off
    sftpd_enable_homedirs --> off
    sftpd_full_access --> off
    sftpd_write_ssh_home --> off
    tftp_anon_write --> off
    tftp_home_dir --> off
    [root@localhost ~]# setsebool -P ftp_home_dir 1  ##-P永久设置,on关闭
    [root@localhost ~]# getsebool -a | grep ftp
    ftp_home_dir --> on
    ftpd_anon_write --> off
    ftpd_connect_all_unreserved --> off
    ftpd_connect_db --> off
    ftpd_full_access --> off
    ftpd_use_cifs --> off
    ftpd_use_fusefs --> off
    ftpd_use_nfs --> off
    ftpd_use_passive_mode --> off
    httpd_can_connect_ftp --> off
    httpd_enable_ftp_server --> off
    sftpd_anon_write --> off
    sftpd_enable_homedirs --> off
    sftpd_full_access --> off
    sftpd_write_ssh_home --> off
    tftp_anon_write --> off
    tftp_home_dir --> off
    [root@localhost ~]# getenforce
    Permissive
    [root@localhost ~]# setenforce 0
    [root@localhost ~]# getenforce
    Permissive
    [root@localhost ~]# setenforce 1
    [root@localhost ~]# getenforce
    Enforcing

    效果:

    [root@foundation33 ~]# lftp 172.25.254.133 -u student
    Password:
    lftp student@172.25.254.133:~> ls      
    lftp student@172.25.254.133:~> put /etc/passwd
    2367 bytes transferred       ##上传成功                                    
    lftp student@172.25.254.133:~> ls
    -rw-r--r--    1 1000     1000         2367 Apr 29 02:07 passwd
    lftp student@172.25.254.133:~>  rm passwd
    rm ok, `passwd` removed
    lftp student@172.25.254.133:~> quit
    [root@foundation33 ~]#

    三、监控 SELinux 冲突

    • 必须安装 setroubleshoot-server 软件包 , 才能将SELinux 消息发送至 /var/log/messages
    • etroubleshoot-server 侦听/var/log/audit/audit.log 中的审核信息并将简短摘要发送至 /var/log/messages
    • 摘要包括 SELinux 冲突的唯一标识符 ( UUIDs ),可用于收集更多信息。

    Sealert -l UUID 用于生成特定事件的报告。

    Sealert -a  /var/log/audit/audit.log 用于在该文件中生成所有事件的报告效果:

    展开全文
  • 基于android6.0版本的SELinux文件访问安全策略 在android6.0以后的版本,google采用了SELinux的文件访问安全策略,想比较以前,绝对提高了文件的安全,不像以前那样, 对文件访问可以是无条件的。本篇文章就分享下...

    原文地址:https://www.zybuluo.com/guhuizaifeiyang/note/772144

    基于android6.0版本的SELinux文件访问安全策略

    在android6.0以后的版本,google采用了SELinux的文件访问安全策略,想比较以前,绝对提高了文件的安全,不像以前那样, 
    对文件访问可以是无条件的。本篇文章就分享下常用的一些安全策略。

    1.linux传统设备文件访问控制方法

    传统的 Linux设备文件访问控制机制通过设置用户权限来实现.

    • 超级用户(root),具有最高的系统权限,UID为0。
    • 系统伪用户,Linux操作系统出于系统管理的需要,但又不愿赋予超级用户的权限,需要将某些关键系统应用文件所有权赋予某些系统伪用户,其UID范围为1~ 499,系统的伪用户不能登录系统。
    • 普通用户,只具备有限的访问权限,UID 为 500 ~ 6000,可以登录系统获得shell。在Linux权限模型下,每个文件属于一个用户和一个组,由UID与GID标识其所有权。针对于文件的具体访问权限定义为可读(r)、可写(w)与可执行(x),并由三组读、写、执行组成的权限三元组来描述相关权限。 
      第一组定义文件所有者(用户)的权限,第二组定义同组用户(GID相同但UID不同的用户)的权限,第三组定义其他用户的权限(GID与UID都不同的用户)。

    2.SElinux采用主体对客体的强制访问控制

    SELinux 拥有三个基本的操作模式

    • Disabled:禁用SELinux策略
    • Permissive:在Permissive模式下,SELinux会被启用但不会实施安全性策略,而只会发出警告及记录行动。Permissive模式在排除SELinux的问题时很有用.
    • Enforcing:这个缺省模式会在系统上启用并实施SELinux的安全性策略,拒绝访问及记录行动. 
      adb shell getenforce 查看selinuc模式 
      adb shell setenforce 0 命令进入permissive模式 
      adb shell setenforce 1 命令进入Enforcing模式

    3.类型强制(TE)访问控制

    在SELinux中,所有访问都必须明确授权,SELinux默认不允许任何访问,不管Linux用户/组ID是什么。这就意味着在SELinux中,没有默认的超级用户了,与标准Linux中的root不一样,通过指定主体类型(即域)和客体类型使用allow规则授予访问权限,allow规则由四部分组成:
    
    • 源类型(Source type(s) ) 通常是尝试访问的进程的域类型
    • 目标类型(Target type(s) ) 被进程访问的客体的类型
    • 客体类别(Object class(es)) 指定允许访问的客体的类型
    • 许可(Permission(s))象征目标类型允许源类型访问客体类型的访问种类

    举例如下: 
    此处输入图片的描述

    这个规则解释如下: 
    拥有域类型user_t的进程可以读/执行或获取具有bin_t类型的文件客体的属性.

    4.如何排除SELinux安全策略引起的问题

    a. 首先排除DAC权限的问题,使用“ls –l”检查相关文件的属主和权限。如果DAC的权限许可,则就是SELinux的策略显式地拒绝了当前操作的执行。 
    b. 通过“setenforce 0”命令进入permissive模式(getenforce命令查看模式)。此操作可暂时关闭selinux强制访问控制,可直接进行调试,若此时操作还是不允许,则与selinux无关。 
    c. 通过“adb shell dmesg | grep avc > avc_log.txt”查看 AVC log,在android6.0 版本中,这个用的最多。从分析失败操作相应的AVC Denied Msg入手区分问题的根源,以下为一条拒绝信息: 
    d. 使用 external/selinux/prebuilts/bin/audit2allow tool 直接生成policy.

     
    1. audit2allow -i avc_log.txt

    即可自动输出生成的policy

    此处输入图片的描述 
    可在/device/qcom/sepolicy/common/untrusted_app.te文件中增加如下语句解决此问题: 
    allow untrusted_app sysfs_irdev : file { write };


    SELinux app权限配置

    1.SEAndroid app分类

    SELinux(或SEAndroid)将app划分为主要三种类型(根据user不同,也有其他的domain类型):

    1)untrusted_app 第三方app,没有Android平台签名,没有system权限 
    2)platform_app 有android平台签名,没有system权限

    3)system_app 有android平台签名和system权限

    从上面划分,权限等级,理论上:untrusted_app < platform_app < system_app

    user=system seinfo=platform,domain才是system_app

    user=_app,可以是untrusted_app或platform_app,如果seinfo=platform,则是platform_app。

    • Android.mk 有定义LOCAL_CERTIFICATE := platform,则为platform_app
    • 且AndroidManifest.xml 有定义android:sharedUserId="android.uid.system",则为system_app

    app对应的te文件

    • system_app -> external\sepolicy\system_app.te
    • untrusted_app -> external\sepolicy\untrusted_app.te
    • platform_app -> external\sepolicy\platform_app.te
    展开全文
  • 在android6.0以后的版本,google采用了SELinux文件访问安全策略,想比较以前,绝对提高了文件的安全,不像以前那样, 对文件访问可以是无条件的。本篇文章就分享下常用的一些安全策略。 1. linux传统 设备文件...
    在android6.0以后的版本,google采用了SELinux的文件访问安全策略,想比较以前,绝对提高了文件的安全,不像以前那样,
    对文件访问可以是无条件的。本篇文章就分享下常用的一些安全策略。
    1. linux传统 设备文件访问控制方法
     传统的 Linux设备文件访问控制机制通过设置用户权限来实现.
       超级用户(root),具有最高的系统权限,UID为0。
    系统伪用户,Linux操作系统出于系统管理的需要,但又不愿赋予超级用户的权限,
    需要将某些关键系统应用文件所有权赋予某些系统伪用户,其UID范围为1~ 499,系统的伪用户不能登录系统。
      普通用户,只具备有限的访问权限,UID 为 500 ~ 6000,可以登录系统获得 shell
           在Linux权限模型下,每个文件属于一个用户和一个组,由UID与GID标识其所有权。针对于文件的具体访问权限定义为可读(r)、可写(w)与可执行(x),并由三组读、写、执行组成的权限三元组来描述相关权限。
           第一组定义文件所有者(用户)的权限,第二组定义同组用户(GID相同但UID不同的用户)的权限,第三组定义其他用户的权限(GID与UID都不同的用户)。
    2.SElinux采用主体对客体的强制访问控制
    1) SELinux 拥有三个基本的操作模式
    Disabled:禁用SELinux策略
    Permissive:在Permissive模式下,SELinux会被启用但不会实施安全性策略,而只会发出警告及记录行动。Permissive模式在排除SELinux的问题时很有用.
     Enforcing:这个缺省模式会在系统上启用并实施SELinux的安全性策略,拒绝访问及记录行动.
    setenforce 0 命令进入permissive模式
    setenforce 1 命令进入Enforcing模式

    2) 类型强制(TE)访问控制
        在SELinux中,所有访问都必须明确授权,SELinux默认不允许任何访问,不管Linux用户/组ID是什么。这就意味着在SELinux中,没有默认的超级用户了,与标准Linux 中的root不一样,通过指定主体类型(即域)和客体类型使用allow规则授予访问权限,allow规则由四部分组成:
         源类型(Source type(s) ) 通常是尝试访问的进程的域类型
         目标类型(Target type(s) ) 被进程访问的客体的类型
          客体类别(Object class(es)) 指定允许访问的客体的类型
          许可(Permission(s)) 象征目标类型允许源类型访问客体类型的访问种类
         举例如下:



    这个规则解释如下:
         拥有域类型user_t的进程可以读/执行或获取具有bin_t类型的文件客体的属性.

     3) 如何排除SELinux安全策略引起的问题
     a.  首先排除DAC权限的问题,使用“ls –l”检查相关文件的属主和权限。如果DAC的权限许可,则就是SELinux的策略显式地拒绝了当前操作的执行。
     b.  通过“setenforce 0”命令进入permissive模式(getenforce命令查看模式)。此操作可暂时关闭selinux强制访问控制,可直接进行调试,若此时操作还是不允许,则与selinux无关。
    c. 通过“dmesg | grep avc”查看 AVC log,在android6.0 版本中,这个用的最多。从分析失败操作相应的AVC Denied Msg入手区分问题的根源,以下为一条拒绝信息:

    可在/device/qcom/sepolicy/common/untrusted_app.te文件中增加如下语句解决此问题:
    allow   untrusted_app  sysfs_irdev : file { write };
    d) 如何自定义域类型.
            客体类别为file的可以在/device/qcom/sepolicy/common/file.te文件中增加如:

    客体类别为device的可以在/device/qcom/sepolicy/common/device.te文件中增加如:

    然后在安全上下定义文件file_contexts 中增加需要的安全上下文定义,如下:

    注意:
           上面的路径/sys/devices/virtual/sec(/.*)?中不能有链接类型的文件或目录,否    
       则安全上下文定义将无效.

    e) 如何验证自定义域类型和安全上下文(安全策略)已生效.
    1) 使用命令 make kernel 编译重新生成boot.img
     2) 下载 boot.img 到手机上,并重启手机.
    3) 查看手机根目录下file_contexts文件
    root@msm8916_32:/ # cat file_contexts
     /sys/devices/virtual/sec(/.*)?               u:object_r:sysfs_irdev:s0
     /sys/class/sec(/.*)?                       u:object_r:sysfs_irdev:s0
     /sys/devices/virtual/input/input2/offset       u:object_r:sysfs_proxdev:s0
    4) 查看手机文件系统相应目录 如下:
    root@msm8916_32:/sys/devices/virtual/sec/sec_ir # ls -Z
    -rwxrwxrwx root     root              u:object_r:sysfs_irdev:s0 ir_info
    -rwxrwxrwx root     root              u:object_r:sysfs_irdev:s0 ir_learn
    -rwxrwxrwx root     root              u:object_r:sysfs_irdev:s0 ir_send
    这些文件都属于sysfs_irdev域。
     5) 假如untrusted_app.te文件有如下定义:
                allow untrusted_app sysfs_irdev:file { open read write ioctl };
                则所有属于untrusted_app域的app都可以读写/sys/devices/virtual/sec/下的文件
    6)查看那些进程属于untrusted_app域
    root@msm8916_32:/ # ps -Z
    u:r:untrusted_app:s0           u0_a127   30854 294   com.cubic.autohome
    u:r:untrusted_app:s0           u0_a68    31531 294   com.general.remote
    ........
    这两个app可以读写/sys/devices/virtual/sec/目录下的文件.
    展开全文
  • 我们知道,SELinux 是预先配置的,可以在不进行任何手动配置的情况下使用 SELinux 功能。...配置和策略文件位于 /etc/selinux 目录中,主配置文件位 /etc/selinux/config 文件,该文件中的内容如下: [r...
  • SELinux配置文件(/etc/selinux/config

    千次阅读 2018-03-26 20:35:30
    转置:https://www.hao123.com/?tn=97977680_hao_pgSELinux配置文件/etc/selinux/config控制系统下一次启动过程中载入哪个策略,以及系统运行在哪个模式...清单13-1./etc/selinux/config文件内容这个文件控制两个...
  • 我们知道,SELinux 是预先配置的,可以在不...配置和策略文件位于 /etc/selinux 目录中,主配置文件位 /etc/selinux/config 文件,该文件中的内容如下: [root@localhost ~]# vim /etc/selinux/config # This file.
  • 合并SELinux策略文件 该脚本通过STDIN(例如, audit2allow的输出)并通过读取现有策略文件来接受SELinux规则集。 它对两个输入进行合并,重复数据删除和排序,以生成包含两个源内容的输出策略。 用法 -i|--input...
  • selinux文件的控制

    千次阅读 2018-04-27 15:30:44
    1.selinux插件 是系统级别的防火墙设置 ...在常规模式中 , 以用户身份运行进程 , 并且系统上的文件和其他资源都设置了权限 ( 控制哪些用户对哪些文件具有哪些访问权SELINUX 的另一个不同之处在于 , 若要访问...
  • SELinux

    2019-06-02 21:29:54
    1.SELinux(Security-Enhanced Linux) :是一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux 上,也可以作为其他...
  • selinux

    2019-05-06 14:57:11
    selinux级别的不同对服务的影响 selinux是内核上的一个插件 vim /etc/sysconfig/selinux 配置文件 ...未修改selinux为强制前(disabled),可以上传文件,新建的文件也可以看到 修改selinix为强制...
  • SELINUX

    2019-11-13 19:46:17
    1. 了解selinux (1)什么是selinux Selinux,内核级加强型防火墙。SElinux是强制访问控制(MAC)安全系统,是linux历史上最杰出的新安全系统。对于linux安全模块来说,SElinux的功能是最全面的,测试也是最充分的,...
  • SElinux

    2019-05-06 14:33:15
    内核级别的加强防火墙 selinux三种状态: ...修改完配置文件selinux=enforcing后,reboot(时间长耐心等待哦) ls -Z /var/ftp ##可以看到安全上下文,不一样的安全上下文不能在lftp服务中看到,ftp...
  • Selinux

    2014-10-31 16:51:54
    配置文件 /etc/sysconfig/selinux #vim /etc/sysconfig/selinux  1 # This file controls the state of SELinux on the system.  2 # SELINUX= can take one of these three values:  3 # en
  • 文件SELinux属性

    2014-09-29 16:35:25
    临时修改文件的类型属性文件的类型属性不正确是常见的SELinux拒绝访问的主要原因1)修改文件SELinux属性:[root@localhost ~]# touch test.file ##新建文件[root@localhost ~]# ls -Z test.file ##查看文件的...
  • selinux详解及配置文件

    2019-03-28 16:13:00
    selinux详解 selinux 的全称是Security Enhance Linux,就是安全加强的Linux。在Selinux之前root账号能够任意的访问所有文档和服务 ; 如果某个文件设为777,那么任何用户都可以访问甚至删除。 这种方式称为DAC...
  • 最近做了一个功能:设备首次驻网时,在设备指定目录...然后设备首次驻网时在此目录下创建txt文件,”/data/vendor/time_code/time_code.txt”,此时SELinux权限问题就来了,如下所示: 原创文章 53获赞 87访问量 2万+
  • 我尝试访问主机系统上的一个文件,但SELinux阻止虚拟化访问除了/var/lib/libvirt/images里的其他文件。当在共享路径上宿主的虚拟机运行时,主机给出以下信息:SELinux is preventing /usr/bin/qemu-kvm from read ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 122,855
精华内容 49,142
关键字:

selinux文件内容

linux 订阅