简介

目前国家正在推进国产化改造,在等保项目中接触的国产设备越来越多。Kylin操作系统基于UNIX国际主流标准,同时继承了“银河”系列操作系统的核心技术,采用层次式结构,由Mach风格的基本内核层、BSD风格的系统服务层、Windows风格桌面环境紧耦合构成。

此篇通过等保来方便大家了解kylinOS的基线配置。kylinOS镜像可以到官方网站上直接下载,下载地址:

产品试用下载·国产操作系统、麒麟操作系统——麒麟软件官方网站

在VMware中创建时虚拟机版本选择ubuntu64

安全计算环境

身份鉴别

a)应对登录的用户进行身份标识和鉴别,身份标识具有唯一性,身份鉴别信息具有复杂度要求并定期更换

cat /etc/security/pwquality.conf		//查看密码复杂度
difok 代表不得与上次密码相同的字符个数;
minlen 为密码最小长度;
dcredit 为密码中最少包含数字的个数;
ucredit 为密码中最少包含大写字母的个数;
lcredit 为密码中最少包含小写字母的个数;
ocredit 为密码中最少包含特殊字符的个数;
maxrepeat 为密码中相同字符出现最多的次数;
usercheck 为检测密码是否与用户名相似。
数值为-1 时代表至少需要相应字符一位、数值为-2时代表需要需要相应字符两位,依次类推
chage -l 用户名		//查看密码有效期
chage -M 90 用户名		//设置密码有效期为90天,此命令只可更改当前已存在的账户的密码有效期
cat /etc/login.defs		//查看通用密码有效期
PASS_MAX_DAYS 后数值为密码最长有效期
PASS_MIN_DAYS 后数值为密码最短有效期
PASS_WARN_AGE 后数值为密码过期前告警天数

b)应具有登录失败处理功能,应配置并启用结束会话、限制非法登录次数和当登录连接超时自动退出等相关措施

cat /etc/pam.d/common-password		//查看登录失败处理
auth required pam_tally2.so deny=5 unlock_time=300 even_deny_root root_unlock_time=300
//在首行添加,5次锁定300秒
cat /etc/profile | grep TMOUT		//核查登录超时,单位秒

c)当进行远程管理时,应采取必要措施防止鉴别信息在网络传输过程中被窃听

service sshd status
service telnet status		//不允许开启telnet

d)应采用口令、密码技术、生物技术等两种或两种以上组合的鉴别技术对用户进行身份鉴别,且其中一种鉴别技术至少应使用密码技术来实现

核查用户登录服务器外是否还需要动态令牌等另一种验证。

访问控制

a)应对登录的用户分配账户和权限

cat /etc/passwd		//查看可登录用户,/bin/bash为可登录

b)应重命名或删除默认账户,修改默认账户的默认口令

kylinOS同Linux一样,默认账户root账户无法被重命名,检查root的口令是否修改

c)应及时删除或停用多余的、过期的账户,避免共享账户的存在

删除或停用多余、过期账户,避免账户共享

d)应授予管理用户所需的最小权限,实现管理用户的权限分离

cat /etc/passwd		//需要三权分立(拥有安全员与审计员)
cat /etc/sudoers		//超管只有root

e)应由授权主体配置访问控制策略,访问控制策略规定主体对客体的访问规则

ls -l	文件名	//查看文件权限,敏感文件权限需要在644以下

g)应对重要主体和客体设置安全标记,并控制主体对有安全标记信息资源的访问

getenforce		//查看selinux级别
SELinux是一个内核级别的安全机制,是对于强制访问控制的实现。在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件,提供了强有力的安全保护。
Disabled:关闭
Permissive:宽松模式(仅告警)
Enforcing:强制模式

安全审计

a)应启用安全审计功能,审计覆盖到每个用户,对重要的用户行为和重要安全事件进行审计

service rsyslog status
service auditd status		//两种日志服务都需开启

b)审计记录应包括事件的日期和时间、用户、事件类型、事件是否成功及其他与审计相关的信息

tail /var/log/audit/audit.log		//查询日志是否记录

c)应对审计记录进行保护,定期备份,避免受到未预期的删除、修改或覆盖等

