信息安全技术
网络协议安全
ISO/OSI七层模型
-
物理层
- 作用:定义物理链路的前期、机械、通信规程、功能要求等
- 将比特流庄换成电压
- 典型物理层设备:
- 光纤、双绞线、中继器、集线器等
- 常见物理层标准(介质与速率)
- 100base、OV-3、OC-12、DS1等等
-
数据链路层
- 作用:
- 物理寻址,网络图哦不,线路规章
- 错误检测和通告
- 将比特聚成帧进行传输
- 流量控制
- 寻址基址
- 使用数据接收设备的硬件地址(物理地址)寻址
- 典型数据链路层设备
- 网卡、网桥、交换机
- 作用:
-
网络层
- 作用
- 逻辑寻址
- 路径选择 - 寻址机制
- 使用网络层地址进行寻址(如IP地址)
- 网络层典型设备
- 路由器
- 三层交换机
- 作用
-
传输层
- 作用:
- 提供端到端的数据传输服务
- 建立逻辑连接
- 寻址机制
- 应用程序的界面端口
- 传输层协议
- TCP
- UDP SPX
- 作用:
-
会话层
- 作用
- 不同应用程序的数据隔离
- 会话建立,维持,终止
- 同步服务
- 回话控制(单向或双向)
- 作用
-
表示层
- 作用
- 数据格式表示
- 协议转换字符转换
- 数据加密/解密
- 数据压缩等
- 表示层数据格式
- ASCII,MPEG,TIFF,GIF,JPEG
- 作用
-
应用层
- 作用
- 应用接口
- 网络访问流处理
- 流控
- 错误恢复
- 应用层协议
- FTP,Telnet,HTTP,SNMP,SMTP,DNS
- 作用
OSI模型与TCP/IP模型
- OSI采用的七层模型,而TCP/IP是四层结构。
- OSI参考模型中的应用层、表示层、会话层共三层,对应TCP/IP协议模型中的应用层
- OSI参考模型中的传输层对应TCP/IP协议模型中的传输层。
- OSI参考模型中网络层的对应TCP/IP协议模型中的网络层。
- OSI参考模型中的数据链路层、物理层共两层,对应TCP/IP协议模型中的数据链路层。
OSI的体系结构 | TCP/IP的体系结构 |
---|---|
应用层 | 应用层(各种应用层协议) |
表示层 | 应用层(各种应用层协议) |
会话层 | 应用层(各种应用层协议) |
运输层 | 运输层(TCP或UDP) |
网络层 | 网际层IP |
数据链路层 | 网络接口层 |
物理层 | 网络接口层 |
网络接口与互联网层安全
- 主要协议
- ARP
- RARP
- 网络接口层安全
- 损坏、干扰、电磁泄露、搭线窃听、欺骗、嗅探、拒绝服务
传输层与应用层安全
传输层协议-TCP协议
- 传输控制协议:提供面向连接的、可靠的字节流服务
- 提供可靠性服务
- 数据包分块、发送接受确认。超时重发、数据校验、数据包排序、控制流量
传输层协议-UDP协议
-
用户数据报协议:提供面向事务的简单不可靠信息传送服务
-
特点
- 无连接、不可靠
- 协议简单、占用资源少、效率高
-
TCP/UDP通过16bit端口号来识别应用程序
鉴别与访问控制
身份鉴别
概念:
- 标识:标识是实体身份的一种计算机表达,每个实体与计算及内部的一个身份表达绑定
- 鉴别:确定是提示它所声明单位,提供了关于某个实体身份的保证,某一实体确信与之打交道的实体正是所需要的实体
标识和鉴别的作用
- 作为访问控制的一种必要支持,访问控制的执行依赖于确知的身份
- 作为数据源认证的一种方式
- 作为审计追踪的支持
鉴别的基本概念
-
鉴别系统的构成
- 验证者,被验证者,可信赖者
-
基于实体特征的鉴别
- 指纹,掌纹,静脉,面部识别,视网膜虹膜巩膜,语音识别
-
实体特征鉴别的有效性判断
-
基于实体特征鉴别的设备拒绝一个已授权的个人,成为第一类错误,又称为错误拒绝率(False Rejection Rate,FRR)
-
设备接受了一个本应该拒绝的冒名顶替者,称为第二类错误,又称为错误接受率(False Acceptance Rate,FAR)
-
可以通过交叉错误率(Crossover Error Rate,CER)比较设备的整体质量,低 CER 的设备比高 CER 的设备更准确
-
kerberos协议
- 介绍:1985年由美国麻省理工学院开发,用于通信实体间的身份认证,19994年V5版本作为Internet标准草案公布
1.单点登录
单点登录就是指用户只需在网络中进行一次身份认证,便可以访问其授权的所有网络资源,而不再需要其他的身份认证过程,实质是安全凭证在多个应用系统之间的传递或共享
它使用对称密码算法实现通过可信第三方的认证服务
Kerberos 的运行环境由密钥分配中心(Key Distribution Center,KDC)、应用服务器和客户端 3 个部分组成
KDC 提供认证服务(Authentication Server,AS)和会话授权服务(Ticket Granting Service,TGS)
AS 对用户的身份进行初始认证,若认证通过便给用户发放票据授权票据(Ticket Granting Ticket,TGT)
用户使用该票据课访问 TGS,从而获得访问应用服务器时所需的服务票据(Service Ticket,ST)
应用服务器接受用户的服务访问请求,验证用户身份,并向合法用户提供所请求的服务
客户端在用户登录时发送各种请求信息,并接收从 KDC 返回的信息
2.Kerberos 基本认证过程
(1)第一阶段:获得票据许可票据
(2)第二阶段:获得服务许可票据
(3)第三阶段:获得服务
随着用户量的增加,第三方集中认证的方式容易形成系统性能的瓶颈
AAA协议
-
什么是AAA协议
- 认证,授权和计费(Authentication,Authorization,Accounting,AAA)
-
常见的AAA协议
- RADIUS协议
- TACACS协议
- Diameter协议
访问控制
概念
什么是访问控制
- 为用户对系统资源提供最大限度共享的基础上,对用户的访问权进行管理,防止对信息的非授权篡改和滥用
访问控制作用
- 保证用户在系统安全策略下正常工作
- 拒绝非法用户的非授权访问请求
- 拒绝合法用户越权的服务请求
访问控制模型的分类
-
自主访问控制模型(DAC)
- 客体的属主(创建者)决定该课题的访问权限
- 灵活,具有较好的易用性和可扩展性
- 安全性不高
-
访问许可与访问模式
- 访问许可
- 描述主体对客体所具有的控制权
- 定义了改变访问模式的能力或向其他主体传送这种能力的能力
- 访问模式
- 描述主体对客体所具有的访问权
- 指明主题对客体可进行何种形式的特定访问操作:读/写/运行
- 访问许可
-
ACL 可以决定任何一个特定的主体是否可对某一个客体进行访问。它是利用在客体上附加一个主题明细表的方法来表示访问控制矩阵的。表中的每一项包括主体的身份以及对该客体的访问权。
-
目前访问控制表是自主访问控制实现中比较好的一种方法
-
能力(Capabilities)决定用户对客体的访问权限,系统必须对每个用户维护一份能力表,即按行读取访问控制矩阵,表示每个主体可以访问的客体及权限
-
用户可以将自己的部分能力传给其他用户,这样那个用户就获得了读写该文件的能力
-
在用户较少的系统中,这种方式比较好,但一旦用户数增加,便要花费系统大量的时间和资源来维护系统中每个用户的能力表
-
访问许可的类型
-
等级型
-
有主型
- 每个客体设置一个拥有者(一般是客体的生成者),拥有者是唯一有权修改客体访问控制表的主体,拥有者对其客体具有全部控制权
-
自由型
-
强制访问控制模型
-
强制访问控制(Mandatory Access Control,MAC)是主体和客体都有一个固定的安全属性,系统通过比较客体和主体的安全属性,根据已经确定的访问控制规则限制来决定主体是否可访问客体
-
能有效防范特洛伊木马
-
适用于专用或安全性要求较高的系统
BLP模型
Bell-LaPadula 模型,简称 BLP 模型
它是最早也是最常用的一种多级访问控制模型,该模型用于保证系统信息的机密性
BLP 模型基于两个规则保障数据的机密性
简单安全规则
*_规则
- 下读上写
- 不上读:主体不可读,安全级别高于它的客体
- 不下写:主体不可将信息写入安全级别低于它的客体
BLP 模型可有效防止低级用户和进程访问安全级别更高的信息资源,同时,安全级别高的用户和进程也不能向安全级别低的用户和进程写入数据,从而有效地保护机密性
Biba模型
Biba 对系统的完整性进行了研究,提出了一种与 BLP 模型在数学上对偶的完整性保护模型——Biba 模型
Biba 模型基于两条规则确保数据的完整性
即“不下读”
即“不上写”
上读下写
Clark-Wilson 模型
Clark-Wilson 模型是一个确保商业数据完整性的访问控制模型
(1)Clark-Wilson 模型定义
(2)Clark-Wilson 模型分析
Chinese Wall 模型
是一种同等考虑保密性和完整性的访问控制模型,主要用于解决商业应用中的利益冲突问题,它在商业领域的应用与 BLP 模型在军事领域的作用相当
操作系统安全
操作系统安全概述
操作系统功能
- 计算机系统的资源管理者
- CPU管理
- 存储管理
- 设备管理
- 文件管理
- 网络与通信管理
- 用户接口
操作系统安全目标
- 标识系统中的用户和进行身份鉴别
- 依据系统安全策略对用户的操作进行访问控制,防护用户和外来入侵者对计算机资源的非法访问
- 监督系统运行的安全性
- 保证系统自身的安全和完整性
-
(1)Windows 的身份标识与鉴别
- Windows 的安全主体类型主要包括用户账户、组账户、计算机和服务,使用安全标识符(Security Identifier,SID)在系统内部进行标记
本地安全授权机构(LSA)
安全标识符是一串字符串,通常在安全主体创建时生成,由计算机名、当前时间、当前用户态线程的 CPU 耗费时间的总和 3 个参数决定以保证它的唯一性
一个完整的 SID 包括以下内容
用户和组的安全描述
48-bit 的身份特权(ID authority)
修订版本
可变的验证值
Windows 本地用户信息加密存储在注册表中,并且只有 system 账户才有权限进行访问
用户对鉴别信息的操作,例如更改密码等都通过一个以 system 权限运行的服务“Security Accounts Manager”来实现
-
(2)Linux 的身份标识与鉴别
- Linux 使用用户标识号(User ID,UID)来标识和区别不同的用户
在系统内部管理进程和文件保护时使用 UID 字段
系统中可以存在多个拥有不同注册名、但 UID 相同的用户,这些使用不同注册名的用户是同一个用户
Linux 的用户信息存储在 /etc/passwd 中
注册名:口令:用户标识号:组标识号:用户名:用户主目录:命令解释程序 shell
/etc/passwd 是全局可读
Linux 系统使用 shadow 文件机制,将用户口令散列转移到该文件中,shadow 文件只有 root 可读可写,而同时 /etc/passwd 文件的密文域显示为一个 x,从而保护用户口令避免泄露
windows系统安全机制
-
安全主体类型
- 用户账号
- 本地用户
- 域用户
- 组账户
- everyone组
- network组
- 计算机
- 服务
- 用户账号
-
安全表示符(Security Identifier,SID)
- 安全主体的代表(标识用户、组合计算机账户的唯一编码)
例:cmd中输入C:\WINDOWS\system32>sc showsid server
windows用户身份鉴别
- 账号信息存储(SAM:安全账号管理)
- 运行期锁定、存储格式加密
- 仅对System账号有权限,通过服务进行访问控制
windows系统身份鉴别:远程登录
- 远程登录鉴别协议
- SMB(Server Message Block):口令明文传输
- LM(LAN Manager):口令哈希传输,强度低
- NTLM(NT LAN Manager):提高口令散列加密强度、挑战/响应机制
- Kerberos:为分布网络提供单一身份验证
windows文件系统安全
- NTFS文件系统权限控制(ACL)
- 文件、文件夹、注册表键值、打印机等对象
- 安全加密
- EFS(Encrypting File System)
- windows内置,与文件系统高度集成
- 对windows用户透明
- 对称与非对称算法结合
- Bitloker
- 对整个操作系统卷加密
- 解决设备物理丢失安全问题
- EFS(Encrypting File System)
windows系统审计机制
- windows日志
- 系统
- 应用程序
- 安全
- 设置
- 应用程序和服务日志
- 应用访问日志
- FTP访问日志
- IIS访问日志
Linux系统安全机制
Linux系统标识与鉴别-安全主体
- 安全主体
- 用户(User ID)
- 组:身份标识(Group ID)
Linux系统标识与鉴别-账号信息存储
- 信息存储
- 用户信息:
- /etc/passwd
- /etc/shadow
- 组信息
- /etc/group
- etc/gshadow
- 用户信息:
Linux系统身份鉴别
- 口令鉴别
- 本地登录
- 远程登录(telnet、FTP等)
- 主机信任(基于证书)
- PAM(Pluggable Authentication Modules,可插拔验证模块)
Linux文件系统
-
文件系统类型
- 日志文件系统:Ext4、Ext3、Ext2、ReiserFS、XFS、JFS等
-
文件系统安全
- 访问权限
Linux系统的特权管理
-
特权划分
- 分割管理权限,30多种管理特权
- 跟用户(Root)拥有所有特权
- 普通用户特权操作实现
- setuid setgid
-
特权保护:保护root账号
- 不直接使用root邓丽,普通用户su成为root
- 控制root权限使用
安全漏洞与数据库安全
安全漏洞
什么是漏洞
- 也被成为脆弱性,计算机系统天生的类似基因的缺陷,在使用和发展过程中产生意想不到的问题
漏洞的含义
- 漏洞本身随着信息技术的发展而具有不同的含义与范畴
- 基于访问控制的定义逐步发展到涉及系统安全流程、设计、实施、内部控制等全过程的定义
漏洞分类
- NVD:代码注入等21种类型
- CNNVD:根据漏洞形成分成22种类型
漏洞案例与利用
Metasploit平台
关于Metasploit平台介绍请点这里
数据库安全
数据库安全防护
-
数据库面临的安全威胁
- 过度的特权滥用
- 合法的特权滥用
- 特权提升
- 平台及数据库漏洞
- SQL注入
- 不健全的审计
- 拒绝服务攻击
- 数据库通信协议漏洞
- 不健全的认证
- 数据泄漏
-
检查、监控、审计
事前检查
始终监控
事后审计
恶意代码防范
恶意代码发展史
恶意代码分类
按照恶意代码运行平台
按照恶意代码传播方式
按照恶意代码工作机制
按照恶意代码危害
恶意代码传播方式-移动存储
- 自动播放功能
- 自动执行autorun.inf制定的文件
- 最好关闭这个功能
恶意代码传播方式-文件传播
文件感染
软件捆绑
- 强制安装:在安装其他软件是被强制安装上
- 默认安装:在安装其他软件是被默认安装上
恶意代码传播方式-网络传播
将木马伪装成页面元素
利用脚本运行的漏洞
利用社会工程学用一个欺骗人的标题等等方式
或者邮件文件中放置病毒
恶意代码传播方式-主动放置
利用系统提供的上传渠道(论坛贴吧等等)
攻击者已经是获得系统控制权的人
攻击者是系统开发者
恶意代码传播方式-软件漏洞
利用各种系统的漏洞
利用服务漏洞