ToB企服应用市场:ToB评测及商务社交产业平台
标题:
麒麟体系安全管理工具kysec机制详解
[打印本页]
作者:
商道如狼道
时间:
2024-11-24 11:27
标题:
麒麟体系安全管理工具kysec机制详解
DAC访问控制
Linux下有多种权限控制的机制,常见的有:DAC(Discretionary Access Control)自主式权限控制和MAC(Mandatory Access Control)强制访问控制。
Linux上传统的访问控制尺度是自主访问控制Discretionary Access Control(DAC)。在这种情势下,一个软件或守护历程以User ID(UID)或Set owner User ID(SUID)的身份运行,而且拥有该用户的目标(文件、套接字、以及别的历程)权限。这使得恶意代码很容易运行在特定权限之下,从而取得访问关键的子体系的权限。
另一方面,强制访问控制Mandatory Access Control(MAC)基于保密性和完备性强制信息的隔离以限制破坏。该限制单元独立于传统的Linux安全机制运作,而且没有超等用户的概念。
MAC强制访问控制机制
Apparmor
AppArmor(Application Armor)是Linux内核的一个安全模块,AppArmor答应体系管理员将每个步伐与一个安全设置文件关联,从而限制步伐的功能。简单的说,AppArmor是与SELinux雷同的一个访问控制体系,通过它你可以指定步伐可以读、写或运行哪些文件,是否可以打开网络端口等。作为对传统Unix的自主访问控制模块的补充,AppArmor提供了强制访问控制机制,它已经被整合到2.6版本的Linux内核中。
Apparmor是Ubuntu自带的强制访问机制。
Apparmor有两种工作模式:enforcement、complain/learning
Enforcement – 在这种模式下,设置文件里列出的限制条件都会得到执行,而且对于违反这些限制条件的步伐会进行日记纪录。
Complain – 在这种模式下,设置文件里的限制条件不会得到执行,Apparmor只是对步伐的举动进行纪录。例如步伐可以写一个在设置文件里注明只读的文件,但Apparmor不会对步伐的举动进行限制,只是进行纪录。
那既然complain不能限制步伐,为什么还需要这种模式呢,因为——如果某个步伐的举动不符合其设置文件的限制,可以将其举动纪录到体系日记,而且可以根据步伐的举动,将日记转换成设置文件。
当然我们可以随时对设置文件进行修改,选择本身需要的模式。
服务状态
service apparmor status 检察apparmor服务状态
设置文件模式管理
aa-status 检察体系所有apparmor文件的模式
aa-enforce filename 设置apparmor文件为强制模式
aa-complain filename 设置apparmor文件为软模式
SELinux
安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux 的一个安全子体系。SELinux 主要由美国国家安全局开发。2.6 及以上版本的 Linux 内核都已经集成了 SELinux 模块。
当一个主体Subject(如一个步伐)尝试访问一个目标Object(如一个文件),SELinux安全服务器SELinux Security Server(在内核中)从策略数据库Policy Database中运行一个查抄。基于当前的模式mode,如果 SELinux 安全服务器授予权限,该主体就能够访问该目标。如果SELinux安全服务器拒绝了权限,就会在/var/log/messages中纪录一条拒绝信息。
SELinux 安全策略:
Targeted安全策略 — 只有目标网络历程(dhcpd,httpd,named,nscd,ntpd,portmap,snmpd,squid,以及 syslogd)受保护;
ukmcs安全策略 — 比targeted严酷,进行TE管理员分权控制;
ukmls安全策略 — 多级安全保护,该策略准则为“禁止上读下写”(即低级不能读高级,高级不能读低级,只能同级写同级);
执行sestatus,可检察当前使用的安全策略。
SELinux 有三个模式(可以由用户设置)。这些模式将规定 SELinux 在主体请求时如何应对。这些模式是:
Enforcing 强制— SELinux 策略强制执行,基于 SELinux 策略规则授予或拒绝主体对目标的访问
Permissive 宽容— SELinux 策略不强制执行,不实际拒绝访问,但会有拒绝信息写入日记
Disabled 禁用— 完全禁用SELinux
执行getenforce,可检察当前SELinux的模式。
SELinux 安全模式设置:
sudo setenforce 0 设置软模式(如果启用三权分立,则secadm执行)
sudo setenforce 1 设置强制模式
getenforce 检察安全模式
SELinux安全标记:
id -Z 检察用户标记
ps auxZ 检察历程标记
ls -Z filename 检察文件标记
touch /.autorelabel 创建selinux安全标记文件,重启后体系将重新初 始化selinux安全标记
SELinux 安全策略(如果启用三权分立,则secadm执行):
semodule -l 检察体系已加载的安全模块
semodule -i *.pp 加载 * 安全模块;
semodule -r * 卸载 * 安全策略模块;
SELinux安全开关:
getsebool -a 检察体系所有开关状态
setsebool user_ping 0/1 设置开关为关/开
SELinux 安全策略规则:
sesearch -A -s sysadm_t -t user_tmp_t -c file
// 检察sysadm_t标记的历程对user_tmp_t 标记的file客体有哪些allow答应规则
KYSEC
KYSEC是基于kysec安全标记对执行步伐、脚本文件、共享库、内核模块进行保护的一种安全机制。
除了体系默认集成的执行步伐、脚本文件、共享库、内核模块,任何外来的该4种文件,如拷贝、移动、下载、重新编译天生等,都必须添加到麒麟安全管理工具的相应白名单列表中,才气执行调用。
会对白名单列表中的文件进行保护,保护文件不被修改、移动、删除。
getstatus 检察当前Kysec的相关安全状态
第一行Kysec status表示当前Kysec状态为normal;
第二行exec control表示当前执行控制功能状态为警告;
第三行net control表示当前网络控制功能状态为警告;
第四行file protect表示当前文件保护功能为开;
第五行kmod protect表示当前内核模块保护状态为开;
第六行three protect表示当前三权分立状态为关;
第七行process protect表示当前历程保护功能为开。
只有当相应功能的状态为开(on
**)时,其所控制的功能设置才气生效**
sudo setstatus softmode/normal 设置kysec安全状态为软/强制模式;
sudo setstatus -f exectl off 关闭执行控制功能状态;
sudo setstatus -f exectl on 开启执行控制功能状态;
sudo setstatus -f kmod off 关闭内核模块保护功能状态;
sudo setstatus -f fpro off 关闭文件保护功能状态;
KYSEC安全标记:
设置KYSEC安全标记:
kysec_set [-r] -n exectl/protect/userid -v 标记符号 file
设置文件或目次的kysec安全标记;exectl对应执行控制标记,protect对应文件保护标记,userid对应文件身份标记;(strict安全模式时,只有secadm可以执行)
sudo kysec_set -n exectl -v original /tmp/ls (已存在/tmp/ls文件)
关于kysec介绍
一、麒麟V10服务器
1、麒麟安全管理工具 #图形化安全设置工具
服务器默认没有开启,打开后提示如下图 #只能通过命令开启kysec模块
2、开启kysec模块 #服务器默认没有开启,切换kysec级别重启生效
开启命令:security-switch --set default #kysec默认级别default
安全级别:default、strict、custom,详细参数如下图
开启kysec模块后,就可以打开图形化安全管理工具
3、设置安全控制项 #先开启kysec模块
设置命令:setstatus Softmode | Normal | Warning
分析:强制模式(Normal):出现违规操纵时,不止会审计纪录该操纵,还会制止该操纵的运行;
警告模式(Warning):出现违规操纵时,会弹出麒麟安全授权认证框进行授权;
软模式(Softmode):出现违规操纵时,只会审计纪录该操纵,而不会制止该操纵的运行。
检察命令:getstatus #检察是否开启kysec及控制模块
未开启kysec
开启kysec默认级别,默认模块
遗留:开启kysec模块,如何关闭?
二、麒麟V10桌面
1、麒麟安全管理工具 #图形化安全设置工具
位置:计算机右键属性——更新——安全中央
2、开启kysec模块 #服务器默认没有开启,切换kysec级别重启生效
通过命令或者图形化工具选择kysec级别和关闭kysec模块
开启命令:security-switch --set default #kysec默认级别default
安全级别:default、strict、custom,详细参数如下图
关闭kysec模块
关闭命令:setstatus disable
图形化工具操纵如下图
3、设置安全控制项 #先开启kysec模块
设置命令:setstatus disable | enable | softmode
检察命令:getstatus #检察是否开启kysec及控制模块
未开启kysec
开启kysec默认级别,默认模块
kysec机制
1.1 kysec白名单访问控制状态控制
所有用户可以执行getstatus,检察当前白名单访问控制(kysec)的状态:
sudo组用户、root用户(三权分立下为secadm用户)可以执行setstatus设置kysec状态:
执行setstatus enable/softmode/disable,修改本次体系kysec的运行模式。此中enable安全模式会制止非法步伐的执行,Softmode模式只会在日记中纪录非法步伐的执行,而不会制止该步伐的执行。disable模式本次体系将临时关闭kysec,任何步伐都可以正常执行,下次启动时可恢复到体系设定的kysec安全模式;
执行 setstatus disable/softmode/enable -p将在修改本次kysec运行模式的永久修改下次启动时ksyec的运行模式;
执行 setstatus -f < exect | netctl > <off | enforcing | warning> 用于设置白名单执行控制/应用联网控制模块的安全状态,其安全状态可设置为off(关闭)、enforcing(强制模式)、warning(警告模式,将弹出授权窗口在未答应的步伐运行/联网时弹出授权窗口需要用户授权确认),添加-p参数,将在修改本次安全状态的同时永久修改下次体系启用kysec时的安全状态;
执行setstatus -f < fpro | ppro> <off | on> 用于设置文件保护/历程防护的的状态为关闭/打开。
1.2 kysec白名单访问控制初始化
在体系安装完成后,首次开机时,对整个文件体系进行扫描,会给整个文件体系的可执行步伐、共享库文件、可执行脚本以及内核模块打上初始化标记original,并对体系设定的部门应用步伐打上其他正当白名单标记,完成体系白名单的初始化过程。
加入到白名单列表的可执行步伐、共享库文件、可执行脚本体系答应其被执行和调用,加入到白名单列表的内核模块体系答应其被加载。
1.3 kysec主动标记功能
体系能够对非法外来的可执行步伐、共享库文件、可执行脚本、内核模块进行主动识别和标记。
可使用kysec_get -n exectl 命令检察对应文件的白名单标记,非法外来的可执行步伐、共享库文件、可执行脚本,其白名单标记为unkown。
当白名单列表中受信任的可执行步伐、共享库文件、可执行脚本、内核模块被篡改时,进行主动识别和标记。
kysec执行控制管控
对于外来非法的可执行步伐、共享库文件、可执行脚本,体系将不答应其被执行和调用。只有通过管理员添加到白名单列表,或者关闭麒麟安全机制,才可以执行和被调用。
管理员可以通过执行kysec_set -n exectl -v original/verified/trusted/kysoft ,将对应的可执行步伐、共享库文件、可执行脚本加入到执行控制白名单列表。也可以执行kysec_set -n exectl -v unknown Filepath,将已加入到执行控制白名单列表中的可执行步伐、共享库文件、可执行脚本设置为未认证,此时体系将禁止其运行和被调用。
各标记类型区别如下:
unknown:未知文件标记,该标记不可执行
original:体系原始文件标记,该标记可执行
verified:第三方可执行标记,该标记可执行
kysoft:可信安全标记,该标记可执行
trusted:可信安全标记,拥有该标记的步伐对文件进行修改时,文件的标记稳固,该标记可执行。
1.4 kysec文件保护管控
体系管理员可以将需要完备性保护的文件加入到文件保护白名单列表中,可以防止对应文件被删除、修改以及移动等操纵。
体系管理员可以通过执行kysec_set -n protect -v readonly 将需要保护的文件加入到文件保护列表。可以通过执行kysec_set -n protect -v none ,将该文件从文件保护列表移除。
1.5 kysec内核模块管控
对于外来非法、被篡改的内核模块,体系将不答应其被加载。只有通过管理员添加到白名单列表,或者关闭麒麟安全机制,其才可以该加载。
管理员可以通过执行kysec_set -n exectl -v original/verified/trusted/kysoft ,将对应的内核模块加入到内核模块保护白名单列表。也可以执行kysec_set -n exectl -v unknown Filepath,将已加入到内核模块保护白名单列表中的内核模块设置为未认证,此时体系将禁止其被加载。
管理员可以执行kysec_kmod -a ,对已加入到内核保护列表的内核模块开启防卸载保护,此时该模块不可以被卸载。管理员可以执行kysec_kmod -d ,对已开启防卸载保护的内核模块关闭防卸载保护。
各标记类型区别如下:
unknown:未知文件标记,该标记不可的模块不可被加载执行
original:体系原始文件标记,该标记可以被加载
verified:第三方可执行标记,该标记可以被加载
kysoft:可信安全标记,该标记可以被加载
trusted:可信安全标记,拥有可以被加载。
1.6 kysec应用联网控制
**应用联网控制功能:**控制应用步伐的联网,该功能被启用后。
对于已添加到应用联网控制列表的应用步伐,将会根据该应用步伐在列表中设置的联网策略决定是否答应该应用步伐联网;
对于不在应用联网控制列表的应用步伐,当联网控制设置为禁止时,不在应用联网控制列表的应用步伐将被禁止连接网络;设置为警告时,不在应用联网控制列表的应用步伐在联网时将弹出联网授权窗口,在授权窗口可以选择本次答应/答应/禁止,来对该应用步伐联网进行控制,并根据用户的选择将该应用步伐加入到应用联网控制列表中并设置所选择的联网策略:当选择“答应”时,该应用步伐将永久性答应联网,当选择“本次答应”时体系仅答应该应用步伐本次连接网络,下次该应用步伐启动连接网络时将会继续弹出联网授权窗口,当选择“禁止”时该应用步伐将被永久禁止连接网络;
当应用联网控制功能设置为“关闭时”,所有应用步伐均可以连接网络。
sudo组用户(三权分立下为secadm用户)执行setstatus -f netctl enforcing/warning/off,分别设置应用联网状态开关为禁止/警告/关闭。
sudo组用户(三权分立下为secadm用户)可以通过安全中央–网络保护–应用步伐联网,设置应用联网控制状态,具体操纵详见安全中央章节介绍。
1.7 kysec历程防护
历程防护安全机制
历程防护功能包括历程防杀死类型和关键历程状态监控类型,可以根据实际需求,对不同的应用步伐设置不同的防护类型。
两种类型历程防护区别如下:
历程防杀死
:当把应用步伐加入到历程防杀死列表,体系将禁止该步伐历程被杀死(当历程号为1的历程发出kill信号时不受控制)。
关键历程状态监控
:当把应用步伐加入到关键历程状态监控列表,体系将对该步伐的历程状态进行监控,并对其进行防杀死控制,当发现列表中某个历程退出状态变成DEAD或ZOMBIE或者该历程主动退出时,将会调用核外步伐进行关机或锁屏等(具体操纵根据设置文件来决定)。
当体系启动时,体系主动同步历程防杀死、关键历程状态监控列表到内核中,内核步伐启动对历程防护列表中应用历程的防护。
历程防护相关操纵
历程防护属于kysec的子模块,通过getstatus 可以检察kysec以及历程防护process protect子模块的状态,当kysec的状态为enabled,且process protect状态为on时,历程防护才生效:
root用户、sudo组用户执行可以执行以下命令进行相关安全操纵:
setstatus enable可以开启kysec
setstatus -f ppro on用于开启历程防护
setstatus -f ppro off用户关闭历程防护
kysec_ppro -a subs/key 将应用步伐加入到历程防护列表,此中subs代表历程防杀死类型,Filepath为应用步伐的路径,key代表关键历程状态监控类型。
kysec_ppro -u subs/key 更新历程防护步伐的防护类型;
kysec_ppro -d 将历程防护步伐从历程防护列表移除;
历程防护相关设置
/sys/kernel/security/kysec/ppro,可以检察当前历程防护状态,1代表打开,0代表关闭。
/sys/kernel/security/kysec/ppro_info,可以检察当前历程防护列表各类型防护步伐的数量:
通过kysec_ppro -a/u/d等更新历程防护列表后,可以通过/etc/kysec/ppro/ppro.xml检察历程防护列表。
root/sudo组用户可以通过/etc/kysec/ppro/ppro.conf设置关键历程状态监控对应的防护动作。此中设置为lock时会锁定屏幕,设置为logout会注销用户,设置为poweroff时会触发关机,设置为reboot时会重启体系。该设置修改后无需重启体系立即生效。
学习计划安排
我一共划分了六个阶段,但并不是说你得学完全部才气上手工作,对于一些低级岗位,学到第三四个阶段就足矣~
这里我整合而且整理成了一份【282G】的网络安全从零底子入门到进阶资料包,需要的小同伴可以扫描下方CSDN官方合作二维码免费领取哦,无偿分享!!!
①网络安全学习门路
②上百份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防口试指南
⑤安全红队渗透工具包
⑥HW护网举措履历总结
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨积年CTF夺旗赛题解析
本文转自 https://blog.csdn.net/taoxicun/article/details/129303490?spm=1001.2100.3001.7377&utm_medium=distribute.pc_feed_blog_category.none-task-blog-classify_tag-16-129303490-null-null.nonecase&depth_1-utm_source=distribute.pc_feed_blog_category.none-task-blog-classify_tag-16-129303490-null-null.nonecase,如有侵权,请接洽删除。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4