询问用户的备份audit、syslog的策略

d)应对审计进程进行保护,防止未经授权的中断

ps -elf | grep -E 'rsyslogd|auditd'		//查询守护进程是否开启

入侵防范

a)应遵循最小安装的原则,仅安装需要的组件和应用程序

dpkg -l

b)应关闭不需要的系统服务、默认共享和高危端口

netstat -antupl		//查看开启端口
systemctl | grep running		//查看运行服务
systemctl disable --now 服务项		//关闭多余服务

c)应通过设定终端接入方式或网络地址范围对通过网络进行管理的管理终端进行限制

cat /etc/hosts.deny		//黑名单,需拒绝所有
cat /etc/hosts.allow		//白名单,优先级大于黑名单
若无上面两个文件,则在/etc/ssh/sshd_config中设置
添加配置项AllowUsers或者DenyUsers
AllowUsers/DenyUsers    *@IP		//只允许/拒绝IP登录
AllowUsers/DenyUsers    root test		//只允许/拒绝root、test登录
AllowUsers/DenyUsers    kylin@192.168.1.0/24	//只允许/拒绝klin在192.168.1.0段登录
DenyUsers优先级大于AllowUsers

d)应提供数据有效性检验功能,保证通过人机接口输入或通过通信接口输入的内容符合系统设定要求

该项是测评业务应用,不适用

e)应能发现可能存在的已知漏洞,并在经过充分测试评估后,及时修补漏洞

通过漏扫软件或设备进行扫描

f)应能够检测到对重要节点进行入侵的行为,并在发生严重入侵事件时提供报警

是否安装可识别入侵的杀毒软件

恶意代码防范

a)应采用免受恶意代码攻击的技术措施或主动免疫可信验证机制及时识别入侵和病毒行为,并将其有效阻断

是否安装可防恶意代码的杀毒软件

可信验证

a)可基于可信根对计算设备的系统引导程序、系统程序、重要配置参数和应用程序等进行可信验证,并在应用程序的关键执行环节进行动态可信验证,在检测到其可信性受到破坏后进行报警,并将验证结果形成审计记录送至安全管理中心

可信验证需要从芯片等硬件层面进行,在金融行业少数能实现,默认不符合

数据完整性

a)应采用校验技术或密码技术保证重要数据在传输过程中的完整性,包括但不限于鉴别数据、重要业务数据、重要审计数据、重要配置数据、重要视频数据和重要个人信息等

远程管理kylin服务器是采用的SSH安全协议,默认符合

b)应采用校验技术或密码技术保证重要数据在存储过程中的完整性,包括但不限于鉴别数据、重要业务数据、重要审计数据、重要配置数据、重要视频数据和重要个人信息等

Linux的密码是采用SHA512存储的

$1 :Message Digest 5 (MD5)
$2 :Blowfish(最早的版本,有一些缺陷,不推荐使用)
$2a :Blowfish(修复了一些缺陷后的版本,但仍然有一些问题,不推荐使用)
$2b :Blowfish(修复了2a中的问题后的版本,是安全、常用的版本)
$2y :Blowfish(Eksblowfish版本)
$5 :256-bit Secure Hash Algorithm (SHA-256)
$6 :512-bit Secure Hash Algorithm (SHA-512)
$y (or $7):Yescrypt(Blowfish加密方式的一个变种,提供了更高的安全性和性能)
$sm3 :SM3

数据保密性

a)应采用密码技术保证重要数据在传输过程中的保密性,包括但不限于鉴别数据、重要业务数据和重要个人信息等

远程管理kylin服务器是采用的SSH安全协议,默认符合

b)应采用密码技术保证重要数据在存储过程中的保密性,包括但不限于鉴别数据、重要业务数据和重要个人信息等

kylin的密码是采用SHA512存储的,默认符合

微信公众号

扫一扫关注CatalyzeSec公众号

加入我们的星球,我们能提供:

Fofa永久高级会员

常态化更新最新的漏洞POC/EXP

常态化更新未公开、半公开漏洞POC

常态化更新优质外网打点、内网渗透工具

常态化更新安全资讯

开放交流环境,解决成员问题

https://t.zsxq.com/18Fq7QNgv

 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