操作系统安全与系统攻击

操作系统安全与系统攻击

3.1 操作系统安全

操作系统安全机制
◆了解操作系统标识与鉴别、访问控制、权限管理、信道保护、安全审计、内存存取、文件保护等安全机制
操作系统安全配置
◆了解安全补丁、最小化部署、远程访问控制、账户及口令策略、安全审计及其他操作系统配置要点。
操作系统安全目标
◆标识系统中的用户和进行身份鉴别
◆依据系统安全策略对用户的操作进行访问控制,防止用户和外来入侵者对计算机资源的非法访问
◆监督系统运行的安全性
◆保证系统自身的安全和完整性
◆实现目标的安全机制
◆标识与鉴别、访问控制、最小特权管理、信道保护。
◆安全审计、内存存储保护、文件系统保护等
操作系统安全
◆操作系统的标识
◆系统用户在系统中身份的标记,类似于“证件”的作用
◆操作系统的鉴别
◆将用户标识符与用户发生关联的动作,也即“门卫”
◆检查“证件“的过程。
在这里插入图片描述
Windows的主体标识
◆安全标识符( Security Identifier,SlD)
◆安全主体的代表(标识用户、组、计算机、服务等的唯一编码)
◆安全标识符的组成包括:大写字母S、修订级别、颁发机构、第一个颁发子机构、其余颁发机构和相对标识符等。
Windows的用户信息管理
用户数据库
◆在系统中文件体现( C: \windows\system32\config \SAM)
◆密码散列等信息存储在注册表中,格式加密
◆Windows密码散列值示例( Lm-hash)
Administrator: 500: C8825DB10F2590EAAAD3B435B5140
4EE:683020925C5D8569C23AA724774CE6CC…
信息保护
◆SAM文件运行期锁定、无法拷贝、剪切
◆注册表数据操作权限 system,依靠系统服务进行访问
在这里插入图片描述
Windows系统的鉴别
本地签别:本地鉴别组件(GINA、LSA)
◆Winlogon.exe,一个安全进程,用于加载登录组件及用户交互图形界面
◆GINA(图形化识别和验证),提供能够对用户身份进行识别和验证的函数
◆本地安全授权(LSA),从 Winlogon.exe中获取用户的账号和密码,然后经过密码技术处理得到口令散列,并交给SAM服务与存储在用户数据库中的散列进行对比
在这里插入图片描述
远程登录鉴别协议
◆SMB( Server Message Block):口令明文传输
◆LM( LAN Manager):口令哈希传输,强度低
◆NTLM( NT LAN Manager):提高口令散列加
◆密强度、挑战/响应机制
◆Kerberos:为分布网络提供单一身份验证
◆远程鉴别组件
◆调用SAM服务
Linux系统的标识
安全主体
用户标识符(UID)
◆组标识符(GID)
◆用户标识符(UID)

