深入浅出理解操作系统安全 – 作者:c9t9h5

引言

操作系统安全在计算机信息系统的整体安全性中具有至关重要的作用,没有操作系统提供的安全性,计算机业务系统的安全性是没有基础的。

什么是操作系统

操作系统(英语:operating system,缩写:OS)是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。

目前主流的服务器操作系统有Windows、Linux、Sun Solaris 、IBM AIX、HP-UX等等。

什么是操作系统安全

操作系统安全就是要确保操作系统自身是安全的,它可由操作系统自身安全配置、相关安全软件以及第三方安全设备实现的。

操作系统安全的重要性

操作系统安全在计算机信息系统的整体安全性中具有至关重要的作用,没有操作系统提供的安全性,计算机系统的安全性是没有基础的。

操作系统安全是包括服务器、终端/工作站等在内的计算机设备在操作系统层面的安全。终端/工作站是带外设的台式机与笔记本计算机,服务器则包括B/S、C/S应用程序、网络、文件与通信等服务器。操作系统是构成业务信息系统的主要部分,其上承载着各种应用。因此,操作系统安全是保护业务信息系统安全的基础。

操作系统安全涉及的控制点包括但不限于身份鉴别、访问控制、安全审计、剩余信息保护、入侵防范、恶意代码防范和资源控制。

操作系统安全之身份鉴别

(1) 操作系统应对登录操作系统的用户进行身份标识和鉴别,例如:用户至少要划分为管理员组和普通用户组。

(2) 操作系统管理员组的用户身份标识应具有不易被猜测和冒用的特点,例如:将linux默认的root改名为admin。

(3) 操作系统口令应有复杂度要求,例如:大写字母类、小写字母类、数字类、符号类混合,每类最少1个,并每90天更换一次。

(4) 操作系统应启用登录失败处理功能,例如:当连续输入密码错误5次后,暂停登录10分钟。

(5) 当对服务器操作系统进行远程管理时,应使用加密隧道方式,例如:使用ssh连接linux服务器,防止鉴别信息在网络传输过程中被窃听。

(6) 应为操作系统的不同用户分配不同的用户名,确保用户名具有唯一性,例如:管理员1的用户名是adm1-XXX,普通用户1的用户名是usr1-XXX。

操作系统安全之访问控制

(1) 应启用操作系统访问控制功能,依据安全策略控制用户对资源的访问,例如:仅授予user1用户完成工作的最小目录访问权限。

(2) 应根据操作系统管理用户的角色分配权限,实现管理用户的权限分离,仅授予管理用户所需的最小权限,例如:对于linux来说,root是管理员账号,日常工作要使用普通账号而不是用root。

(3) 应实现操作系统特权用户的权限分离。例如:谁可以使用su命令,谁可以使用sudo命令。

(4) 应及时删除操作系统上多余的、过期的帐户,避免共享帐户的存在,例如:linux要删除全部多余账号,例如games账号等。

操作系统安全之安全审计

(1) 审计范围应覆盖到服务器和重要客户端上的每个操作系统用户,服务器应使用堡垒机进行文字终端和图形化终端的操作记录;重要客户端应采用终端数据防泄漏软件,例如:对包含客户姓名、***号、手机号、***号等敏感信息的收集、传输、存储、使用环节进行监控和审计。

(2) 操作系统审计内容应包括重要用户行为、系统资源的异常使用和重要系统命令的使用等系统内重要的安全相关事件。例如:对于linux操作系统,应记录root用户对某个目录执行 # rm -rf /xxx命令的时间。

(3) 操作系统审计记录应包括事件的日期、时间、类型、主体标识、客体标识和结果等,例如:要记录“谁、在什么时间、访问什么系统、执行什么操作、什么时间退出系统的”。

(4) 应能够根据操作系统审计记录数据进行分析,并生成审计报表,例如:生成pdf文件。

(5) 应保护操作系统的审计进程,避免受到未预期的中断,例如:保护linux audit daemon进程。

(6) 应保护操作系统审计记录,避免受到未预期的删除、修改或覆盖等。例如:保护linux操作系统的审计配置文件和审计日志,共有三个文件,/etc/sysconfig/auditd,/etc/audit/auditd.conf,/var/log/audit/audit.log。

操作系统安全之剩余信息保护

(1) 应保证操作系统用户的鉴别信息所在的存储空间,被释放或再分配给其他用户前得到完全清除,无论这些信息是存放在硬盘上还是在内存中,例如:当一台使用过的计算机分配给其他人员使用时,必须确保之前人员全部使用的记录和数据被彻底清除,防止泄露敏感信息。

(2) 应确保操作系统内的文件、目录等资源所在的存储空间,被释放或重新分配给其他用户前得到完全清除。例如:在linux环境中,当user1不再使用这台服务器,应由root执行userdeluser1 –remove 回车,–remove 参数表示在删除user1的同时,也删除user1的家目录/home/user1/下面的全部文件和子目录。

操作系统安全之入侵防范

(1) 操作系统应能够检测到对重要服务器进行入侵的行为,能够记录入侵的源IP、攻击的类型、攻击的目的、攻击的时间,并在发生严重入侵事件时提供报警,这项功能通常需要额外的安全软、硬件来实现。

(2) 操作系统应能够对重要程序的完整性进行检测,并在检测到完整性受到破坏后具有恢复的措施,这项功能通常需要额外的安全软、硬件来实现。

(3) 操作系统应遵循最小安装的原则,仅安装需要的组件和应用程序,并通过设置升级服务器等方式保持系统补丁及时得到更新,例如:服务器操作系统上,不应安装操作系统自带的游戏。

操作系统安全之资源控制

(1) 应通过设定终端接入方式、网络地址范围等条件限制终端登录,例如:设置可以访问服务器ssh的IP地址。

(2) 根据安全策略设置登录终端的操作超时锁定,例如:设置300秒内用户无操作就断开终端。

(3) 对重要服务器进行监视,包括监视服务器的CPU、硬盘、内存、网络等资源的使用情况,例如:在linux操作系统中,可以使用top命令进行监控。

(4) 限制单个用户对系统资源的最大或最小使用限度,例如:linux操作系统可以限制用户只能访问特定目录。

*本文原创作者:c9t9h5,本文属FreeBuf原创奖励计划,未经许可禁止转载

来源:freebuf.com 2019-12-09 09:00:38 by: c9t9h5

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论