操作系统安全概述.ppt
第八章 操作系统安全,8.1 Linux系统8.2 Unix/Linux系统安全8.3 Windows系统8.4 Windows安全机制8.5 Windows系统安全配置,操作系统概述,目前服务器常用的操作系统:UnixLinuxWindows NT/2000/2003 Server。这些操作系统都是符合C2级安全级别的操作系统。都存在很多漏洞,如果对这些漏洞不了解,不采取相应的措施,就会使操作系统完全暴露给入侵者。,8.1 Linux/Unix系统,UNIX操作系统是由美国贝尔实验室开发的一种多用户、多任务的通用操作系统。UNIX诞生于20世纪60年代末期,贝尔实验室的研究人员于1969年开始在GE645计算机上实现一种分时操作系统的雏形,后来该系统被移植到了DEC的PDP-7小型机上。1970年给系统正式命名为Unix。到1973年,Unix系统的绝大部分源代码都用C语言重新编写,大大提高了Unix系统的可移植性,也为提高系统软件的开发效率创造了条件。,主要特色,UNIX操作系统经过20多年的发展后,已经成为一种成熟的主流操作系统,在发展过程中逐步形成了一些新的特色。(1)高可靠性(2)极强的伸缩性(3)网络功能强(4)强大的数据库支持(5)开放性好,Linux系统,Linux是由全世界各地的成千上万的程序员设计和实现的,为了建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。Linux最早开始于名叫Linus Torvalds的计算机爱好者,是芬兰赫尔辛基大学的学生。目的是设计一个代替Minix(是由Andrew Tannebaum教授编写的一个操作系统示教程序)的操作系统。该操作系统可用于386、486或奔腾处理器的个人计算机上,具有Unix操作系统的全部功能。,Linux系统,Linux是一个免费的开源操作系统,用户可以免费获得其源代码,并能够随意修改。在共用许可证GPL(General Public License)保护下的自由软件,有几种版本,如Red Hat Linux、Slackware,以及国内的Xteam Linux、红旗Linux等等。Linux的流行是源于它的优点:,Linux典型的优点,(1)完全免费(2)完全兼容POSIX 1.0标准(3)多用户、多任务(4)良好的界面(5)丰富的网络功能(6)可靠的安全、稳定性能(7)支持多种平台,8.2 Unix/Linux系统安全,Unix/Linux的安全机制,用户标识和身份鉴别每个用户一个唯一的标识符(UID);系统给每个用户组也分配有一个唯一的标识符(GID);登录需要密码口令;文件系统安全 用户:owner/group/other)访问权限:read/write/executable。文件加密Unix用户可以使用crypt命令加密文件,用户选择一个密钥加密文件,再次使用此命令,用同一密钥作用于加密后的文件,就可恢复文件内容 日志审计机制 包括:连接时间日志、进程统计和错误日志。,9,Unix/Linux操作系统安全弱点,用户数据保护机制并不能保证严格安全要求;超级用户成为系统安全瓶颈;缺乏必要的系统审计机制;用户认证方面的要求不够严格;系统自身的完整性保护问题,一旦加载恶意的核心模块,整个系统可能完全被非法控制。,10,Unix/Linux安全配置,合理设置系统的安全级别合理设置用户权限指定主控台及终端登录的限制合理配置/etc/inetd.conf文件合理设置/etc/ftpusers文件合理设置网段及路由不设置UUCP删除不用的软件包及协议正确配置.profile文件创建匿名ftp应用用户同维护用户分开,8.3 Windows系统,1)高效直观的面向对象的图形用户界面,易学易用。2)多任务。3)用户界面统一、友好、漂亮。4)丰富的与设备无关的图形操作。,8.4 Windows安全机制,1.活动目录服务2.认证服务3.加密文件系统4.安全模版5.安全账号管理器,Windows安全子系统,安全子系统包括:WinlogonGraphical Identification and Authentication DLL(GINA)Local Security Authority(LSA)Security Support Provider Interface(SSPI)Authentication PackagesSecurity support providersNetlogon ServiceSecurity Account Manager(SAM),Windows 安全子系统,Winlogon,加载GINA,监视认证顺序,加载认证包,支持额外的验证机制,为认证建立安全通道,提供登陆接口,提供真正的用户校验,管理用户和用户证书的数据库,Windows安全子系统,Winlogon and Gina:Winlogon调用GINA DLL,监视安全认证序列。GINA DLL提供一个交互式的界面为用户登陆提供认证请求。Winlogon在注册表中查找HKLMSoftwareMicrosoftWindows NTCurrentVersionWinlogon,如果存在GinaDLL键,Winlogon将使用这个DLL,如果不存在该键,Winlogon将使用默认值MSGINA.DLL。,Windows安全子系统,本地安全认证(Local Security Authority):它负责以下任务:调用所有的认证包,检查在注册表HKLMSYSTEMCurrentControlSetControlLSA下AuthenticationPAckages下的值,并调用该DLL进行认证(MSV_1.DLL)。在4.0版里,Windows NT会寻找HKLMSYSTEMCurrentControlSetControlLSA 下所有存在的SecurityPackages值并调用。创建用户的访问令牌。管理本地安装的服务所使用的服务账号。储存和映射用户权限。管理审核的策略和设置。管理信任关系。,Windows安全子系统,网络登陆(Netlogon):网络登陆服务必须在通过认证后建立一个安全的通道。要实现这个目标,必须通过安全通道与域中的域控制器建立连接,然后,再通过安全的通道传递用户的口令,在域的域控制器上响应请求后,重新取回用户的SIDs和用户权限。安全账号管理器(Security Account Manager):安全账号管理器,也就是我们经常所说的SAM,它是用来保存用户账号和口令的数据库。不同的域有不同的Sam,在域复制的过程中,Sam包将会被拷贝。,Windows的密码系统,Windows NT及Win2000中对用户帐户的安全管理使用了安全帐号管理器(security account manager)的机制,安全帐号管理器对帐号的管理是通过安全标识进行的,安全标识在帐号创建时就同时创建,一旦帐号被删除,安全标识也同时被删除。安全标识是唯一的,即使是相同的用户名,在每次创建时获得的安全标识都时完全不同的。因此,一旦某个帐号被删除,它的安全标识就不再存在了,即使用相同的用户名重建帐号,也会被赋予不同的安全标识,不会保留原来的权限。,Windows平台上的共享资源,在Windows平台上,共享资源是受攻击的入侵点文件资源的共享打印服务的共享IPC$也是一个共享资源在网络环境下,又离不开共享功能对策使用隐藏共享设置好权限控制,Windows 9x/ME,它本身就不是一个安全的操作系统主要的危险直接连接到共享资源上远程访问注册表安装后门服务程序利用现有服务程序的漏洞拒绝服务本地系统的不安性重新启动口令的不安全,Windows NT,Windows NT是一个安全操作系统虽然已经发现了大量的漏洞但是总算补丁来得很及时两个显著的安全性特点操作系统本身并不提供远程运行代码的能力对于控制台的交互登录权力仅限于少数帐号安全现状对于Windows NT的大量攻击都是通过应用服务器进行的(比如IIS Web Server)。尽快升级到Windows 2000,Windows NT的Administrator,这是攻击者最期望得到的权限手段远程密码猜测找到一个共享点,使用net use命令行Nat工具从NT的认证协议(LanMan、NTLM)着手防护禁止NIC的NetBIOS功能帐户的管理策略:设定lockout功能、强制使用强口令失败类型的审计总是需要的,SAM数据库,SAM:Security Accounts Manager,包含有本地系统或者所控制域上所有用户的用户名和密文形式的密码这是攻击者最感兴趣的部位获取sam数据库,然后进行破解在系统运行期间,sam数据库是上锁的获取sam的手段从另一个文件系统进行拷贝从关键文件的备份中获取压缩之后的sam文件在线提取密码散列值从网络上进行监听破解工具无论是字典破解,还是穷举攻击,往往很奏效两种手段结合起来使用使用syskey保护,IIS服务安全配置,删除无用的脚本映射 IIS 被预先配置为支持常用的文件名扩展如.asp 和.shtm 文件。IIS 接收到这些类型的文件请求时,该调用由 DLL 处理。如果您不使用其中的某些扩展或功能,则应删除该映射,步骤如下:打开 Internet 服务管理器。右键单击 Web 服务器,然后从上下文菜单中选择“属性”。主目录|配置|删除无用的.htr.ida.idq.printer.idc.stm.shtml等,终端服务安全,输入法漏洞造成的威胁,Windows2000的危险服务,剪贴簿查看器Messenger(Net send)Remote Registry Service Server(支持此计算机通过网络的文件、打印、和命名管道共享)Terminal Services(允许多位用户连接并控制一台机器,并且在远程计算机上显示桌面和应用程序。这是远程桌面(包括管理员的远程桌面)、快速用户转换、远程协助和终端服务器的基础结构。),禁止对注册表的远程访问,禁止和删除服务,通过services.msc禁止服务使用Resource Kit彻底删除服务Sc命令行工具Instsrv工具举例OS/2和Posix系统仅仅为了向后兼容Server服务仅仅为了接受netbios请求,针对Windows 的入侵示例,1.探测选择攻击对象,了解部分简单的对象信息。针对具体的攻击目标,随便选择一组IP地址,进行测试,选择处于活动状态的主机;针对探测的安全建议对于网络:安装防火墙,禁止这种探测行为对于主机:安装个人防火墙软件,禁止外部主机的ping包,使对方无法获知主机当前正确的活动状态,针对Windows 2000的入侵过程(一),针对Windows 2000的入侵过程(二),2.扫描使用的扫描软件这里选择的扫描软件是SSS(Shadow Security Scanner),SSS是俄罗斯的一套非常专业的安全漏洞扫描软件,能够扫描目标服务器上的各种漏洞,包括很多漏洞扫描、端口扫描、操作系统检测、账号扫描等等,而且漏洞数据可以随时更新。扫描远程主机 开放端口扫描 操作系统识别 SSS本身就提供了强大的操作系统识别能力,也可以使用其他工具进行主机操作系统检测。主机漏洞分析,扫描结果:端口扫描,可以看出几个比较知名的端口均处于打开状态,如139、80等 尝试使用Unicode漏洞攻击,无效。可能主机已经使用了SP进行补丁或未开放远程访问权限,扫描结果:操作系统识别,结果显示该主机操作系统为Windows 2000,正是我们期望的操作系统类型,扫描结果:漏洞扫描,SSS可对远程主机进行漏洞检测分析,选择合适的攻击入口点,进行远程入侵;该主机存在的漏洞较多,我们可以确定选择该主机作为攻击对象。另外,主机的帐号密码使用的是“永不过期”方式,我们可以在下面进行帐号密码的强行破解,针对Windows 2000的入侵过程(三),3.查看目标主机的信息在完成对目标主机的扫描后,可以利用Windows NT/2000对NetBIOS的缺省信赖,对目标主机上的用户帐号、共享资源等进行检查。这里,再利用Windows2000的IPC空会话查询远程主机,针对Windows 2000的入侵过程(四),4.渗透IIS攻击尝试利用IIS中知名的Unicode和“Translate:f”漏洞进行攻击,没有成功。目标主机可能已修复相应漏洞,或没有打开远程访问权限Administrator口令强行破解 目标主机是一台个人主机,绝大部分情况下,均使用Administrator帐号进行登陆,且个人防范意识较差的话,选择的密码一般都较简单,如“主机名”、“11111”、“12345”之类的简单密码。所以考虑利用NetBIOS会话服务(TCP 139)进行远程密码猜测。这里使用NAT(NetBIOS Auditing Tool)进行强行破解:构造一个可能的用户帐户表,以及简单的密码字典,然后用NAT进行破解。成功,Administrator口令破解情况,针对Windows 2000的入侵过程(五),5.巩固权力现在得到了Administrator的帐户,接下去需要巩固权力添加一个迷惑性的帐户,并加入administrators组,将来通过新帐户进入装载后门装载后门一般的个人主机为防范病毒,均会安装反病毒软件,如Norton Anti-Virus、金山毒霸等,并且大部分人也能及时更新病毒库,而大部分的木马程序在这类软件的病毒库中均被视为Trojan木马病毒。除非一些很新的程序或自己编写的程序才能够很好地隐藏起来我们使用NetCat作为后门程序进行演示,安装后门程序(一),利用刚刚获取的Administrator口令,通过Net use映射对方驱动器,安装后门程序(二),然后将netcat主程序nc.exe复制到目标主机的系统目录下(便于隐藏),可将程序名称改为容易迷惑对方的名字,如rundl132.exe、ddedll32.exe等,利用at命令远程启动NetCat,供我们远程连接使用。还添加了每日运行计划,供以后使用。,安装后门程序(三),远程NetCat服务程序启动后,我们可以在本地进行远程连接,运行命令,这时,我们已经完全控制了这台机器了,针对Windows 2000的入侵过程(六),6.清除痕迹我们留下了痕迹了吗用event viewer看一看没有成功看看它的日志文件无安全日志记录,通过入侵过程来看Win2k的防范,尽量安装防火墙软件,并对安全规则库定期进行更新;及时更新操作系统厂商发布的Service Pack补丁程序;停止主机上不必要的服务,各种服务打开的端口往往成为黑客攻击的入口 使用安全的密码,最起码不要直接使用常见的单词、数字串以及可能暴露的主机信息(比如主机名、用户名等);如果没有文件和打印机共享要求,最好禁止139和445端口上的空会话;经常利用net session、netstat查看本机连接情况,并利用Task Manager查看本机运行的进程,及早发现异常情况;可以利用一些安全工具(如LockDown、BlackICE等)提供的本机程序安全管理功能,监控本机程序的异常状态(主动连接外部陌生的地址),增强主机对木马程序的监控能力;,本章小结,本章主要介绍了Unix/Linux系统、Windows系统的安全机制,并对该系统的安全配置提供了一些建议。了解Unix/Linux系统的安全机制;了解Windows系统的安全机制;掌握Unix/Linux系统的安全配置方法;掌握Windows系统的安全配置方法。,