《操作系统的安全.pptx》由会员分享,可在线阅读,更多相关《操作系统的安全.pptx(56页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、特洛伊木马必须具有以下几项功能才能成功地入侵计算机系统:入侵者要写出一段程序进行非法操作,程序的行为方式不会引起用户的怀疑;必须设计出某种策略使受骗者接受这段程序;必须使受骗者运行该程序;入侵者必须有某种手段回收由特洛伊木马发作而为他带来的实际利益。第1页/共56页(3)隐蔽通道(4)天窗第2页/共56页4.1.2 操作系统的安全服务操作系统的安全服务主要包括以下两个方面。1用户管理的安全性账号/密码的认证方案普遍存在着安全的隐患和不足之处,具体有如下几种。(1)认证过程的安全保护不够健壮,登录的步骤没有进行集成和封装,而是暴露在外,容易受到恶意入侵者或系统内部特洛伊木马的干扰或者截取。第3页
2、/共56页(2)密码的存放与访问没有严格的安全保护。(3)认证机制与访问控制机制不能很好地相互配合和衔接,使得通过认证的合法用户进行有意或无意的非法操作的机会大大增加。2访问控制访问控制系统一般包括以下几个实体。主体(Subject)客体(Object)安全访问政策第4页/共56页访问控制常用的实现方法主要有以下几种。(1)访问控制矩阵(Access Matrix)第5页/共56页File1File2File3JohnOwnRWRAliceROwnRWWBobRWR表4.1访问控制矩阵第6页/共56页(2)访问能力表(Access Capability List)(3)访问控制表(Access
3、 Control List)第7页/共56页图4.1 访问能力表 第8页/共56页 图4.2 访问控制表 第9页/共56页(4)授权关系表(Authorization Relations List)第10页/共56页主主 体体访访 问问 权权 限限客客 体体JohnOwnFile1JohnRFile1JohnWFile1JohnRFile3AliceRFile1AliceOwnFile2AliceRFile2AliceWFile2AliceWFile3BobRFile1BobWFile1BobWFile2表4.2授权关系表第11页/共56页在访问控制策略方面,计算机系统常采用以下两种策略。(1
4、)自主访问控制(Discretionary Access Control,DAC)(2)强制访问控制(Mandatory Access Control,MAC)第12页/共56页4.1.3 操作系统安全性的设计原则与一般结构(1)最小特权(2)机制的经济性(3)开放系统设计(4)完备的存取控制机制(5)基于“允许”的设计原则(6)权限分离(7)避免信息流的潜在通道(8)方便使用第13页/共56页图4.3 安全操作系统的一般结构第14页/共56页4.1.4 安全操作系统的发展状况KSOS(Kernelized Secure Operating System)是美国国防部研究计划局1977年发起的
5、一个安全操作系统研制项目,目标是为PDP-11/70机器开发一个可投放市场的安全操作系统,系统的要求如下:与贝尔实验室的UNIX操作系统兼容;实现多级安全性和完整性;正确性可以被证明。第15页/共56页OSF/1是开放软件基金会于1990年推出的一个安全操作系统,被美国国家计算机安全中心(NCSC)认可为符合TCSEC的B1级,其主要安全性表现如下:系统标识;口令管理;强制存取控制和自主存取控制;审计。第16页/共56页UNIX SVR4.1ES是UI(UNIX国际组织)于1991年推出的一个安全操作系统,被美国国家计算机安全中心(NCSC)认可为符合TCSEC的B2级,除OSF/1外的安全性
6、主要表现如下:更全面的存取控制;更小的特权管理;可信通路;隐蔽通道分析和处理。第17页/共56页DTOS原型系统以Mach为基础,具有以下设计目标。政策灵活性。Mach兼容性。DTOS内核的性能应该与Mach内核的性能相近。第18页/共56页4.2 Windows NT/2000的安全4.2.1 Windows NT/2000的安全模型图4.4 Windows NT/2000的安全模型第19页/共56页1登录过程(Logon Process)2本地安全认证(Local Security Authority,LSA)3安全账号管理器(Security Account Manager,SAM)4安
7、全参考监视器(Security Reference Monitor,SRM)第20页/共56页4.2.2 Windows NT/2000的登录控制1登录过程(1)本地登录过程(如图4.5所示)第21页/共56页图4.5 本地登录过程第22页/共56页 用户按Ctrl+Alt+Del键,引起硬件中断,被系统捕获,这样使操作系统激活WinLogon进程。WinLogon进程通过调用标识与鉴别DLL,将登录窗口(账号名和口令登录提示符)展示在用户面前。WinLogon进程发送账号名和加密口令到本地安全认证(LSA)。第23页/共56页 如果用户具有有效的用户名和口令,则本地安全认证产生一个访问令牌,
8、包括用户账号SID和用户工作组SID。WinLogon进程传送访问令牌到Win32模块,同时发出一个请求,以便为用户建立登录进程。登录进程建立用户环境,包括启动Desktop Explorer和显示背景等。(2)网络登录过程(如图4.6所示)第24页/共56页图4.6 网络登录Windows NT/2000服务器的过程第25页/共56页 用户将用户名和口令输入到网络客户机软件的登录窗口。该客户机软件打开NetBIOS,连接到服务器的NetLogon服务上,该客户机软件对口令加密,发送登录证书到服务器的WinLogon进程。服务器的WinLogon进程发送账号名和加密口令到本地安全认证。第26页
9、/共56页 如果用户具有有效的用户名和口令,则本地安全认证产生一个访问令牌,包括用户账号SID和用户工作组SID。访问令牌也得到用户的特权(LUID),然后该访问令牌传送回WinLogon进程。WinLogon进程将访问令牌传送到Windows NT/2000的Server服务,它将访问令牌与被客户机打开的NetBIOS连接联系起来。在具有访问令牌所建证书的服务器上,可完成任何在NetBIOS连接时所发送的其他操作(如读文件、打印请求等)。第27页/共56页2安全标识符(SID)3访问令牌(1)访问令牌保存全部安全信息,可以加速访问验证过程。当某个用户进程要访问某个对象时,安全子系统检查进程的
10、访问令牌,判断该用户的访问特权。(2)每个进程均有一个与之相关联的访问令牌,因此,每个进程都可以在不影响其他代表该用户运行的进程的条件下,在某种可允许的范围内修改进程的安全特征。第28页/共56页4.2.3 Windows NT/2000的访问控制1Windows NT/2000访问控制Windows NT/2000的安全性达到了橘皮书C2级,实现了用户级自主访问控制,它的访问机制如图4.7所示。第29页/共56页图4.7 Windows NT的客体访问示意图 第30页/共56页 图4.8 安全性描述符的构成 第31页/共56页对访问控制列表判断的规则如下。(1)从访问控制列表的头部开始,检查
11、每个访问控制项,看是否显式地拒绝用户或工作组的访问。(2)继续检查,看进程所要求的访问类型是否显式地授予用户或工作组。(3)重复步骤(1)、(2),直到遇到拒绝访问,或是累计到所有请求的权限均被满足为止。(4)如果对某个请求的访问权限在访问控制表中既没有授权也没有拒绝,则拒绝访问。第32页/共56页2NTFS文件系统(1)文件和目录的权限(2)文件内容的加密第33页/共56页4.2.4 Windows NT/2000的安全管理1用户和用户组2域和委托3活动目录(Active Directory)第34页/共56页下面介绍活动目录的结构和活动目录的安全服务。(1)活动目录的结构提供支持分布式网络
12、环境的多主复制机制。层次式组织 面向对象存储 多主复制(2)活动目录的安全性服务第35页/共56页活动目录使用以下方法增强安全性。通过向网络资源提供单一的集成、高性能且对终端用户透明的安全服务,改进密码的安全性和管理。通过根据终端用户角色锁定桌面系统配置来防止对特定客户主机操作进行访问,保证桌面系统的功能性,例如软件安装或注册项编辑。第36页/共56页 通过提供对安全的Internet标准协议和身份验证机制的内建支持,如Kerberos,公开密钥基础设施(PKI)和安全套接字协议层(SSL)之上的轻量目录访问协议(LDAP),加速电子商务的部署。通过对目录对象和构成它们的单独数据元素设置访问控
13、制特权来控制访问。第37页/共56页4安全审计安全审计图4.9 审计子系统结构图第38页/共56页4.3 UNIX/Linux的安全4.3.1 UNIX用户账号与口令安全1UNIX登录认证机制通过终端登录UNIX操作系统的过程可描述如下:(1)init进程确保为每个终端连接(或虚拟终端)运行一个getty程序;第39页/共56页(2)getty监听对应的终端并等待用户准备登录;(3)getty输出一条欢迎信息(保存在/etc/issue中),并提供用户输入用户名,最后运行login程序;(4)login以用户作为参数,提示用户输入口令;(5)如果用户名和口令相匹配,则login程序为该用户启动
14、shell;否则,login程序退出,进程终止;(6)init进程注意到login进程已终止,则会再次为该终端启动getty程序。第40页/共56页2UNIX的口令文件各字段的含义分别如下。(1)登录名。(2)加密口令。(3)用户标识号(User ID,UID)(4)组标识(Group ID,GID)(5)登录名的说明(6)用户的主目录位置。(7)用户的命令行解释器(shell)。第41页/共56页3UNIX操作系统的口令安全安全的口令应遵循以下的规则。(1)选择长的口令,口令越长,黑客猜中的概率就越低。(2)口令最好是英文字母和数字的组合。(3)不要使用英语单词,因为很多人喜欢使用英文单词作
15、为口令,口令字典收集了大量的口令,有意义的英语单词在口令字典出现的概率比较大。第42页/共56页(4)用户若可以访问多个系统,则不要使用相同的口令。(5)不要使用名字作为口令,如自己的名字,家人的名字,宠物的名字等。(6)别选择记不住的口令,这样会给自己带来麻烦,用户可能会把它放在什么地方(7)使用UNIX安全程序第43页/共56页4.3.2 UNIX的文件访问控制1文件(或目录)访问控制图4.10 文件存取权限示意图第44页/共56页2更改权限3特殊权限位4.3.3 UNIX安全的管理策略1系统管理员的安全管理第45页/共56页以下是一些系统管理员的安全管理策略。(1)保持系统管理员个人的登
16、录安全 不要作为root或以自己的登录账户运行其他用户的程序,首先用su命令进入用户的账户。绝不要把当前工作目录放在PATH路径表的前边,那样会吸引特洛伊木马。输入/bin/su执行su命令。第46页/共56页 不要未注销账户就离开终端,特别是作为root用户时更不能这样。不允许root在除控制台外的任何终端登录(这是login编译时的选项),如果有login源码,就将登录名root改成别的名字,使破坏者不能在root登录名下猜测各种可能的口令,从而非法进入root的账户。经常改变root的口令。确认su命令记下的企图运行su的记录/usr/adm/sulog,该记录文件的存取权限是600,并
17、属root所有。不要让系统管理员以外的人作为root登录,哪怕是几分钟,即使有系统管理员在一旁注视着也不行。第47页/共56页(2)保持整个系统的安全 保持账号安全。保持口令安全。设置口令时效。保持文件系统安全。启动记账系统。查出不寻常的系统使用情况,如大量地占用磁盘、大量地使用CPU时间、大量的进程、大量地使用su的企图、大量无效的登录、大量的到某一系统的网络传输或奇怪的uucp请求等。第48页/共56页 修改shell,使其等待了一定时间而无任务时终止运行。修改login,使其打印出用户登录的最后时间,三次无效登录后,将通信线挂起,以便系统管理员能查出是否有人非法进入系统。修改su,使得只
18、有root能通过su进入某一户头。当安装来源不可靠的软件时,要检查源码和makefile文件,查看特殊的子程序调用或命令。第49页/共56页为了系统的安全,还应该注意以下事项。(1)即使是安装来源可靠的软件,也要检查是否有SUID(SGID)程序,确认这些许可的确是必要的。(2)如果系统在办公室中,门应上锁,将重要数据保存在软盘上或磁带上,并锁起来。(3)如果系统管理员认为系统已经泄密,则应当设法查出肇事者。第50页/共56页2用户的安全管理(1)保证用户口令的安全。(2)防止用户自己的文件和目录被非授权读写。(3)防止运行特洛伊木马。(4)用crypt命令加密不愿让任何用户(包括超级用户)看
19、到的文件。(5)在离开终端时,确保用Ctrl+D或Exit命令退出系统。第51页/共56页4.3.4 UNIX网络服务的安全管理1网络访问控制(1)关闭不必要的服务(2)有选择地允许主机建立连接第52页/共56页2一些常用网络服务的安全性(1)FTP服务(2)Telnet服务(3)用户等价和主机等价(4)NFS服务(5)NIS服务第53页/共56页图4.11 攻击NIS原理第54页/共56页4.3.5 UNIX的安全审计这些日志可分为以下3类。(1)连接时间日志,由多个程序执行。(2)进程统计日志,由系统内核执行。(3)错误日志,由syslogd执行。第55页/共56页感谢您的观看!第56页/共56页