◆UID是 Linux/Uinx系统中唯一的用户标识,在系统内部管理进程和文件保护时使用UID字段
组标识号( Group ID)
◆GID是具有相似属性的多个用户可以被分配到同一个组内,每个组都有自己的组名,且以自己的组标识号相区分。
Linux用户信息管理
用户账户文件(/etc/ passwd)
◆存储用户的登录名、登录的散列、用户ID、登录后使用的Shel等信息
◆使用不可逆DES算法加密的用户密码散列(早期
◆文本格式、全局可读
数据范例
◆demo: x: 523: 100: Jdemo: /home/demo: bin/sh
数据格式
◆name: coded-passwd: UID: GID: userinfo: homedirectory: shell
影子文件
◆etc/shadow
◆存储存放用户密码散列、密码管理信息等
◆文本格式,仅对root可读可写
数据范例
◆#root: 1 1 1acQMceF9: 13402: 0: 99999: 7:
数据格式
◆name: passwd: lastchg: min: max: warn: inactive: expire: flag
Linux系统的鉴别
◆口令鉴别
◆本地登录
◆远程登录( telnet、FTP等)
在这里插入图片描述
Windows的访问控制
安全对象
文件、目录、注册表项、动态目录对象、内核对象(如事件、信号量和互斥)、服务、线程、进程、Windows工作站和桌面等
访问控制机制
◆访可控制列表(ACL),仅NTFS文件系统支持
◆访可令牌(包含SID和特权列表),以用户身份运行的进程都拥有该令牌的一个拷贝
◆授权管理器,用来实现第三方访问控制机制,作为系统访问机制的补充
访问控制列表( Access Control List,ACL)
◆仅NTFS文件系统支持
◆权限存储流文件系统中
◆自主访问控制
◆灵活性高,安全性不高
Windows的特权管理
访问令牌
◆包含SID和特权列表
◆以用户身份运行的进程都拥有该令牌的一个拷贝
◆用户帐户控制(UAC)
◆完全访问令牌
◆标准受限访问令牌
Linux的访问控制
安全对象
◆文件,万物皆文件
访问控制机制
◆访问控制列表(ACL),需要文件系统格式支持
◆权限类型:读、写、执行
◆权限表示方式:模式位(UGO管理机制)
访问控制权限模式
◆文件/目录权限的模式位表示法
在这里插入图片描述
特权管理
◆ Linux继承了传统Unix的特权管理机制,即基于超级用户的特权管理机制。普通用户没有任何特权,而超级用户拥有系统内的所有特权。
◆限制对root使用,普通用户需要超级用户权限通过su、sudo短时间获得root权限。
◆Suid位:任何用户执行文件运行权限都为文件所有者的权限
-r-s–x--x 1 root root 10704 Apr 15 2002/usr/bin/passwd
SUID程序
信道保护
◆正常信道的保护
◆可信通路( Trusted Path)
◆安全键(SAK)
◆隐蔽信道保抑
◆隐蔽信道指利用系统中那些本来不是用于通信的系统资源绕过强制存取控制进行非法通信的一种机制
◆发现隐蔽信道
◆共同访问权限
◆共同修改权限
◆接收进程可检资源的改变,而发送进程有权限改变
◆某种机制可启动通信并改变通信事件的顺序
在这里插入图片描述
安全审计
◆对系统中有关安全的活动进行记录、检查以及审核,一般是一个独立的过程
安全审计目标
◆一是可以对受损的系统提供信息帮助以进行损失评估和系统恢复;
◆二是可以详细记录与系统安全有关的行为,从而对这些行为进行分析,发现系统中的不安全的因素。
◆操作系统的审计记录一般应包括如下信息
◆事件的日期和时间、代表正在进行事件的主体的唯一标识符、事件的类型、事件的成功与失败等。对于标识与签别事件,审计记录应该记录下事件发生的源地点(如终端标识符)
◆Windows系统的安全审计
◆Windows日志(系统、应用程序、安全)
◆应用程序和服务日志(IIS日志等)
◆Linux:系统的安全审计
◆连接时间日志
◆进程统计
◆错误日志
◆应用程序日志
内存保护与文件系统保护
内存保护
◆进程间/系统进程内存保护
◆段式保护、页式保护和段页式保护
◆文件系统保护机制
◆访问控制列表
加密
◆Windows(EFS, Bitlocker)
◆Linux(eCryptfs)
操作系统安全配置
◆安装软件来源
◆官方渠道
◆可靠镜像(哈希)
安装
◆分区设置,不要只设置一个
◆分区
◆安装最新安全补丁或最新版本软件
◆最小化部署,明确需要的功能和组件,不需要的都关闭
帐户安全设置
帐户策略设置
帐户安全选项设置
◆账户安全
◆管理员更名并给予安全的口令
◆来宾账户更名并给予安全的口令
◆安全口令特点
◆自己容易记
◆别人不好猜
◆不安全口令实例:ZAQ!( Wsxzaq12wsx
密码远程暴力破解
◆简单但有效的攻击方式
◆利用人性懒惰的弱点
◆密码策略:避免弱口令
◆密码必须符合复杂性要求
◆密码长度最小值
◆密码最短使用期限
◆密码最长使用期限
◆强制密码历史
◆用可还原的加密来存储密码
◆帐户锁定策略:应对口令暴力破解
◆账户锁定时间
◆账户锁定阈值
◆重置账户锁定计数器
◆设置唤醒计算机时的登录密码
◆设置屏幕保护恢复时的登录密码
用户权限分配
◆从网络访问这台计算机
◆拒绝从网络访问这台计算机
◆管理审核和安全日志
◆从远程系统强制关机
服务运行安全
◆ Windows服务( windows service)
◆Windows服务程序是一个长时间运行的可执行程序,不需要用户的交互,也不需要用户登录
服务安全风险
◆自动启动(三种类型:自动、手动、禁用)
◆运行权限高( system、 Local Service、 Network Service)
◆禁用不需要的服务,例如:
◆计划任务( Task Scheduler)
◆远程操作注册表( Remote Registry)
控制服务权限
◆本地策略
◆审核策略
◆用户权限分配
◆安全选项
◆交互式登录:无须按Ctrl+Alt+Del,设置为已禁用
◆交互式登录:不显示最后的用户名,设置为已启用
◆设备:将CD-ROM的访问权限仅限于本地登录的用户,设置位已启用
◆网络访问:不允许SAM账号的匿名枚举,设置为已启用
◆网络访问:可匿名访问的共享,删除策略设置里的值
◆网络访问:可匿名访问的命名管道,删除策略设置里的值
◆网络访问:可远程访问的注册表路径,删除策略设置里的值
日志及其他安全设置
日志设置
◆日志项、存储空间、访问权限
◆日志服务器
◆安全增强软件
◆防病毒
◆主机入侵检测
◆安全加固软件等
◆针对操作系统特性的设置
◆Windows=关闭共享、自动播放功能
◆ Linux中默认创建文件权限等

3.2 信息收集与系统攻击

◆信息收集
◆理解信息收集的概念及公开渠道信息收集、网络服务、信息收集的方式及防御措施。
◆绶冲区溢出攻击
◆理解冲区溢出的基本概念及危害;
◆理解绶冲区溢出攻击的技术原理及防御措施
信息收集与情报分析
◆信息收集的概念
◆情报学中一个领域
◆传统的信息收集
◆案例:著名的照片泄密案
◆互联网时代的信息收集
◆信息技术的发展使得数据大量被生产出来。
收集哪些信息
◆目标系统的信息系统相关资料
◆域名、网络拓扑、操作系统、应用软件、相关脆弱性
◆目标系统的组织相关资料
◆组织架构及关联组织
◆地理位置细节
◆电话号码、邮件等联系方式
◆近期重大事件
◆员工简历
◆其他可能令攻击者感兴趣的任何信息
公开信息收集搜索引擎
◆快速定位
◆某开源软件 oxx. jsp脚本存在漏洞, Google搜索”xxx. jsp"可以找到存在此脚本的Web网站
◆信息挖掘
◆定点采集
◆Google搜索" doc+website"挖掘信息
◆隐藏信息
◆mdb、.ini、.txt、.old、.bak、.001
◆后台入口
信息收集与分析
网络信息收集
◆正常服务(如 whois)
◆系统功能
◆Ping
◆Tracert
◆Nslookup
◆专用工具
◆系统及应用信息收集
◆服务旗标
◆欢迎信息
◆端口扫描
◆TCP/IP协议栈检测
信息收集与分析的防范
公开信息收集防御
◆信息展示最小化原则,不必要的信息不要发布
网络信息收集防御
◆部署网络安全设备(IDS、防火墙等)
◆设置安全设备应对信息收集(阻止ICMP)
◆系统及应用信息收集防御
◆修改默认配置(旗标、端口等)
◆减少攻击面
严防死守!
系统攻击-绶冲区溢出
◆缓沖区:缓冲区也称堆桟,是一种拙象的数据结构,物理上就是一段连续分配的内存空间
◆缓沖区溢出攻击原理
◆缓冲区溢出攻击利用编写不够严谨的程序,通过向程序的缓绶冲区写入超过预定长度的数据,造成缓存的溢出,从而破坏程序的堆栈,导致程序执行流程的改变
◆缓冲区溢出的危害
◆最大数量的漏洞类型
◆漏洞危害等级高
缓冲区溢出基础堆栈、指针、寄存器
◆堆栈概念
◆一段连续分配的内存空间
◆堆栈特点
◆后进先出
◆堆栈生长方向与内存地址方向相反
◆指针
◆指针是指向内存单元的地址
◆寄存器
◆暂存指令、数据和位址
◆ESP(栈顶)
◆EBP(栈底)
◆ElP(返回地址)
缓冲区溢出简单示例
◆程序作用:将用户输入的内容打印在屏幕上
Buffer.c

#include <stdio. h>
int main{
char name[8]
printf("Please input your name:");
gets(name);
printf("you name is: %s!",name);
return 0;
}

缓冲区溢出简单示例
◆由于返回地址已经被覆盖,函数执行返回地址时会将覆盖内容当作返回地址,然后试图执行相应地址的指令,从而产生错误
在这里插入图片描述
程序溢出堆栈的情况
在这里插入图片描述
缓冲区溢出攻击过程
◆如果可精确控制内存跳转地址,就可以执行指定代码,获得权限或破坏系统
在这里插入图片描述
缓冲区溢出的防范
◆用户
◆安全补丁
◆防火墙
◆开发人员
◆编写安全代码,对输入数据进行验证
◆使用相对安全的函数
◆系统
◆缓冲区不可执行技术
◆虚拟化技术
总结
◆操作系统安全
◆安全机制
◆安全部暑原则
◆信息收集与系统攻击
◆信息收集
◆缓冲区溢出

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sparename

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值