摘要
第四章 系统安全
通过对第四章的自学学习,我学到了:
操作系统:是一组管理与控制计算机软件、硬件资源,为用户提供便捷计算服务的计算机系统的集合。
计算机的功能:进程管理,内存管理,设备管理,文件管理,用户接口
操作系统的安全威胁:非法用户或假冒用户侵入系统,数据被非法破化或者数据丢失,不明病毒的破坏和黑客入侵,操作系
统运行不正常
操作系统的脆弱性:操作系统的远程调用和系统漏洞,进程管理体系存在的问题
操作系统的常见漏洞:空口令或弱口令,默认共享密钥,系统组件漏洞,应用程序漏洞
CPU的运行模式:
内核模式:也称为特权模式,在Intel x86系列中,称为核心层
用户模式:也称为非特权模式,或者用户层
安全级别:
D类(无保护级)是最低的安全级别,这种系统不能在多用户环境下处理敏感信息。
C类为自主保护级别,具有一定的保护能力,采用的安全措施是自主访问控制和审计跟踪。C类分为C1和C2两个级别:自主安全保护级别(C1级)和控制访问保护级别(C2级)。
B级为强制保护级别,主要要求是TCB应维护完整的安全标记,并在此基础上执行一系列强制访问控制规则。B类分为三个级别:标记安全保护级(B1级)、机构化保护级(B2级)和安全区域保护级(B3级)。
B3级系统支持如下方面:
安全管理员职能
扩充审计机制
当发生与安全相关的事件时,发出信号
提供系统恢复机制
系统具有很高的抗渗透能力
A类分为2个级别:验证设计级(A1级)、超A1级。
超A1级系统涉及的范围包括:系统体系结构、安全测试、形式化规约与验证、可信设计环境。
Windows 安全子系统
- 系统登录控制流程(Winlogon)
2.安全账号管理器(SAM)
3.本地安全认证(LSA)
4.安全引用监控器(SRM)
有线可移动终端:指U盘、移动硬盘等需要数据线来和电脑连接的设备。
无线移动终端:指利用无线传输协议来提供无线连接的模块。
移动终端面临的安全问题:敏感信息本地存储,网络数据传输,应用安全问题,恶意软件,系统安全问题
应用层:即直接为用户提供服务的应用软件。
框架层:Android系统的核心部分,由多个系统服务组成。
运行时:Android平台的运行时由Java核心类库与Dalvik虚拟机共同组成。
内核层:Linux内核层是Android系统的最底层。
iOS平台的安全机制:权限分离,强制代码签名,地址空间随机布局,沙盒
逆向工程:通过反汇编、反编译等手段从应用程序的可执行文件中还原出程序原代码的过程。
逆向工程可以划分为系统分析和代码分析两个阶段。
在系统分析阶段,通过观察程序正常运行的流程,分析程序各组件行为特征来建立对程序架构逻辑的初步框架。
在代码分析阶段,主要是通过以下几点,对程序的二进制文件进行分析。
发现安全漏洞,检测恶意代码,病毒木马分析
逆向工程主要有两个作用:攻破目标系统,拿到关键信息,可以归类于与安全相关的逆向工程。
借鉴他人的程序功能来开发自己的软件,可以归类于与开发相关的逆向工程。
在iOS系统中,应用程序的可执行文件为Mach-O格式;在Android系统中,这个文件是dex文件格式。
Android平台逆向工程
基于Android平台的应用软件经由开发者编写之后,会通过编译、压缩等过程生成一个Android Package,即通常所说的apk安装包。
将一个apk文件的后缀改为.zip,解压缩后即可看到apk中所包含的内容。一般情况下,apk文件包中会包含以下文件:
AndroidMainifest.xml文件:应用程序全局配置文件,包含了对组建的定义和应用程序的使用权限。
res文件夹:用于存放资源文件的resources文件夹。
classes.dex文件: Android 系统中的应用程序可执行文件。
Resources.arsc: 经过编译的二进制资源文件。
META-INF文件夹:存储签名相关的信息。
AndroidPackage中的文件是对Android平台应用进行安全审计的基础。
对classes.dex的简要分析方式:
对可执行文件进行反汇编,分析生成的Davik字节码。
使用Apktool或Baksmali生成smali文件进行阅读。
使用DDMS等工具监控Android程序的运行状态,对Android程序进行动态调试。
为防止应用软件被Android逆向工程,可以采用以下几种防护措施:
代码混淆:可以使用ProGuard对Java代码进行混淆,增加反编译后代码阅读的难度。
加壳:通过为apk增加保护外壳的方式,保护其中的代码,增加非法修改和反编译的难度。
调试器检测:在代码中添加检测动态调试器的模块,当程序检测到调试器依附时,立即终止程序运行。
iOS平台逆向工程
与AndroidPackage对应,在iOS平台下也有对应的IPA文件。IPA文件本质上是个zip压缩包。
IPA文件包含的内容:
Info.plist 是分析一个iOS应用的人口,记录了一个APP的基本信息。
Executablefile,即APP可执行文件的名称。
可执行文件是IPA的核心文件,也是逆向工程的主要分析目标。在iOS中,可执行文件为Mach-O格式。Mach-O是iOS系统以及MacOSX系统中主要的可执行文件格式。在IPA文件目录下,还存放有resource(资源文件夹)、.Iproj(语言国际化文件夹)、_CodeSignature(代码签名)和其他文件,对逆向分析有较大的帮助。
常用的iOS逆向分析工具有以下几种:
Dumpcrypt: 对从AppStore中下载的应用进行脱壳操作。由于大部分iOS应用只有AppStore作为唯一的下 载渠道,因此对ios应用进行脱壳比较简单。
class-dump:通常在逆向工程初始阶段使用class-dump。使用该工具可以从Mach-O文件中获取应用程序的类信息,并生成对应的.h文件。通过class dump获取的信息,可以快速辅助搭建APP源代码的大致框架。
IDAPro 与HopperDisassembler:知名的反汇编工具,用于对可执行文件进行精准
而细致的静态分析,转化为接近源代码的伪代码。
GDB与LLDB:与静态分析相对应,这两款工具通过动态调试的方式对程序进行
更深入透彻的分析。
Cycript: 通过进程注人的方式依附运行中的iOS程序,并可以使用JavaScript语法程序进行测试。
虚拟化技术的分类:
1.按应用分类:操作系统虚拟化,应用程序虚拟化,桌面虚拟化,存储虚拟化
2.按照应用模式分类:一对多,多对一,多对多
3.按硬件资源调用模式分类:全虚拟化,半虚拟化,硬件辅助虚拟化
4.按运行平台分类:X86平台,非X86平台
虚拟化环境中的安全问题:虚拟机逃逸,虚拟化网络环境风险,虚拟机镜像和快照文件的风险,虚拟化环境风险
认证问题:认证涉及决定在虚拟化解决方案的哪一层需要独立认证机制以及选择、实施、维护这些机制。
密码问题:与密码相关的决策包括选择在虚拟化通信中进行加密和完整性保护的算法、为支持多密钥长度的算法设定密钥强度。
第七章第二节 云安全
虚拟机:指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,具有封装性、 独立性、隔离性、兼容性,且独立于硬件。
云:云是一种比喻说法,是一个计算资源池,通常为一些大型服务器集群,每一群包括了几十万台甚至上百万台服务器,是一种为提供服务而开发的整套虚拟环境。
云分类:从技术架构可以分为三层,即服务软件,平台即服务和基础设施
从云面向的对象可以分为公有云、私有云和混合云。
云计算:一种计算方法,即将按需提供的服务汇聚成高效资源池(包括网络、服务器、存储、应用软件、服务),以服务的形式交付给用户使用。
云服务:在云计算环境下的服务交付模式,是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展的资源,云服务提供的资源通常是虚拟化的资源。
云主机:云计算在基础设施应用上的重要组成部分,处于云计算产业链金字塔的底层。云主机是在一组集群主机上虚拟出的多个类似独立主机,集群中每个主机上都有云主机的一个镜像,拥有自己的操作系统,完全不受其他主机的影响。
云安全:一个从云计算衍生而来的新名词,是指云及其承载的服务,可以高效、安全的持续运行。
新技术带来的安全风险:可控性, 动态性,虚拟机逃逸
集中化安全挑战:
云数据中心安全防护方面存在网络结构的规划与设计,系统的识别与迁移,权限集中等问题。
云平台管理员存在权限滥用风险。
用户的安全隔离。
资源池内用户抢夺资源和恶意攻击等。
云安全建设:需要从六大层面考虑, 包括物理层、网络层、主机层、应用层、虚拟化层和数据层。
物理安全方面需要考虑门禁、消防、温湿度控制、电磁屏蔽、防雷、环境监控系统等方面的信息安全建设防护。
网络安全的安全建设通过FW、IDS/IPS.DDoS、VPN等方式去实现,举例说明产品功能如下:
FW:通过防火墙实现安全隔离。
IDS/IPS: 部署入侵防御系统,通过日志监控、文件分析、特征扫描等手段提供账号暴力破解、WebShell查杀等防入侵措施。
DDoS:防DDoS清洗系统可抵御各类基于网络层、传输层及应用层的各种DDoS攻击,并实时短信通知网站防御状态。
VPN:建立安全通道,保证用户访问数据的信息进行保密性、完整性和可用性。
主机安全需要考虑终端安全、主机安全、系统完整性保护、OS 加固、安全补丁、病毒防护等方面的信息安全建设防护。
虚拟化安全建设可以通过虑虚拟化平台加固、虚拟机加固与隔离、虚拟网络监控、恶意VM预防、虚拟安全网关VFW/VIPS等多方面去进行技术实现。
VFW/VIPS是虚拟化防火墙与虚拟化入侵防御系统,能提供全方位的云安全服务,包括访问控制、流量及应用可视化、虚机之间威胁检测与隔离,网络攻击审计与溯源等。
应用安全建设可以考虑通过多因素接人认证、WAF、安全审计等技术实现,其中:
WAF: Web应用防火墙安全防护,能有效拦截SQL注人、跨站脚本等类型的Web攻击,提供高危0day漏洞24小时快速响应服务。
安全审计:制定并持续优化信息安全审计规则,依此对信息系统及应用操作进行记录和审计,对违规行为和异常操作进行分析和预警,生成安全审计报告。
数据安全可以从数据访问控制、DB-FW、镜像加密、数据脱敏、剩余信息保护、存储位置要求等方面进行信息安全建设防护。