银河麒麟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参数说明

相关推荐
newxtc19 小时前
【浙江政务服务网-注册_登录安全分析报告】
运维·selenium·安全·政务
alex10021 小时前
API安全漏洞详解:Broken Function Level Authorization (BFLA) 的威胁与防御
网络·安全
leagsoft_10031 天前
上新!联软科技发布新一代LeagView平台,用微服务重塑终端安全
科技·安全·微服务
用户47949283569151 天前
什么是XSS攻击,怎么预防,一篇文章带你搞清楚
前端·javascript·安全
白帽子黑客罗哥1 天前
云原生安全深度实战:从容器安全到零信任架构
安全·云原生·架构·零信任·容器安全·kubernetes安全·服务网络
TG_yunshuguoji1 天前
亚马逊云代理商:怎么快速构建高安全区块链应用?
网络·安全·云计算·区块链·aws
喜欢你,还有大家1 天前
企业安全防护之——防火墙
服务器·网络·安全
滑水滑成滑头1 天前
**发散创新:探索零信任网络下的安全编程实践**随着信息技术的飞速发展,网络安全问题日益凸显。传统的网络安全防护方式已难以
java·网络·python·安全·web安全
光影少年1 天前
网络安全生态及学习路线
学习·安全·web安全
是Yu欸1 天前
【仓颉语言】原生智能、全场景与强安全的设计哲学
开发语言·安全·鸿蒙·鸿蒙系统·仓颉语言