导图社区 操作系统安全
本章首先闸述了操作系统安全的概念及相关安全需求、安全机制、安全技术:然后分析了Windows操作系统、UNIX/Linux操作系统面临的安全问题,并分别给出了Windows、UNIX/Linux操作系统的安全增强方法以及基本操作流程;最后,介绍了国产操作系统的发展状况及安全增强措施。
编辑于2020-12-20 22:24:49第19章 操作系统安全
19.1概述
操作系统负责计算机系统的资产管理,支撑和控制各种应用程序运行,为用户提供管理计算机系统管理接口。
操作系统是构成网络信息系统的核心关键组件,其安全可靠性决定了计算机系统的安全性和可靠性
19.1.1 操作系统安全概念
是指满足安全策略要求,具有相应的安全机制及安全功能,符合特定的安全标准,在一定约束条件下,能够抵御常见的网络安全威胁,保障自身的安全运行和资源安全
按国家标准《信息安全技术 操作系统安全技术要求(GB-T 20272-2019)》分成5个等级
自主保护级
系统审计级
安全标记保护级
结构化保护级
访问验证保护级
操作系统的安全可控目标分为两个层面
第一个层面,是指给定一个操纵系统,,用户能够实现对操作系统的可理解,可修改,可检测,可修复,可保护
第二个层面,商业用户能够自己主导操作系统的产品化,不受恶意的商业利益绑架或遭受知识产权专利陷阱,操作系统不能被利用危害国家安全。
19.1.2 操作系统安全需求
标记和鉴别(唯一标识系统的用户,并进行身份真实性鉴别)
访问控制(按照系统安全策略,对用户的操作进行资源访问控制)
系统资源安全(保护系统信息及数据的 CIA)
网络安全(网络访问控制,保障可用性)
抗攻击(具备运行监督机制)
自身安全(具备自身保护机制,保障安全和完整,可恢复)
19.1.3 操作系统的安全机制
硬件安全(硬件安全可靠性、存储保护、I/O 保护,CPU 安全、物理环境保护)
标识与鉴别(标识:唯一性;鉴别:证明实体为其所声称身份的过程)
访问控制(OS 资源管理控制,DAC、MAC、RBAC)
最小特权管理(OS 不分配用户超过执行任务所需的权限)
可信路径(本地、远程登录与鉴别)
安全审计(核实系统安全策略执行的合规性,追踪违规实体)
系统安全增强(优化 OS 的配置或增加安全组件,以提升 OS 的抗攻击能力)
19.1.4 操作系统安全技术
硬件容灾备份技术
可信计算技术
身份认证技术
访问控制技术
加密技术
安全审计
监测技术
系统安全增强技术
特权管理技术
形式化分析技术
安全渗透技术
隐蔽信道分析
安全补丁
防火墙
入侵检测
安全沙箱
攻击欺骗
地址空间随机化
系统恢复
19.2 Windows操作系统安全分析与防护
19.2.1 windows系构机构
windows xp
第一层:硬件抽象层(提供硬件结构接口)
第二层:内核层(执行、中断、异常、同步)
第三层:系统服务模块(虚拟内存管理、进程线程管理、I/O管理)
Windows 2000
本地安全授权 LSA:产生令牌、执行安全管理、提供认证服务
安全账户管理 SAM:登录认证
安全参考监视器:SRM:访问控制、审查策略
19.2.2 Windows安全机制
1. Windows 认证机制(Windows 2000:本地认证;网络认证)
2. Windows 访问控制机制(安全性描述符 SD:用户 SID Owner、工作组 SID Group、自由访问控制列表 DACL、系统访问控制列表 SACL、访问控制条目 ACE )
3. Windows 审计/日志机制(系统日志 SysEvent.evt,应用程序日志 AppEvent.evt,安全日志 SecEvent.evt)
4. Windows 协议过滤和防火墙
5. Windows 文件加密系统(EFS)
6. 抗攻击机制(堆栈保护、安全结构例外处理、数据执行保护、地址随机化、补丁保护、驱动程序签名、减少攻击面)
19.2.3 Windows系统安全性分析
1. Windows 口令
2. Windows 恶意代码
3. Windows 应用软件漏洞
4. Windows 程序设计漏洞
5. Windows 注册表安全
6. Windows 文件共享安全(XP 在默认安装后允许用户通过空用户连接 IPC$得到系统所有账号和共享列表
7. Windows 物理临近攻击
19.2.4 Windows系统安全增强技术方法和流程
系统安全增强方法:
1. 安全漏洞打补丁
2. 停止服务和卸载软件
3. 升级或者更换程序
4. 修改配置或权限
5. 去除特洛伊等恶意程序
6. 安装专用的安全工具软件
系统安全增强流程
确认系统安全增强的安全目标和系统的业务类型
目标:防止信息泄露、抵抗拒绝服务、限制非法访问
用途:重要依据
安装最小化的操作系统
尽量使用英文版 Windows 操作系统
不安装不必要的网络协议
使用 NTFS 分区
删除不必要的服务和组件
安装最新系统补丁
配置安装的系统服务:
不安装与系统业务运行无关的网络/系统服务和应用程序
安装最新的应用程序和软件服务,定期更新补丁
配置安全策略(账户策略、审计策略、远程访问、文件共享)
账户锁定阈值
账户锁定时间
账户锁定计数器
密码复杂度要求
禁用 NetBIOS(提供名称服务和会话服务)
防火墙过滤外部访问 135~139、445 端口
修改注册表,禁用 NetBIOS
禁用 NetBIOS over TCP/IP
禁用 Microsoft 网络的文件和打印共享
账户安全配置
定期检查账号,尽早发现可以账号
禁用默认账号
锁定 Guest 账号
文件系统安全配置
删除不必要的帮助文件和缓存
删除不必要的应用程序(cmd.exe)
启用加密文件系统
设置文件共享口令
修改系统默认的安装目录名
配置 TCP/IP 筛选和 ICF(防火墙)
过滤不需要使用的端口
过滤不需要的应用层网络服务
过滤 ICMP 数据包
禁用光盘或软盘启动
使用屏幕保护口令
设置应用程序软件安全
及时安装应用软件的补丁
修改应用软件的默认设置
限制应用软件的使用范围
19.2.5 Windows 2000 系统安全增强实例
1. 系统启动安全增强(CMOS设置中,系统启动项设置为 “C only”)
2. 账号与口令管理安全增强(①停掉 Guest 账号;②限制不必要的用户数量,。如测试账号、共享账号、普通部门账号。用户组策略是指权限;③Administrator 改名;④创建陷阱账号;⑤设置安全复杂的空灵;⑥设置屏幕保护口令;⑦不让系统显示上次登录的用户名;⑧开启口令安全策略;⑨开启账号策略)
3. 安装最新的系统补丁
4. 网络安全增强(①禁止建立空连接,修改注册表 LSA-RestrictAnonymous;②关闭默认共享;③关闭不必要的网络服务和网络端口
5. 安装第三方防护软件(个人PC防火墙,个人PC入侵检测IDS、反间谍软件、杀软、漏扫)
19.2.6 Windows 系统典型安全工具与参考规范
远程安全登录管理工具 OpenSSH
系统身份认证增强工具 Kerberos
恶意代码查杀工具 ClamAV、360杀毒
系统安全检查工具 Nmap、Fport
系统安全监测工具 Netstat、WinDump
19.3 UNIX/Linux 操作系统安全分析与防护
19.3.1 UNIX/Linux 系统架构
一般分为三层:硬件层、系统内核、应用层
19.3.2 UNIX/Linux 安全机制
多用户,多任务的操作系统
UNIX/Linux 认证
基于口令认证
终端认证
主机信任机制
第三方认证(一次一密口令认证 S/Key、Kerberos、插入式身份认证)
UNIX/Linux 访问控制(9bit 位实现:所有者、同组用户、其他用户的读、写、执行)
UNIX/Linux 审计机制
lastlog:用户最近成功登陆时间
loginlog:不良登陆尝试记录
messages:输出到主控台和系统服务程序产生的消息
utmp:当前登陆每个用户
wtmp:用户登录和注销的历史信息
vlod.log:外部介质出现的错误
xferkig:ftp 存取情况
sulog:su 命令使用情况
acct:每个用户使用过的命令
19.3.3 UNIX/Linux 系统安全分析
1. UNIX/Linux 口令/账号安全(passwd、shadow)
2. UNIX/Linux 可信主机文件安全
3. UNIX/Linux 应用软件漏洞
4. UNIX/Linux 的 SUID 文件安全(SUID:被设置成可以带有文件拥有者的身份和权限被执行的可执行文件)
5. UNIX/Linux 的恶意代码
6. UNIX/Linux 文件系统安全
7. UNIX/Linux 网络服务安全(finger、R-)
8. UNIX/Linux 系统程序漏洞
19.3.4 UNIX/Linux 系统安全增强的方法和流程
UNIX/Linux 系统安全增强方法
给安全漏洞打补丁
停止不必要的服务
升级或更换软件包
修改系统配置
安装专用的安全工具软件
UNIX/Linux 系统安全增强基本流程
1. 确认系统的安全目标(根据系统的运行的业务而期望的安全要求。机密性、完整性、可用性、可控制性、抗抵赖性)
2. 最小化安装 UNIX/Linux 系统
3. 利用 UNIX/Linux 系统自身安全机制,配置安全策略(用户及口令、主机信任、文件访问、网络服务、系统审计)
4. 自身配置不足时,利用第三方软件包来增强系统安全
5. 利用系统安全测试工具,检查 UNIX/Linux 安全策略的有效性或系统的安全隐患
6. 通过安全检查后,开始正常运行,不定期安全监控。
19.3.5 UNIX/Linux 系统安全增强技术
1. 安装系统补丁软件包(安装前检查补丁数字签名)
2. 最小化系统网络服务(①inetd.conf 文件权限600,属主 root;②services 文件权限644,属主 root;③inetd.conf中,注销不必要服务,如finger、echo、chargen、rsh、rlogin、tftp;④只开放与系统业务运行有关的网络通信端口)
3. 设置系统开机保护口令(BIOS 密码)
4. 弱口令检查(John the Ripper:主要针对 UNIX 下弱口令,支持UNIX、Windows、Linux、DOS
5. 禁用默认账号
6. 用 SSH 增强网络服务安全(Telnet、FTP明文传输,SSH增强,提供认证、加密)
7. 利用 tcp_wrapper 增强访问控制(守护进程 inetd 的插件)
8. 构筑 UNIX/Linux 主机防火墙(ipchains、iptables、netfilter)
9. 使用 Tripwire 或 MD5Sum 完整性检测工具(Tripwire:开源,完整性标签,周期性检查;MD5Sum:128位指纹信息)
10. 检测 LKM 后门(Kstat、Chkrootkit、Rootkit Hunter)
19.3.6 Linux 安全增强配置参考
禁止访问重要文件
#chmod 600 /etc/inetd.conf //文件属性,仅root可读写
#chatter +i /etc/inetd.conf //属主为root,设置不能更改
禁止不必要的 SUID 程序
为 LILO 增加开机口令
设置口令最小长度和最短使用时间
限制远程访问
对所有外部主机禁止,除非allow中允许 hosts.deny #Deny access to everyone. ALL:ALL@ALL hosts.allow ftp:XXX.XXX.XXX.XXX YYY.com
用户超时注销
TMOUT=600 //10分钟无操作则注销
注销时删除命令记录
rm -f $HOME/.bash_history
19.3.7 UNIX/Linux 安全模块应用参考
LSM提供的轻量级、通用的访问控制框架,通过放置钩子的方法,对内核内部对象的访问进行控制
PAM
SELinux
19.3.8 UNIX/Linux 系统典型安全工具与参考规范
工具:
远程安全登录管理开源工具 OpenSSH
系统身份认证增强开源工具 Kerberos
系统访问控制增强开源工具 SELinux、iptables、TCP Wrapper
恶意代码查杀工具 ClamAV、Chkrootkit、Rootkit Hunter
系统安全监察工具 Nmap、John the Ripper、OpenVAS
系统安全检测工具 lsof、Netstat、Snort
规范:
CIS(Center for Internet Security)
SANS
19.4 国产操作系统安全分析与防护
19.4.1 国产操作系统安全分析
1. Linux 内核的安全风险
2. 自主研发系统组件的安全
3. 依赖第三方系统组件的安全
4. 系统安全配置的安全
5. 硬件的安全
19.4.2 国产操作系统安全增强措施
中科方德方舟安全操作系统
结构化保护级的要求
1. 基于三权分立的管理机制(系统管理员、安全管理员、审计管理员)
2. 强化的身份标识与认证机制
3. 综合应用多种安全策略,提高系统的安全性
4. 基于内核层的安全审计
5. 支持各类通用软件,良好的软硬件兼容性
中标麒麟
安全操作系统(基于SELinux)
可信操作系统(可信技术+操作系统安全技术。支持TCM/TPCM,支持国产密码算法
19.5 本章小结
本章首先闸述了操作系统安全的概念及相关安全需求、安全机制、安全技术:然后分析了Windows操作系统、UNIX/Linux操作系统面临的安全问题,并分别给出了Windows、UNIX/Linux操作系统的安全增强方法以及基本操作流程;最后,介绍了国产操作系统的发展状况及安全增强措施。