本章需掌握知识点:

  • 操作系统安全机制
    • 了解操作系统标识与鉴别、访问控制、权限管理、信道保护、安全审计、内存存取、文件保护等安全机制;
  • 操作系统安全配置、
    • 了解安全补丁、最小化部署、远程访问控制、账户及口令策略、安全审计及其他操作系统配置要点。

一、操作系统与安全性目标介绍

  1. 概念:操作系统是管理系统资源、控制程序执行、提供良好人机界面和各种服务一种系统软件
    1. 操作系统在计算机系统中的位置从属关系

image.png

  1. 特征:

    1. 用户与计算机硬件之间的接口
    2. 操作系统为用户提供了虚拟计算机,把硬件的复杂性与用户隔离
    3. 计算机系统的资源管理者
      1. CPU管理
      2. 存储管理
      3. 设备管理
      4. 文件管理
      5. 网络与通信管理
      6. 用户接口 | 用户进程 | | —- | | 系统调用接口 | | 内核 | | 硬件:CPU、内存、硬盘、网络硬件等 |
  2. 操作系统基本构成 | 构成模块 | 功能作用 | | —- | —- | | 用户接口 | 为不用用户提供操作界面,实现对系统资源的控制; | | 进程管理 | 通过分片调度CPU执行周期,实现进程调度,从而实现多任务 | | 内存管理 | 管理和规划主机内存的使用,为其他模块提供接口 | | 文件系统管理 | 明确磁盘或分区上的文件数据结构,提高文件安全性 | | 磁盘管理 | 处理不同的磁盘高度和读写请求,保证磁盘的存储效率 | | 设备管理 | 管理不同的外设,保证设备的合理使用和分配 |

  3. 操作系统安全目标与实现机制

    1. 操作系统安全目标
      1. 标识系统中的用户、进行身份鉴别;
      2. 依据系统安全策略对用户的操作进行访问控制,防止用户和外来入侵者对计算机资源的非法访问;
      3. 监督(审计Audit)系统运行的安全性;
      4. 保证系统租自身的安全和完整性;
    2. 实现目标的安全机制
      1. 标识与鉴别
      2. 访问控制
      3. 最小特权管理
      4. 信道保护
      5. 安全审计
      6. 内存存取保护
      7. 文件系统保护等
  4. 操作系统的安全度量标准与发展历史
    1. 桔皮书——TCSEC是美国1985年发布的《可信计算机系统评估准则》
    2. CC——ISO 15408-1999,1995年发布的国际通用评估准则,也是我国操作系统安全评估采用的标准

image.png

二、Windows标识与鉴别

  1. Windows系统的标识
    1. 安全主体(账户、计算机、服务等)
    2. 安全标识符(Security Identifier,SID)
      1. 安全主体的代表(标识用户、组、计算机账户的唯一编码)
      2. 范例: S-1-5-21-1736401710-1141508419-1540318053- 500 (whoami /all 命令)
        1. 第一项“S”表示该字符串是SID
        2. 第二项“1”表示SID的版本号
        3. 第三项“5”表示颁发机构,5是NT
        4. “21-1736401710-1141508419-1540318053”表示一系列的子颁发机构
        5. 第五项,此SID以“500”结尾,表明当前用户是administrator;如果是501的化则是代表Guest的账号
  2. Windows系统用户信息管理
    1. 存储在SAM文件中,系统运行时锁定
    2. 路径:C:\Windows\System32\config\SAM
    3. 操作权限system,依靠系统服务进行访问
    4. 示例如下:Windows密码散列值(LM-Hash)

Administrator:_**500:C8825DB10F2590EAAAD3B435B51404EE :683020925C5D8569C23AA724774CE6CC::**_

  1. 身份鉴别的方式
    1. 本地鉴别
    2. 远程鉴别
  2. Windows远程登录鉴别协议
    windows远程登录协议按如下阶段发展
    1. SMB协议:口令明文传输
    2. LM协议:口令哈希传输,强度低
    3. NTLM协议:提高口令散列加密强度、挑战/响应机制
    4. Kerberos协议:为分部网络提供身份验证协议

三、Linux标识与鉴别

  1. Linux/Unix系统的标识
    1. 安全主体:用户标识号(User ID)id 命令
    2. UID:0—65535的整数
  2. Linux系统用户信息管理
    1. 用户帐号文件
      1. 路径:/etc/passwd
      2. 使用加密算法加密的用户密码散列
      3. 文本格式、全局可读
    2. 影子文件
      1. 路径:/etc/shadow
      2. 存储存放用户密码散列、密码管理信息等
      3. 文本格式,仅对root可读可写
      4. 散列值示例如下

