一、操作系统安全概述
1.1 操作系统安全概念
是指满足安全策略要求,具有相应的安全机制及安全功能,符合特定的安全标准,在一定约束条件下,能够抵御常见的网络安全威胁,保障自身的安全运行及资源安全
根据安全功能和安全保障要求,将操作系统分成五个安全等级
- 用户自主保护级
- 系统审计保护级
- 安全标记保护级
- 结构化保护级
- 访问验证保护级
操作系统的安全可控:是指用户可以按照预期的安全要求,实现对操作系统的操作和控制,以满足用户的业务需求
- 狭义上来说,操作系统的安全可控侧重于产品安全
- 广义上来说,操作系统的安全可控侧重于产业可控
操作系统的安全可控目标分为两个层面
- 第一个层面,是指给定一个操作系统,用户能够实现对操作系统的可理解、可修改、可检测、可修复、可保护
- 第二个层面,商业用户能够自己主导操作系统的产品化,不受恶意的商业利益绑架或遭受知识产权专利陷阱,操作系统不能被利用危及国家安全
1.2 操作系统安全需求
操作系统的安全目标是:能够防范网络安全威胁,保障操作系统的安全运行及计算机系统资源的安全性
操作系统的安全需求包括
- 标识和鉴别:能够唯一标识系统中的用户,并进行身份真实性鉴别
- 访问控制:按照系统安全策略,对用户的操作进行资源访问控制,防止用户对计算机资源的非法访问(窃取、篡改和破坏)
- 系统资源安全:能够保护系统中信息及数据的完整性、保密性、可用性
- 网络安全:能够进行网络访问控制,保证网络通信数据安全及网络服务的可用性
- 抗攻击:具有系统运行监督机制,防御恶意代码攻击
- 自身安全:操作系统具有自身安全保护机制,确保系统安全和完整性,具有可信恢复能力
1.3 操作系统安全机制
操作系统的安全保障集成多种安全机制,主要包括:
- 硬件安全:是操作系统安全的基础保障机制,包括硬件安全可靠性、存储保护、I/O保护、CPU安全、物理环境保护等
- 标识与鉴别:又称为认证机制,用于操作系统的用户及相关活动主体的身份标识,并给用户和相应的活动主体分配唯一的标识符
- 标识符:具有唯一性,能够防止伪造
- 鉴别:则指证实用户或活动主体的真实身份的过程
- 访问控制:用于操作系统的资源管理控制,防止资源滥用。常见的访问控制有自主访问控制和强制访问控制
- 最小特权管理:就是操作系统不分配用户超过执行任务所需的权限,防止权限滥用,减少系统的安全风险
- 可信路径:是指操作系统的本地用户和远程用户进行初始登录或鉴别时,操作系统安全系统与用户之间建立的安全通信路径。可信路径保护通信数据免遭修改、泄露,防止特洛伊木马模仿登录过程,窃取用户的口令
- 安全审计:就是操作系统对系统中有关安全的活动进行记录、检查及审核,其主要目的就是核实系统安全策略执行的合规性,以追踪违反安全策略的用户及活动主体,确认系统安全故障
- 系统安全增强:又称为安全加固,通过优化操作系统的配置或增加安全组件,以提升操作系统的抗攻击能力
二、Windows操作系统安全分析与防护
2.1 Windows系统架构
Windows XP的结构:是层次结构和客户机/服务器结构的混合体,系统划分为三层
- 最底层:硬件抽象层,它为上面的一层提供硬件结构的接口,有了这一层就可以使系统方便地移植
- 第二层:内核层,它为低层提供执行、中断、异常处理和同步的支持
- 第三层:由一系列实现基本系统服务的模块组成的,例如虚拟内存管理、对象管理、进程和线程管理、I/O管理、进程间通信和安全参考监督器
Windows 2000系统在安全设计上有专门的安全子系统
安全子系统组成
- 本地安全授权(LSA):提供了许多服务程序,保障用户获得存取系统的许可权。它产生令牌、执行本地安全管理、提供交互式登录认证服务、控制安全审查策略和由SRM产生的审查记录信息
- 安全账户管理(SAM):对SAM数据库进行维护,该数据库包含所有组和用户的信息。SAM提供用户登录认证,负责对用户在WeIcome对话框中输入的信息与SAM数据库中的信息比对,并为用户赋予一个安全标识符(SID)。根据网络配置的不同,SAM数据库可能存在于一个或多个Windows NT系统中
- 安全参考监视器(SRM):负责访问控制和审查策略。SRM提供客体(文件、目录等)的存取权限,检查主体(用户账户等)的权限,产生必要的审查信息
- 客体的安全属性由访问控制项(ACE)来描述,全部客体的ACE组成访问控制列表(ACL)
- 没有ACL 的客体意味着任何主体都可访问
- 有ACL的客体则由SRM检查其中的每一项ACE,从而决定主体的访问是否被允许
2.2 Windows安全机制
1. Windows认证机制
以Windows 2000为例,系统提供两种基本认证类型
- 本地认证:是根据用户的本地计算机或Active Directory账户确认用户的身份
- 网络认证:则根据此用户试图访问的任何网络服务确认用户的身份
为提供这种类型的身份验证,Windows 2000安全系统集成三种不同的身份验证技术:Kerberos V5、公钥证书和NTLM
2. Windows访问控制机制
Windows NT/XP的安全性达到了橘皮书C2级,实现了用户级自主访问控制
为了实现进程间的安全访问,Windows NT/XP中的对象采用了安全性描述符(Security Descriptor)
安全性描述符组成:用户SID (Owner)、 工作组SID (Group)、 自由访问控制列表(DACL)和系统访问控制列表(SACL)
3. Windows审计/日志机制
日志文件:是Windows系统中一个比较特殊的文件,它记录Windows系统的运行状况,如各种系统服务的启动、运行、关闭等信息
Windows 日志有三种类型:系统日志、应用程序日志和安全日志,它们对应的文件名为SysEvent.evt、AppEvent.evt和SecEvent.evt
日志文件存放位置:通常存放在操作系统安装的区域“system32\config” 目录下
4. Windows协议过滤和防火墙
针对来自网络上的威胁
- Windows NT 4.0、Windows 2000:提供了包过滤机制,通过过滤机制可以限制网络包进入用户计算机
- Windows XP:自带了防火墙,该防火墙能够监控和限制用户计算机的网络通信
5. Windows文件加密系统
为了防范入侵者通过物理途径读取磁盘信息,绕过Windows 系统文件访问控制机制
微软公司研究开发了加密的文件系统EFS,文件中的数据利用EFS在磁盘上加密,用户如果访问加密的文件,则必须拥有这个文件的密钥,才能够打开这个文件
6. 抗攻击机制
针对常见的缓冲区溢出、恶意代码等攻击,微软公司的新版本操作系统Windows 7、Windows10增加抗攻击安全机制,集成了内存保护机制,主要包括:堆栈保护、安全结构例外处理SafeSEH、数据执行保护DEP、地址随机化ASLR、补丁保护PatchGuard、驱动程序签名等保护机制
Windows 10提供减少攻击面规则配置,具体如下:
- 阻止来自电子邮件客户端和Webmail的可执行内容
- 阻止所有Office应用程序创建子进程
- 阻止Office应用程序创建可执行内容
- 阻止Office应用程序将代码注入其他进程
- 阻止JavaScript或VBScript启动下载的可执行内容
- 阻止执行可能被混淆的脚本
- 阻止Office宏调用Win32 API
|
- 阻止信任列表外的可执行文件运行
- 防御勒索软件
- 阻止从Windows本地安全授权子系统窃取身份凭据
- 阻止PsExec和WMI命令创建进程
- 阻止从USB运行不受信任、未签名的进程
- 阻止Office创建子进程通信应用程序
- 阻止Adobe Reader创建子进程
- 阻止利用WMI事件订阅进行持久性攻击
|
2.3 Windows系统安全分析
windows系统可能遭遇以下安全威胁
- Windows口令:账号和口令是进入 Windows 系统的重要凭证,获取账号和口令信息是入侵者攻击 Windows 系统的重要途径
- Windows恶意代码:由于 Windows 系统自身的安全隐患,许多计算机病毒、网络蠕虫、特洛伊木马等安全事件都与 Windows 系统相关,例如“冲击波“网络蠕虫、“永恒之蓝"勒索网络蠕虫
- Windows 应用软件漏洞:运行在 Windows 平台的应用软件的安全隐患日益暴露,这些安全隐患常常导致 Windows 系统被非授权访问、非法滥用等
- Windows 系统程序的漏洞:Windows 系统程序的设计、实现过程中的安全隐患通常带来不少安全问题,例如 RPC 序的漏洞导致缓冲区溢出攻击
- Windows注册表安全:由于所有配置和控制系统的数据都存在于注册表中,而且 Registry 的缺省权限设置是”所有人” (Everyone) “完全控制” (FullControl) 和“创建“ (Create) ,这种设置可能会被恶意用户利用来删除或者替换掉注册表 (Registry) 文件
- 注册表 (Registry) :是有关 Windows 系统配置的重要文件,存储在系统安装目录 "system32\config" 下
- Windows文件共享安全:Windows 98以后的系统都提供文件共享安全,但是共享会带来信息泄露的问题
- Windows物理临近攻击:一些攻击者利用物理接近 Windows 系统的条件,借用安全工具强行进入 Windows 系统
2.4 Windows 系统安全增强技术方法与流程
Windows 系统的安全增强是指通过一些安全措施来提高系统的安全防护能力
常见的系统安全增强方法
- 安全漏洞打补丁(Patch)
- 停止服务和卸载软件
- 升级或更换程序
- 修改配置或权限
- 去除特洛伊等恶意程序
- 安装专用的安全工具软件,针对Windows漏洞修补问题,用户可以安装自动补丁管理程序
Windows 系统安全增强基本步骤
- 确认系统安全增强的安全目标和系统的业务用途:系统安全目标实际上就是用户所期望系统的安全要求,例如防止信息泄露、抗拒绝服务攻击、限制非法访问等。系统的业务用途是后续安全增强的依据,根据系统的业务用途,系统在安装时或设置策略时进行合适的选择
- 安装最小化的操作系统:最小化操作系统的目的是减少系统安全隐患数目,系统越大,可能的安全风险就越大,而且管理上也难以顾及。安装最小化的操作系统要求:
- 尽量使用英文版Windows操作系统
- 不要安装不需要的网络协议
- 使用NTFS分区
- 删除不必要的服务和组件
- 安装最新系统补丁:系统的漏洞通常成为入侵者进入的途径,因而漏洞的修补是系统安全增强的必要步骤
- 配置安装的系统服务:根据系统的业务运行的基本要求,做到以下几点:
- 不要安装与系统业务运行无关的网络/系统服务和应用程序
- 安装最新的应用程序和服务软件,并定期更新服务的安全补丁
- 配置安全策略:安全策略是有关系统的安全设置规则,在Windows系统中需要配置的安全策略主要有账户策略、审计策略、远程访问、文件共享等。其中,策略中又要涉及多个参数,以配置账户策略为例,策略包含:
- 密码复杂度要求
- 账户锁定阂值
- 账户锁定时间
- 账户锁定记数器
- 禁用NetBIOS: NetBIOS提供名称服务和会话服务,这些服务通常会给攻击者提供入侵切入点。为了系统的安全,一般建议禁用NetBIOS,其方法如下:
- 在防火墙上过滤外部网络访问135~139、445端口
- 修改注册表,禁用NetBIOS
- 禁用NetBIOS over TCP/IP
- 禁用Microsoft网络的文件和打印共享
- 账户安全配置:账户权限设置不当往往会导致安全问题,在Windows系统中,设置账卢权限应做到:
- 禁用默认账号
- 定期检查账户,尽早发现可疑账户
- 锁定Guest账户
- 文件系统安全配置:文件系统安全是Windows系统重要的保护对象,特别是向外提供网络服务的主机系统。文件系统安全的措施通常如下:
- 删除不必要的帮助文件和“%System%\Driver cache” 目录下的文件
- 删除不必要的应用程序,例如cmd.exe
- 启用加密文件系统
- 设置文件共享口令
- 修改系统默认安装目录名
- 配置TCP/IP筛选:安全配置一般考虑:
- 过滤不需要使用的端口
- 过滤不需要的应用层网络服务
- 过滤ICMP数据包
- 禁用光盘或软盘启动:禁用光盘或软盘启动可以防止入侵者进行物理临近攻击,阻止入侵者进入系统
- 使用屏幕保护口令:使用屏幕保护口令防止工作主机被他人滥用
- 设置应用软件安全:应用软件安全不仅会影响到自身的安全,也会给系统带来安全隐患。应用软件安全的设置应做到:
- 及时安装应用软件安全的补丁,特别是IE、Outlook、Office办公套件等
- 修改应用软件安全的默认设置
- 限制应用软件的使用范围
- 安装第三方防护软件:针对Windows系统的特定安全问题,安装第三方防护软件,如杀毒软件、个人防火墙、入侵检测系统和系统安全增强工具
2.5 Windows 2000系统安全增强实例
1.系统启动安全增强
用户必须关闭软盘及光盘的启动功能
设置方法:启动计算机,在系统自检时进入系统的CMOS设置功能,然后将系统的启动选项设置为“C only”(即仅允许从C盘启动),同时为COMS设置必要的密码
2.账号与口令管理安全增强
加强用户账号与口令的安全管理,具体安全增强措施如下
- 停掉guest账号
- 限制不必要的用户数量
- 把系统Administrator账号改名
- 创建一个陷阱账号
- 设置安全复杂的口令
- 设置屏幕保护口令
- 不让系统显示上次登录的用户名
- 开启口令安全策略
- 开启账号策略
开启口令安全策略 |
|
开启账号策略 |
策略 |
设置 |
|
策略 |
设置 |
口令复杂性要求 |
启用 |
|
复位账号锁定 |
计数器20分钟 |
口令长度 |
最小值6位 |
|
账号锁定时间 |
20分钟 |
强制口令 |
历史5次 |
|
账号锁定阈值 |
3次 |
强制口令 |
历史42天 |
|
|
|
3.安装最新系统补丁
攻击者常利用系统的漏洞来进行入侵。因此,必须密切关注微软或其他网站发布的漏洞和补丁信息,及时为系统安装上最新的补丁,这样有助于保护操作系统免受新出现的攻击方法和新漏洞的危害
4.网络安全增强
Windows 2000 一般从以下方面进行安全增强
- 禁止建立空连接:默认情况下,任何用户都可以通过空连接连上服务器,进而枚举出账号,猜测口令,方法是修改注册表LSA-RestrictAnonymous的键值为1,具体操作为: Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 的值改成 “1" 即可
- 关闭默认共享:Windows 2000安装好以后,系统会创建一些隐藏的共享,用户可以在命令窗口下用NET SHARE查看。要禁止这些共享,操作的方法:打开管理工具-计算机管理-共享文件夹-共享,在相应的共享文件夹上右击停止共享即可
- 关闭不必要的网络服务和网络端口:可以启用Windows 2000的 “TCP/IP筛选”机制关闭服务和端口
5.安装第三方防护软件
使用第三方防护软件,例如个人PC防火墙、个人PC入侵检测IDS、反间谍软件、杀病毒软件以及漏洞扫描工具等,都能有效地提高 Windows 系统的安全性
2.6 Windows 系统典型安全工具与参考规范
Windows 典型安全工具如下
- 远程安全登录管理工具OpenSSH (开源)
- 系统身份认证增强工具Kerberos (开源)等
- 恶意代码查杀工具CIamAV (开源)、360杀毒、火绒剑等
- 系统安全检查工具Nmap (开源)、Fport、Sysintemals (工具集成)等
- 系统安全监测工具Netstat (系统自带)、WinDump (开源)等
针对Windows系统进行安全管理问题,国内外安全组织制定了安全标准规范,以作为Windows操作系统配置的安全基线
目前,可供参考的基准线:有CIS (Center for Internet Security), SANS TOP 20、NIST SP 800-70、《信息安全技术政务计算机终端核心配置规范》等
个人导航:http://xqnav.top/