银河麒麟KYSEC安全机制详解

简介

KYSEC是基于kysec安全标记对`执行程序、脚本文件、共享库、内核模块`进行保护的一种安全机制。除了系统默认集成的执行程序、脚本文件、共享库、内核模块,任何外来的该4种文件,如拷贝、移动、下载、重新编译生成等,都必须添加到麒麟安全管理工具的相应白名单列表中,才能执行调用。会对白名单列表中的文件进行保护,保护文件不被修改、移动、删除。

安全模式

KYSEC有三种安全模式:

强制模式(Normal): 出现违规操作时,不止会审计记录该操作,还会阻止该操作的运行;
警告模式(Warning): 出现违规操作时,会弹出麒麟安全授权认证框进行授权;
**软模式(Softmode):**出现违规操作时,只会审计记录该操作,而不会阻止该操作的运行。

使用操作介绍

GUI界面操作

设置->安全中心->应用保护

点击进入之后如图(需要root权限才能进行设置):

SHELL界面操作

查看当前kysec的相关安全状态

bash 复制代码
getstatus

getstatus

KySec status: enabled

exec control : warning #当前执行控制功能状态为警告;

net control : warning #前网络控制功能状态为警告;

file protect : on #当前文件保护功能为开启;

kmod protect : on #当前内核模块保护功能为开启;

three admin : off #当前三权分立状态为关闭;

process protect: on #当前进程保护功能为开启;

device control: on #当前块设备控制功能为开启;

ipt control : on

kid protect : off

program blklist: off

eperm control: off

修改当前Kysec的相关安全状态

bash 复制代码
setstatus

设置Kysec安全状态为软/强制/警告模式;

sudo setstatus softmode/norma/warning

关闭执行控制功能状态(默认:warning):

sudo setstatus -f exectl off

开启执行控制功能状态(默认:warning):

sudo setstatus -f exectl on

关闭内核模块保护功能(默认:on):

sudo setstatus -f kmod off

关闭文件保护功能(默认:on):

sudo setstatus -f fpro off

查看Kysec安全标记

bash 复制代码
kysec_get 

kysec_get /usr/sbin/kysec_get

/usr/sbin/kysec_get: none:none:original:9999

Usage:kysec_get [ -r ] [ -n LABEL_NAME ] PATH1 PATH2 ...

kysec_get -p PID

kysec_get --package PACKAGE_NAME

-r: get kysec label recursively for directories

-n: get the specified label only, label_name can be kid, exectl, protect or userid

-p: get the label for process PID

--package: get the label for a installed package

-h: show help information.

kysec_get参数说明:

参数 含义
-r 递归查看目录下所有文件的安全标签
-n LABEL_NAME 指定要查看的标签类型,如 kid、exectl、protect、userid
-p PID 查看某个进程(通过进程ID)的安全标签
--package PACKAGE_NAME 查看某个已安装软件包中所有文件的标签
-h 显示帮助信息

kysec标签说明:

配置Kysec安全标记

bash 复制代码
kysec_set 

kysec_set [-r] -n exectl/protect/userid -v 标记符号 file

例如:

sudo kysec_set -n exectl -v original /tmp/ls

Usage:kysec_set [ -r ] -n LABEL_NAME -v LABEL_VALUE PATH1 PATH2 ...

kysec_set -n LABEL_NAME -v LABEL_VALUE -f FILE_PATH

kysec_set -n LABEL_NAME -v LABEL_VALUE --package PACKAGE_NAME

kysec_set -n LABEL_NAME -x PATH1 PATH2 ...

kysec_set -n kid PATH1 PATH2 ...

-r: set kysec label recursively, work for directories only

-n: set the specified label type only, it can be kid, exectl, protect or userid

-v: new label value, label_value veris depends on label_name

-f: set kysec label for files listed in FILE_PATH, one file path per line

--package: set all the files' kysec labels for a installed package

-x: clear kysec label specified by label_name

-h: show help information.

kysec_set参数说明

相关推荐
Lambor_Ma1 小时前
【架构】安全
安全
瀚高PG实验室1 小时前
安全版普通用户获取系统对象的访问权限
数据库·安全·瀚高数据库
yy7634966681 小时前
Teigha删除操作完全指南 | 安全彻底清理DWG文件,避免数据灾难!
数据库·安全
意疏4 小时前
Kali远程桌面+cpolar:网络安全攻防的跨域协作新范式
安全·web安全
Joe_Blue_025 小时前
中保研汽车小偏置碰撞案例分析
安全·性能优化·汽车·硬件工程
Splashtop高性能远程控制软件8 小时前
行业观察 | 微软修复63个漏洞,包含零日与CVSS 9.8关键漏洞
运维·安全·microsoft·自动化·远程桌面·splashtop
J***Q2928 小时前
后端服务网格安全,mTLS加密通信
网络·安全
那我掉的头发算什么9 小时前
【javaEE】多线程——线程安全进阶☆☆☆
java·jvm·安全·java-ee·intellij-idea
chipsense10 小时前
隔离式电流采样方案:HK4V H00,高绝缘耐压,保障强电环境采样安全
安全·开环霍尔电流传感器
一RTOS一10 小时前
工业AI安监超脑,为智能建造打造“安全数字底座”
人工智能·安全