#root:**_$1$acXMce89_**:13402:0:99999:7:::
image.png

  1. Linux远程登录协议
    1. telnet
    2. ssh(telnet的加密传输版本)

四、访问控制

  1. Windows的访问控制
    1. 访问令牌(包含SAD和特权列表),以用户身份运行的进程都拥有该令牌的一个拷贝。
    2. 访问控制列表(ACL),仅NTFS文件系统支持
  2. Windows系统特权管理
    1. 用户控制(UAC,User Account Control)
      1. 标准受限访问令牌
      2. 完全访问令牌
  3. Linux下的访问控制
    1. 需要文件系统格式支持
    2. 权限类型:读,写,执行(UGO管理机制)
    3. 权限表示方式:模式位
  4. Linux文件/目录权限基本概念
    1. 权限类型:读、写、执行
    2. 权限表示方式:模式位
  5. image.png
    1. 权限的数字表示
      1. 读权限(R)——4
      2. 写权限(W)——3
      3. 执行权限(X)——1
  6. Linux系统特权管理
    1. 限制对root使用,su及sudo明了
    2. Suid位:任何用户执行文件运行权限都为文件所有者的权限
  7. 信息道路保护(信道保护)

对信息道路的保护涉及两个方面:

  1. 1. 对显式(正常)信息道路的保护,防止非法或非授权信息经过显式(正常)信道
  2. 1. 堵住隐蔽信道,防止恶意用户通过隐蔽信道
  1. 正常信道的保护
    1. 采用可信道路机制(Trusted Path)可信道路使用安全键为基础实现。
    2. 安全键(SAK)输入机制:安全键是由终端驱动程序检测到的一个特殊按键组合,如Ctrl+Alt+delete
  2. 隐蔽信道保护
    1. 隐蔽信道是指利用系统中那些本来不是用于通信的系统资源,绕过“强制访问控制”进行非法通信的一种机制。
    2. 如何发现隐蔽信道,检查是否存在
      1. 共同访问权限的文件、交互进程、共享内存
      2. 共同修改权限的文件、交互进程、共享内存
      3. 接收进程可检资源的改变,而发送进程有权限改变
      4. 某种机制可启动通信并改变通信事件的顺序

        五、系统审计机制

  1. 系统安全审计概念:对系统中有关安全的活动进行记录、检查以及审核;审计一般是一个独立的过程。
  2. Windows系统的安全审计(通过日志进行审计)

    1. Windows日志(系统日志、应用程序日志、安全日志)
      1. 系统日志:记录操作系统组件产生的事件,主要包括驱动程序、系统组件、应用软件的崩溃,以及数据丢失错误等。
        默认存储路径:%SystemRoot%\System32\Winevt\Logs\System.evtx
      2. 应用程序日志:主要记录程序运行方面的事件,默认存放路径:
        默认存放路径:%SystemRoot%\System32\Winevt\Logs\Application.evtx
      3. 安全日志:记录系统的安全审计事件,包含各种类型的登录日志、对象访问日志、进程追踪日志、特权使用、帐号管理、策略变更、系统事件。
        默认存放路径:%SystemRoot%\System32\Winevt\Logs\Security.evtx
    2. 应用程序和服务日志
      默认存放路径:%WinDir%\System32\LogFiles
    3. 应用访问日志
      1. FTP访问日志
      2. IIS访问日志
    4. Windows日志常见的事件ID | Windows事件ID | 事件类型 | 描述 | | —- | —- | —- | | 4608, 4609, 4610, 4611, 4612, 4614, 4615, 4616 | 系统事件 | 本地系统进程,例如系统启动,关闭和系统时 间的改变 | | 4612 | 清除的审计日志 | 所有审计日志清除事件 |
  3. Linux安全审计(通过日志进行审计)

    1. Linux系统的安全审计(/var/log)
      1. 连接时间日志
      2. 进程统计
      3. 错误日志
      4. 应用程序日志 | 日志文件 | 注释 | | —- | —- | | Access-log | 记录http/web连接 | | Acct/pcct | 记录用户命令 | | boot.log | 记录开机自检过程信息 | | lastlog | 最近成功登录和不成功登录 | | message | 从syslog中记录信息 | | sudolog | 记录sudo发出的命令 | | syslog | 从系统日志中记录信息 | | utmp | 记录当前登录用户信息 | | wtmp | 用户每次登录进入和退出时间 | | xferlog | ftp会话信息 | | maillog | 记录电子邮件活动信息 |

六、内存保护与文件系统保护

  1. 内存保护机制
    1. 进程间/系统进程内存保护
    2. 段式保护、页式保护和段页式保护
  2. 文件系统保护机制
    1. 访问控制列表
    2. Windows加密(EFS、BitLocker)
      1. EFS
      2. BitLocker
    3. Linux(eCryptfs)