第1章计算机信息系统安全概述1.1计算机信息系统的定义1.2计算机信息系统安全简介1.2.1计算机信息系统安全的定义1.2.2信息系统自身的安全脆弱性1.2.3对信息系统安全的威胁1.3Windows信息系统安全机制简介1.3.1Windows2000安全机制简介1.3.2SQLServer2000安全机制简介1.4Windows信息系统面临的安全威胁1.4.1安全威胁之系统破解1.4.2安全威胁之计算机病毒1.4.3安全威胁之恶意攻击1.1计算机信息系统的定义信息系统是指用于采集、处理、存储、传输、分发和部署信息的整个基础设施、组织结构、人员和组件的总和。信息系统(InformationSystem)是指由计算机及其相关和配套的设备、设施(含网络)构成的,按照一定的应用目标和规则对信息进行采集、加工、存储、传输、检索等处理的人机系统。1.2计算机信息系统安全简介1.2.1计算机信息系统安全的定义信息系统安全定义为:确保以电磁信号为主要形式的、在计算机网络化(开放互联)系统中进行自动通信、处理和利用的信息内容,在各个物理位置、逻辑区域、存储和传输介质中,处于动态和静态过程中的机密性、完整性、可用性、可审查性和抗抵赖性,与人、网络、环境有关的技术安全、结构安全和管理安全的总和。1.2.2信息系统自身的安全脆弱性1.硬件组件2.软件组件3.网络和通信协议信息系统硬件组件的安全隐患多来源于设计,主要表现为物理安全方面的问题。软件组件的安全隐患来源于设计和软件工程中的问题。(1)缺乏对用户身份的鉴别(2)缺乏对路由协议的鉴别认证(3)TCP/UDP的缺陷1.2.3对信息系统安全的威胁1.基本威胁(1)信息泄露(2)完整性破坏(3)服务拒绝(4)未授权访问2.威胁信息系统的主要方法(1)冒充(2)旁路控制(3)破坏信息的完整性攻击者可以从以下三方面破坏信息的完整性:篡改:改变信息流的次序、时序、流向、内容和形式。删除:删除消息全部或其中一部分。插入:在消息中插入一些无意义的或有害的消息。(4)破坏系统的可用性(5)重放(6)截取和辐射侦测(7)陷门(8)特洛伊木马(9)抵赖3.威胁和攻击的来源(1)内部操作不当(2)内部管理不严造成系统安全管理失控(3)来自外部的威胁和犯罪①黑客②信息间谍③计算机犯罪1.3Windows信息系统安全机制简介1.3.1Windows2000安全机制简介WindowsNT4.0的不足WindowsNT应用于企业级服务时,如果不使用那些繁冗的附加软件产品,便无法提供分布式SSO(单点登录)服务。委派功能(将针对限定账号集合的有限管理优选权指派给另一用户的能力)则更是少得可怜。同样无法借助平面化WindowsNT域就组织层次和管理结构进行适当规划。WindowsNT4.0也没有为和用户账号有关的应用程序专用信息提供存储位置。而WindowsNT所具备的PKI功能(最多只能算雏形状态)则仅被限定于Web环境,并只能面向基于MicrosoftExchangeServer的通信任务提供部分支持,但PKI功能本身却没有实现全面集成化。首先,Microsoft在围绕Win2K展开设计工作的过程中,秉承了多项旨在弥补WindowsNT4.0自身缺陷的技术意图,该公司将这种操作系统定位于终极电子商务支持平台。其次,Win2K在很大程度上依赖于行业标准和相关协议。再次,Microsoft还需要提供一个有助于降低应用程序开发成本的软件系统平台。最后,为应对电子商务所提出的挑战,Win2K已具备了在整个操作系统内面向PKI提供技术支持的能力。1.AD组件AD堪称Win2K操作系统的旗舰级组件,主要用来克服WindowsNT4.0在目录功能方面存在的伸缩性、扩展性、开放性和管理能力问题。AD为操作系统存储账号及控制策略信息。AD依赖操作系统控制对AD对象的访问。操作系统对AD中对象强制实施许可进入。操作系统的授信信息存放在AD中。2.CryptoAPI组件CryptoAPI的设计目标在于,面向基于使用可安装加密服务提供程序之操作系统的全部应用程序及其他相关组件提供针对低级加密服务的一站式“采购”模式ApplicationsCertificateServerSmartCardServiceEFSAuthenticodeSecureChannelExchangeKMCSPCryptoServiceCertificateManagementServiceCryptoAPICryptoAPI为应用程序提供一站式“采购”服务3.证书服务器证书服务器,主要用来针对证书的申请、签发、公布和管理任务提供CA所应具备的基本功能特性。证书服务器可面向ExchangeServer提供许可证码身份验证和安全MIME(S/MIME)集成特性。管理人员必须为针对证书服务器配置实施操控而以手工方式就文本文件进行编辑。证书服务器缺乏对于PKI企业级使用需求来说是至关重要的管理特性。证书服务器具备在其他第三方目录中实现证书发布的能力。4.身份验证服务SSPI(SecuritySupportProviderInterface)将通过另一种API提供身份验证服务。客户端/服务器应用程序不仅需要对访问服务器的客户端执行身份验证,而且,有时甚至需要对访问客户端的服务器实施验证。SSPI在身份验证服务中所扮演的角色5.加密服务Win2K所配备的EFS则允许你仅仅通过选中一个复选框的简单操作即可在文件系统层对相关文件进行加密。EFS可借助面向用户和应用程序的完全透明度对加密和解密任务进行处理。Win2K主要凭借IPSec面向用户和应用程序提供充分透明度,进而跨越网络系统对数据资料加以保护。IPSec可面向TCP/IP通信提供身份验证、机密性、数据完整性和筛选服务。IPSec’sPlaceintheWin2KArchitecturePoliciesHashingEncryptionKeygenerationIPSecActiveDirectoryCryptoAPIIPSec在Win2K体系结构中所处位置1.3.2SQLServer2000安全机制简介SQLServer是Microsoft公司开发的大型数据库软件,Microsoft为SQLServer建立了一种既灵活又强大的安全管理机制,SQLServer的安全机制是与下层的Win2K操作系统结合在一起的,它能够对用户访问SQLServer服务器系统和数据库的安全进行全面的管理。1.验证方法选择验证是指检验用户的身份标识;授权是指允许用户做些什么。构造安全策略的第一个步骤是确定SQLServer用哪种方式验证用户。2.Web环境中的验证IIS5.0,可以用四种方法验证用户:第一种方法是为每一个网站和每一个虚拟目录创建一个匿名用户的Win2K账户;第二种方法是让所有网站使用Basic验证;在客户端只使用IE6.0、IE5.0浏览器的情况下,你可以使用第三种验证方法。你可以在Web网站上和虚拟目录上都启用Win2K验证;第四种方法是如果用户都有个人数字证书,你可以把那些证书映射到本地域的Win2K账户上。3.设置全局组构造安全策略的下一个步骤是确定用户应该属于什么组。控制数据访问权限最简单的方法是,对于每一组用户,分别地为它创建一个满足该组用户权限要求的、域内全局有效的组。除了面向特定应用程序的组之外,我们还需要几个基本组。基本组的成员负责管理服务器。4.允许数据库访问权限分配给角色而不是直接把它们分配给全局组。创建了数据库之后,我们可以用sp_grantdbaccess存储过程授权DB_NameUsers组访问它。如果要拒绝数据库访问,我们可以创建另外一个名为DB_NameDeniedUsers的全局组,授权它访问数据库,然后把它设置为db_denydatareader以及db_denydatawriter角色的成员。5.分配权限实施安全策略的最后一个步骤是创建用户定义的数据库角色,然后分配权限。完成这个步骤最简单的方法是创建一些名字与全局组名字配套的角色。创建好角色之后就可以分配权限。在这个过程中,我们只需用到标准的GRANT、REVOKE和DENY命令。接下来我们就可以加入所有SQLServer验证的登录。用户定义的数据库角色可以包含SQLServer登录以及NT全局组、本地组、个人账户。由于内建的角色一般适用于整个数据库而不是单独的对象,因此这里建议你只使用两个内建的数据库角色,即db_securityadmin和db_owner。6.简化管理SQLServer验证的登录不仅能够方便地实现,而且与NT验证的登录相比,它更容易编写到应用程序里。但是,如果用户的数量超过25,或者服务器数量在一个以上,或者每个用户都可以访问一个以上的数据库,或者数据库有多个管理员,SQLServer验证的登录便不容易管理了。由于SQLServer没有显示用户有效权限的工具,要记住每个用户具有哪些权限以及他们为何要得到这些权限就更加困难。即使对于一个还要担负其他责任的小型数据库管理员,简化安全策略也有助其减轻问题的复杂程度。因此,首选的方法应该是使用NT验证的登录,然后通过一些精心选择的全局组和数据库角色管理数据库访问。1.4Windows信息系统面临的安全威胁1.4.1安全威胁之系统破解1.Windows系统登录密码破解简介(1)删除SAM文件(仅适合于Windows2000)(2)修改账户密码(3)穷举法破解账户密码2.文件级加密破解简介(1)Office文件加密与破解(2)FoxMail账号加密与破解3.软件注册码破解简介注册码加密保护的原理比较简单,即要求软件安装者必须输入正版软件才拥有的一组字码(字符或数字的组合),经软件验证通过后方可完成安装。注册码的验证方式根据不同的软件各有不同,有的是直接明文放在软件中,有的经过加密或变形后再进行比较,还有的需要通过网络申请注册码,然后再进行验证。不管通过哪种验证方式,注册码的破解均有一定的规律可循,即通过反汇编工具追踪软件的验证过程,在找到验证规律的基础上实现破解。1.4.2安全威胁之计算机病毒1.计算机病毒的基本特征(1)传染性(2)隐蔽性(3)破坏性(4)可触发性2.计算机病毒的发展趋势(1)网络成为计算机病毒传染的主要载体;(2)传统病毒日益减少,网络蠕虫成为最主要和破坏力最大的病毒类型;(3)恶意网页的泛滥;(4)病毒与木马技术相互结合,出现带有明显木马特征的病毒;(5)传播方式多样化;(6)跨操作系统的病毒;(7)手机病毒、信息家电病毒的出现。3.计算机反病毒技术的发展趋势(1)适当增加杀毒软件的功能(2)杀毒软件的技术革新(3)操作系统的稳固性(4)企业病毒解决方案和个人病毒防范1.4.3安全威胁之恶意攻击1.源IP地址欺骗攻击假设同一网段内有两台主机A和B,另一网段内有主机X。B授予A某些特权。X为获得与A相同的特权,所做欺骗攻击如下:首先,X冒充A,向主机B发送一个带有随机序列号的SYN包。主机B响应,回送一个应答包给A,该应答号等于原序列号加1。然而,此时主机A已被主机X利用拒绝服务攻击“淹没”了,导致主机A服务失效。结果,主机A将B发来的包丢弃。为了完成三次握手,X还需要向B回送一个应答包,其应答号等于B向A发送数据包的序列号加1。此时主机X并不能检测到主机B的数据包(因为不在同一网段),只有利用TCP顺序号估算法来预测应答包的顺序号并将其发送给目标机B。如果猜测正确,B则认为收到的ACK是来自内部主机A。此时,X即获得了主机A在主机B上所享有的特权,并开始对这些服务实施攻击。要防止源IP地址欺骗行为,可以采取以下措施来尽可能地保护系统免受这类攻击:(1)抛弃基于地址的信任策略阻止这类攻击的一种十分容易的办法就是放弃以地址为基础的验证。这将迫使所有用户使用其他远程通信手段,如telnet、ssh、skey等等。(2)使用加密方法在包发送到网络上之前,我们可以对它进行加密。虽然加密过程要求适当改变目前的网络环境,但它将保证数据的完整性、真实性和保密性。(3)进行包