第四章 系统安全
构成网络的基础是众多硬件设备和控制这些硬件设备的软件系统,系统是计算机设备的灵魂。
4.1 操作系统概述
操作系统(OS)是一组管理与控制计算机软,硬件资源,为用户提供便捷计算服务的计算机程序的集合。
计算机操作系统的功能:
进程管理
内存管理
设备管理
文件管理
用户接口
4.2 操作系统安全
4.2.1 操作系统的安全威胁与脆弱性
1.操作系统的安全威胁
1)非法用户或假冒雍和用户入侵系统
诈骗,收买,窃取用户信息,黑客软件
2)数据被非法破坏或者数据丢失
3)不明病毒的破坏和黑客的入侵
4)操作系统运行不正常
计算机运行速度减慢,卡顿
2.操作系统脆弱性
1)操作系统的远程调用和系统漏洞
通过远程调用来非法入侵系统和破坏正常的网络结构,黑客攻破防火墙,或者窃取,破译密码之后,畅通无阻地向远程主机上写入数据和调用系统过程,即遥控了主机。
2)进程管理体系存在问题
黑客把间谍软件通过某种方法传输给远程服务器或客户机
操作系统常见漏洞
1)空口令或弱口令
2)默认共享密钥
3)系统组件漏洞
4)应用程序漏洞
4.2.2 操作系统中常见的安全保护机制
1.进程隔离和内存保护
MMU模块分配进程运行所需要的内存空间,进程隔离与内存保护机制为每个进程提供相互独立的运行空间。
2.运行模式
现代CPU的运行模式通常分为内核模式与用户模式
1)内核模式:特权模式
2)用户模式:非内核模式
3.用户权限控制
系统管理员用户,普通用户,访客用户
系统管理员用户:全部权限
普通用户:只能操作自己的文件,软件
访客用户:只能读部分文件
4.文件系统访问控制
操作系统对磁盘中存储的文件进行严格的访问控制,操作系统通过对文件的操作权限进行限制来实现文件的访问控制机制
4.2.3 操作系统的安全评估标准
A,B,C,D四类7个安全级别,共27条评估准则
D组 MS-DOS,只有一个级别,无保护级
C1级TCB,处理同一敏感级别的多用户环境。
C2级:单个用户为其行为负责
B级为强制保护级
B1:标记安全保护级
B2:机构化保护级
B3:安全区域保护级
A级为验证保护级,包含严格的设计,控制和验证过程
A级分为验证设计级A1,超A1
4.2.4 常用的操作系统及其安全性
1.Windows系统安全
Windows系统的安全性以Windows安全子系统为基础,辅以NTFS文件系统,Windows服务于补丁包机制,系统日志等,形成了完整的安全保障体系。
1)Windows安全子系统
Windows安全子系统位于Windows操作系统的核心层,是Windows系统安全的基础。
系统登录控制流程
安全账户管理器
本地安全认证
安全引用监控器
2)NTFS文件系统
提高文件系统功能的同时,提高了安全性
3)Windows服务包和补丁包
四种系统漏洞解决方案
Windows update
SUS
SMS
WUS
4)Windows系统日志
正确设置和管理系统用户账户
安全管理系统对外的网络服务
启用Windows系统日志功能,并对日志文件进行保护
2.Linux系统
Linux系统的安全机制
1)RAM机制
在应用程序中插入新的鉴别模块,而不必对应用程序做修改,从而使软件的定制,维持和升级更加轻松。
2)加密文件系统
3)防火墙
Linux系统安全防范及设置
1)Linux引导程序安全设置
2)防止使用组合键重启系统
3)安全登录,注销
4)用户账号安全管理
5)文件的安全
6)资源使用的限制
7)清除历史记录
8)系统服务的访问控制
9)系统日志安全
10)关闭不必要的服务
11)病毒防范
12)防火墙
13)使用安全工具
14)备份重要文件
15)升级
16)Rootkit安全防范
Rootkit的组成
以太网嗅探器程序
隐藏攻击者的目录和进程的程序
一些复杂的Rootkit还可以向攻击者提供telnet,shell和finger等服务
一些用来清理/var/log和/var/adm目录中其他文件的脚本
防范和发现Rootkit
不在网络上使用明文传输密码,使用Tripwire和aide等检测工具能够及时地发现攻击者的入侵,它们能够提供系统完整性的检查。
使用chkrootkit检查
4.3 移动终端安全
4.3.1 移动终端的概念及其主要安全问题
1.移动终端的概念
1)有线可移动终端:指U盘,移动硬盘等需要用数据线来和电脑连接的设备
2)无线移动终端:利用无线传输协议来提供无线连接的模块
一方面,任何一种系统或平台都有其自身的脆弱性;另一方面,移动终端上由大量应用,其中不少应用在上线之前由于各种原因并没有经过严格的安全性测试,导致存在严重的安全隐患。
2.移动终端面临的安全问题
敏感信息本地存储,网络数据传输,恶意软件,应用安全,系统安全问题
1)敏感信息本地存储
很多应用为了相应的功能需求,会将用户的敏感信息存储在移动终端本地的文件系统中
2)网络数据传输
中间人劫持,伪造证书,获取并解密通讯中传送的数据
3)应用安全问题
4)恶意软件
恶意软件可能伪装成用户熟知的应用,或者与其他应用捆绑在一起诱导用户安装
只从官方下载开发工具,避免应用在开发阶段遭受恶意代码污染
5)系统安全问题
厂商应该对系统各个部件进行深入的漏洞挖掘,当发现漏洞或者接受到漏洞提交时,应当积极相应尽快修补漏洞
4.3.2 Android平台及其安全
1.认识Android平台
2.Android的平台特性
Android系统是基于Linux的开源操作系统
4.3. 应用层
框架层
运行时
Linux内核层
3.Android平台的安全问题
Android系统允许用户直接访问文件系统
4.ROOT的危害
在ROOT之后,病毒将绕过Android系统的权限,直接在ROOT权限下允许。
Android手机ROOT之后最主要的一个影响就是不能通过官方进行系统升级。
5.恶意软件的威胁
恶意软件可能在用户不知情的情况下执行信息窃取,偷跑流量话费,后台静默安装其他应用
4.3.3 ios平台及其安全
1.认识ios平台
ios由于其封闭的开发环境和相对完善的安全机制使其系统的受攻击面大大缩小。
2.ios平台的安全机制
权限分离
强制代码签名
地址空间随机布局
沙盒
3.XcodeGhost事件分析
1)上传用户信息
2)应用内弹窗
3)通过URLScheme执行其他操作
从开发环境入手在编译阶段植入恶意代码
4.3.4 移动系统逆向工程和调试
1.移动终端逆向工程概述
逆向工程,是通过反汇编,反编译等手段从应用程序的可执行文件中还原出程序原代码的过程。
1)发现安全漏洞
2)检测恶意代码
3)病毒木马分析
2.Android平台逆向工程
对apk文件进行审计可以发现应用中潜在的某些安全问题
将一个apk文件的后缀改为.zip,解压缩后即可看到apk中所包含的内容
1)对可执行文件进行反汇编,分析生成的Darvik字节码
2)使用Apktool或Baksmali生成smali文件进行阅读
3)使用DDMS等工具监控Android程序的运行状态,对Android程序进行动态调试
代码混淆
加壳
调试器检测
3.ios平台逆向工程
IPA文件本质上也是一个zip压缩包
4.4 虚拟化安全
4.4.1 虚拟化概述
虚拟化技术可以支持让多个虚拟的计算机在同一物理设备上运行
4.4.2 虚拟化技术的分类
1.按应用分类
操作系统虚拟化
应用程序虚拟化
桌面虚拟化
存储虚拟化,网络虚拟化
2.按照应用模式分类
一对多
多对一
多对多
3.按硬件资源调用模式分类
全虚拟化
半虚拟化
硬件辅助虚拟化
4.按运行平台分类
X86平台
非X86平台
4.4.3 虚拟化环境中的安全威胁
1)虚拟机逃逸
2)虚拟化网络环境风险
3)虚拟机镜像和快照文件的风险
4)虚拟化环境风险
4.4.4 虚拟化系统的安全保障
1.Hypervisor安全
2.Guest OS 安全
3.虚拟化基础设施安全
4.规划和部署的安全
1)规划
2)设计
3)实施
物理到虚拟的转化
监控方面
实施的安全性
运维
7.2 云安全
7.2.1 云的相关概念
1.云
2.云计算
3.云服务
4.云主机
5.云安全
7.2.2 云面临的安全挑战
1.新技术
1)可控性
2)动态性
3)虚拟机逃逸
2.集中化
1)云数据中心安全防护方面存在网络结构的规划与设计,系统的识别与迁徙,权限集中等问题
2)云平台管理员存在权限滥用风险
3)用户的安全隔离
4)资源池内用户抢夺资源和恶意攻击等
3.合规性
4.运维管理
运维情况不透明,运维账号共享,云服务器和云数据库租户多,运维效率低
7.2.3 云环境下的安全保障
1.云安全标准
2.云安全建设
1)物理安全
2) FW
IDS/IPS
DDoS
VPN
3)主机安全需要考虑终端安全,主机安全,系统 完整性保护,OS加固,安全补丁,病毒防护等方面的信息安全建设防护
4)虑虚拟化平台加固,虚拟机加固与隔离,虚拟网络监控,恶意VM预防,虚拟安全网关VFW/VIPS等多方面去进行技术实现
5)多因素接入认证,WAF,安全审计等技术实现
6)数据安全可以从数据访问控制,DB-FW,镜像加密,数据脱敏,剩余信息保护,存储位置要求等方面进行信息安全建设防护
动态过程