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

相关推荐
长不大的杨瑞杰9 小时前
OpenCode v2 会话可靠性实战:Snapshots、Compaction、Instructions 与 Formatters
人工智能·安全·云计算·软件工程·devops
陆圣杰11 小时前
代码分享之前,先用假数据练一次凭据检查
安全
Angeldream12312 小时前
第 10 章 医学影像伦理与安全
图像处理·人工智能·python·安全·机器学习·医学影像
方白羽13 小时前
Android 双开环境底层剖析与风控检测落地
android·安全·app
pt104313 小时前
Cisco设备网络安全系列-18:SIEM与SOAR安全解决方案
网络·安全
yyuuuzz14 小时前
云服务器安全组规则优先级的机制记录
运维·服务器·网络·安全·阿里云·aws
福大大架构师每日一题16 小时前
redis 8.10.3正式发布:聚焦集群总线超大消息传播场景的安全修复,8.10.3 Latest更新解读
数据库·redis·安全
Linux运维技术栈16 小时前
WAF部署在防火墙后面,获取不到真实IP怎么办?
服务器·网络·tcp/ip·安全·防火墙·waf
是真的小外套18 小时前
网络安全实战第6期:Hydra爆破SSH实战
安全·web安全·ssh
是真的小外套18 小时前
网络安全实战第5期:Wireshark抓明文密码
安全·web安全·wireshark