1、第4章 攻击检测与 系统恢复技术,本章学习目标,网络攻击的原理、步骤,以及黑客攻击企业内部局域网的典型流程 网络攻击的防范措施及处理对策 入侵检测系统的组成、内容、特点及其数学模型 入侵检测的过程 异常检测、误用检测、特征检测,基于主机和基于网络的IDS各自特点 系统恢复技术,4.1 网络攻击技术,网络攻击的方法十分丰富,令人防不胜防。分析和研究网络攻击活动的方法和采用的技术,对加强网络安全建设、防止网络犯罪有很好的借鉴作用。,4.1.1 网络攻击概述,攻击的分类 从攻击的行为是否主动来分:主动攻击和被动攻击 从攻击的位置来分,可分为远程攻击、本地攻击和伪远程攻击。 攻击的人员 黑客与破坏者、
2、间谍 、恐怖主义者 、公司雇佣者 、计算机犯罪 、内部人员。 攻击的目的 主要包括:进程的执行、获取文件和传输中的数据、获得超级用户权限、对系统的非法访问、进行不许可的操作、拒绝服务、涂改信息、暴露信息、挑战、政治意图、经济利益、破坏等。,攻击者常用的攻击工具,DOS攻击工具 木马程序 BO2000(BackOrifice):它是功能最全的TCP/IP构架的攻击工具,可以搜集信息,执行系统命令,重新设置机器,重新定向网络的客户端/服务器应用程序。感染BO2000后机器就完全在别人的控制之下,黑客成了超级用户,用户的所有操作都可由BO2000自带的“秘密摄像机”录制成“录像带”。 “冰河”:冰河
3、是一个国产木马程序,具有简单的中文使用界面,且只有少数流行的反病毒、防火墙才能查出冰河的存在。它可以自动跟踪目标机器的屏幕变化,可以完全模拟键盘及鼠标输入,即在使被控端屏幕变化和监控端产生同步的同时,被监控端的一切键盘及鼠标操作将反映在控端的屏幕。它可以记录各种口令信息,包括开机口令、屏幕保护口令、各种共享资源口令以及绝大多数在对话框中出现过的口令信息;它还可以进行注册表操作,包括对主键的浏览、增删、复制、重命名和对键值的读写等所有注册表操作。 分布式工具,4.1.2 网络攻击的原理,口令入侵:所谓口令入侵是指使用某些合法用户的账号和口令登录到目的主机,然后再实施攻击活动。这种方法的前提是必须
4、先得到该主机上的某个合法用户的账号,然后再进行合法用户口令的破译。 获取用户账号的方法: 利用目标主机的Finger功能:当用Finger命令查询时,主机系统会将保存的用户资料(如用户名、登录时间等)显示在终端或计算机上。 利用目标主机的X.500服务:有些主机没有关闭X.500的目录查询服务,也给攻击者提供了获得信息的一条简易途径。 从电子邮件地址中收集:有些用户电子邮件地址常会透露其在目标主机上的账号。 查看主机是否有习惯性的账号:有经验的用户都知道,很多系统会使用一些习惯性的账号,造成账号的泄露。,口令入侵(2),获取用户口令的方法:被用来窃取口令的服务包括FTP、TFTP、邮件系统、F
5、inger和Telnet等。所以,系统管理员对口令的使用应十分小心、谨慎。 通过网络监听非法得到用户口令。 在知道用户的账号后(如电子邮件前面的部分),利用一些专门软件强行破解用户口令,这种方法不受网段限制。 利用系统安全漏洞。在Windows/Unix操作系统中,用户的基本信息、口令分别存放在某些固定的文件中,攻击者获取口令文件后,就会使用专门的破解程序来解口令。同时,由于为数不少的操作系统都存在许多安全漏洞、Bug或一些其他设计缺陷,这些缺陷一旦被找出,攻击者就可以长驱直入。,放置特洛伊木马程序,特洛伊木马程序可以直接侵入用户的计算机并进行破坏,它常被伪装成工具程序或者游戏等诱使用户打开带
6、有特洛伊木马程序的邮件附件或从网上直接下载,一旦用户打开了这些邮件的附件或者执行了这些程序之后,它们就会象古特洛伊人在敌人城外留下的藏满士兵的木马一样留在自己的计算机中,并在自己的计算机系统中隐藏一个可以在Windows启动时悄悄执行的程序。当用户连接到因特网上时,这个程序就会通知攻击者,并报告用户的IP地址以及预先设定的端口。攻击者在收到这些信息后,再利用这个潜伏在其中的程序,就可以任意地修改用户的计算机的参数设定、复制文件、窥视用户整个硬盘中的内容等,从而达到控制用户的计算机的目的。,WWW的欺骗技术,一般Web欺骗使用两种技术手段,即URL地址重写技术和相关信息掩盖技术。 攻击者修改网页
7、的URL地址,即攻击者可以将自已的Web地址加在所有URL地址的前面。当用户浏览目标网页的时候,实际上是向攻击者的服务器发出请求,于是用户的所有信息便处于攻击者的监视之下,攻击者就达到欺骗的目的了。但由于浏览器一般均设有地址栏和状态栏,当浏览器与某个站点链接时,用户可以在地址栏和状态栏中获得连接中的Web站点地址及其相关的传输信息,由此发现已出了问题。所以攻击者往往在URL地址重写的同时,利用相关信息掩盖技术(一般用Java Script程序来重写地址栏和状态栏),以掩盖欺骗。,电子邮件攻击,电子邮件是Internet上运用得十分广泛的一种通讯方式。攻击者可以使用一些邮件炸弹软件或CGI程序向
8、目标邮箱发送大量内容重复、无用的垃圾邮件,从而使目标邮箱被撑爆而无法使用。当垃圾邮件的发送流量特别大时,还有可能造成邮件系统对于正常的工作反映缓慢,甚至瘫痪。 电子邮件攻击主要表现为两种方式: 邮件炸弹,指的是用伪造的IP地址和电子邮件地址向同一信箱发送数以千计、万计甚至无穷多次的内容相同的垃圾邮件,致使受害人邮箱被“炸”,严重者可能会给电子邮件服务器操作系统带来危险,甚至瘫痪。 电子邮件欺骗,攻击者佯称自己为系统管理员,给用户发送邮件要求用户修改口令(口令可能为指定字符串)或在貌似正常的附件中加载病毒或其他木马程序。,通过一个节点来攻击其他节点,攻击者在突破一台主机后,往往以此主机作为根据地
9、,攻击其他主机,以隐蔽其入侵路径,避免留下蛛丝马迹。他们可以使用网络监听方法,尝试攻破同一网络内的其他主机;也可以通过IP欺骗和主机信任关系,攻击其他主机。 这类攻击很狡猾,但由于某些技术很难掌握,如TCP/IP欺骗攻击。攻击者通过外部计算机伪装成另一台合法机器来实现。它能破坏两台计算机间通信链路上的数据,其伪装的目的在于哄骗网络中的其它机器误将其攻击者作为合法机器加以接受,诱使其它机器向他发送据或允许它修改数据。TCP/IP欺骗可以发生TCP/IP系统的所有层次上,包括数据链路层、网络层、运输层及应用层均容易受到影响。如果底层受到损害,则应用层的所有协议都将处于危险之中。另外由于用户本身不直
10、接与底层相互相交流,因而对底层的攻击更具有欺骗性。,网络监听,网络监听是主机的一种工作模式,在这种模式下,主机可以接收到本网段在同一条物理通道上传输的所有信息,而不管这些信息的发送方和接收方是谁。因为系统在进行密码校验时,用户输入的密码需要从用户端传送到服务器端,而攻击者就能在两端之间进行数据监听。此时若两台主机进行通信的信息没有加密,只要使用某些网络监听工具如NetXRay、Sniffer等就可轻而易举地截取包括口令和账号在内的信息资料。虽然网络监听获得的用户账号和口令具有一定的局限性,但监听者往往能够获得其所在网段的所有用户账号及口令。,利用黑客软件攻击,利用黑客软件攻击是Internet
11、上比较多的一种攻击手法。如利用特洛伊木马程序可以非法地取得用户计算机的超级用户级权限,除了可以进行完全的控制操作外,还可以进行对方桌面抓图、取得密码等操作。这些黑客软件分为服务器端和用户端,当黑客进行攻击时,会使用用户端程序登陆上已安装好服务器端程序的计算机,这些服务器端程序都比较小,一般会随附带于某些软件上。有可能当用户下载了一个小游戏并运行时,黑客软件的服务器端就安装完成了,而且大部分黑客软件的重生能力比较强,给用户进行清除造成一定的麻烦。特别是最近出现了一种TXT文件欺骗手法,表面看上去是一个TXT文本文件,但实际上却是一个附带黑客程序的可执行程序,另外有些程序也会伪装成图片和其他格式的
12、文件。,安全漏洞攻击,许多系统都有这样那样的安全漏洞(Bugs)。其中一些是操作系统或应用软件本身具有的,如缓冲区溢出攻击。由于很多系统在不检查程序与缓冲之间变化的情况,就任意接受任意长度的数据输入,把溢出的数据放在堆栈里,系统还照常执行命令。这样攻击者只要发送超出缓冲区所能处理的长度的指令,系统便进入不稳定状态。若攻击者特别配置一串准备用作攻击的字符,甚至可以访问根目录,从而拥有对整个网络的绝对控制权。 另一些是利用协议漏洞进行攻击。如攻击者利用POP3一定要在根目录下运行的这一漏洞发动攻击,破坏的根目录,从而获得超级用户的权限。 又如,ICMP协议也经常被用于发动拒绝服务攻击。,端口扫描攻
13、击,所谓端口扫描,就是利用Socket编程与目标主机的某些端口建立TCP连接、进行传输协议的验证等,从而侦知目标主机的扫描端口是否是处于激活状态、主机提供了哪些服务、提供的服务中是否含有某些缺陷等等。 常用的扫描方式有:Connect()扫描。Fragmentation扫描。,4.1.3 网络攻击的步骤,攻击者在一次攻击过程中的通常做法是:首先隐藏位置,接着网络探测和资料收集、对系统弱点进行挖掘、获得系统控制权、隐藏行踪,最后实施攻击、开辟后门等七个步骤,如右图所示。,1隐藏位置,攻击者经常使用如下技术隐藏其真实的IP地址或者域名: 利用被侵入的主机作为跳板,如在安装Windows的计算机内利
14、用Wingate软件作为跳板,利用配置不当的Proxy作为跳板; 使用电话转接技术隐蔽自己,如利用800电话的无人转接服务联接ISP; 盗用他人的账号上网,通过电话联接一台主机,再经由主机进入Internet; 免费代理网关; 伪造IP地址; 假冒用户账号。,2网络探测和资料收集,网络探测和资料收集主要是为了寻找目标主机和收集目标信息。 攻击者首先要寻找目标主机并分析目标主机。在Internet上能真正标识主机的是IP地址,域名是为了便于记忆主机的IP地址而另起的名字,只要利用域名和IP地址就可以顺利地找到目标主机。当然,知道了要攻击目标的位置还是远远不够的,还必须将主机的操作系统类型及其所提
15、供服务等资料作个全面的了解,为攻击作好充分的准备。攻击者感兴趣的信息主要包括:操作系统信息、开放的服务端口号、系统默认账号和口令、邮件账号、IP地址分配情况、域名信息、网络设备类型、网络通信协议、应用服务器软件类型等。 步骤:锁定目标、服务分析 、系统分析 、获取账号信息 、获得管理员信息,3弱点挖掘,系统中漏洞的存在是系统受到备种安全威胁的根源。外部攻击者的攻击主要利用了系统提供的网络服务中的漏洞;内部人员作案则利用了系统内部服务及其配置上的漏洞,而拒绝服务攻击主要是利用资源分配上的漏洞,长期占用有限资源不释放,使其它用户得不到应得的服务,或者是利用服务处理中的漏洞,使该服务崩溃。攻击者攻击
16、的重要步骤就是尽量挖掘出系统的弱点/漏洞,并针对具体的漏洞研究相应的攻击方法。常见的漏洞有:,系统或应用服务软件漏洞。 主机信任关系漏洞。 寻找有漏洞的网络成员。 安全策略配置漏洞。 通信协议漏洞。 网络业务系统漏洞。,4获得控制权,攻击者要想入侵一台主机,首先要有该主机的一个账号和口令,再想办法去获得更高的权限,如系统管理账户的权限。获取系统管理权限通常有以下途径: 获得系统管理员的口令,如专门针对root用户的口令攻击; 利用系统管理上的漏洞:如错误的文件许可权,错误的系统配置,某些SUID程序中存在的缓冲区溢出问题等; 让系统管理员运行一些特洛伊木马程序,使计算机内的某一端口开放,再通过
17、这一端口进入用户的计算机。,5隐藏行踪,作为一个入侵者,攻击者总是惟恐自己的行踪被发现,所以在进入系统之后,聪明的攻击者要做的第一件事就是隐藏自己的行踪,攻击者隐藏自己的行踪通常要用到如下技术: 连接隐藏,如冒充其他用户、修改 LOGNAME环境变量、修改utmp日志文件、使用IP SPOOF技术等; 进程隐藏,如使用重定向技术减少PS给出的信息量、用特洛伊木马代替PS程序等; 篡改日志文件中的审计信息; 改变系统时间,造成日志文件数据紊乱,以迷惑系统管理员。,6实施攻击,不同的攻击者有不同的攻击目的,可能是为了获得机密文件的访问权,也可能是为了破坏系统数据的完整性,也可能是为了获得整个系统的
18、控制权(系统管理权限),以及其他目的等。一般说来,可归结为以下几种方式: 下载敏感信息; 在目标系统中安装探测器软件,以便进一步收集攻击者感兴趣的信息,或进一步发现受损系统在网络中的信任等级; 攻击其它被信任的主机和网络; 使网络瘫痪; 修改或删除重要数据。,7开辟后门,一次成功的入侵通常要耗费攻击者的大量时间与精力,所以精于算计的攻击者在退出系统之前会在系统中制造一些后门,以方便自己的下次入侵,攻击者设计后门时通常会考虑以下方法: 放宽文件许可权; 重新开放不安全的服务,如REXD、TFTP等; 修改系统的配置,如系统启动文件、网络服务配置文件等; 替换系统本身的共享库文件; 安装各种特洛伊
19、木马程序,修改系统的源代码; 安装sniffers。,小 结,第一,一次完整的攻击过程可以划分为三个阶段,分别为:获取系统访问权前的攻击过程;获得系统控制权的攻击过程;获得系统访问权或控制权之后的攻击活动。 完成第一阶段的攻击过程,获得了系统的访问权,攻击者就已成功了一半,而完成第二阶段的攻击过程,获得系统的管理权限之后,攻击者已近于完全成功。此时,管理员已经很难阻止攻击者的破坏活动,但可以尽早地采取一些补救措施,如备份系统、关掉系统的网络连接、关机等。 第二,攻击者攻击成功的关键在于第一、第二阶段的成功,在于尽早地发现或者利用目标系统的安全漏洞或弱点的能力。 第三,内部的攻击者可以减少攻击步
20、骤,他只要找到系统的漏洞、弱点或缺陷,想法获取系统管理权限,就可以随心所欲地进行破坏活动了。,4.1.4 黑客攻击实例,黑客攻击拨号上网计算机实例(左),黑客攻击企业内部局域网实例(右),4.1.5 网络攻击的防范措施 及处理对策,防范措施 提高安全意识 使用能防病毒、防黑客的防火墙软件 设置代理服务器,隐藏自已的IP地址 安装过滤器路由器,防止IP欺骗 建立完善的访问控制策略 采用加密技术 做好备份工作,提高安全意识,不要随意打开来历不明的电子邮件及文件,不要运行来历不明的软件和盗版软件。 不要随便从Internet上下载软件,尤其是不可靠的FTP站点和非授权的软件分发点。即使从知名的网站下
21、载的软件也要及时用最新的杀病毒软件进行扫描。 防字典攻击和口令保护。选择1215个字符组成口令,尽可能使用字母数字混排,并且在任何字典上都查不到,那么口令就不能被轻易窃取了。不要用个人信息(如生日、名字等),口令中要有一些非字母(数字、标点符号、控制字符等),还要好记一些,不能写在纸上或计算机中的文件中,选择口令的一个好方法是将两个相关的词用一个数字或控制字符相连。重要的口令最好经常更换。 及时下载安装系统补丁程序。 不随便运行黑客程序,不少这类程序运行时会发出用户的个人信息。 在支持HTML的BBS上,如发现提交警告,先看源代码,很可能是骗取密码的陷阱。 经常运行专门的反黑客软件,必要时应在
22、系统中安装具有实时检测、拦截、查找黑客攻击程序的工具。经常采用扫描工具软件扫描,以发现漏洞并及早采取弥补措施。,处理对策(1),发现攻击者:一般很难发现网络系统是否被人入侵。借助下面一些途径可以发现攻击者。 攻击者正在行动时,捉住攻击者。例如,当管理员正在工作时,发现有人使用超级用户的帐号通过拨号终端登录,而超级用户口令只有管理员本人知道。 根据系统发生的一些改变推断系统以被入侵。 其他站点的管理员那里收到邮件,称从本站点有人对“他”的站点大肆活动。 根据网络系统中一些奇怪的现象,发现攻击者。例如,不正常的主机连接及连接次数,系统崩溃,突然的磁盘存储活动或者系统突然变得非常缓慢等。 经常注意登
23、录文件并对可逆行为进行快速检查,检查访问及错误登录文件,检查系统命令如login等的使用情况。在Windows NT平台上,可以定期检查Event Log中的Security Log,以寻找可疑行为。 使用一些工具软件可以帮助发现攻击者。,处理对策(2),处理原则 不要惊慌。发现攻击者后,会有许多选择。但是不管发生什么事,没有慎重的思考就去行动,只会使事情变得更遭。 记录每一件事情,甚至包括日期和时间。 估计形势。估计入侵造成的破坏程度,攻击者是否还滞留在系统中?威胁是否来自内部?攻击者身份及目的?若关闭服务器,是否能承受得起失去有用系统信息的损失? 采取相应措施。一旦了解形势之后,就应着手作
24、出决定并采取相应的措施,能否关闭服务器?若不能,也可关闭一些服务或至少拒绝一些人;是否关心追踪攻击者?若打算如此,则不要关闭Internet联接,因为这会失去攻击者的踪迹。,处理对策(3),发现攻击者后的处理对策:发现攻击者后,网络管理员的主要目的不是抓住他们,而是应把保护用户、保护网络系统的文件和资源放在首位。因此,可采取下面某些对策。 不理睬。 使用write或者talk工具询问他们究竟想要做什么。 跟踪这个连接,找出攻击者的来路和身份。这时候,nslookup、finger、rusers等工具很有用。 管理员可以使用一些工具来监视攻击者,观察他们正在做什么。这些工具包括snoop、ps、
25、lastcomm、ttywatch等。 杀死这个进程来切断攻击者与系统的连接。断开调制解调器与网络线的连接,或者关闭服务器。 找出安全漏洞并修补漏洞,再恢复系统。 最后,根据记录的整个文件的发生发展过程,编档保存,并从中吸取经验教训。,4.1.6 网络攻击技术的发展趋势,攻击技术越来越先进:网络攻击自动化 、组织化 、目标扩大化 、协同化 、智能化 、主动化 。 攻击工具越来越复杂:反侦破、动态行为、成熟性、跨平台。 发现安全漏洞越来越快 越来越高的防火墙渗透率 越来越不对称的威胁,4.2 入侵检测系统,只要允许内部网络与Internet相连,攻击者入侵的危险就会存在。由于入侵行为与正常的访问
26、或多或少有些差别,通过收集和分析这种差别可以发现绝大部分的入侵行为,入侵检测系统(IDS,Intrusion Detection System)应运而生。,4.2.1 入侵检测系统概述,入侵检测及其内容 入侵检测是对入侵行为的发觉,是一种试图通过观察行为、安全日志或审计数据来检测入侵的技术。 入侵检测的内容包括:检测试图闯入、成功闯入、冒充其他用户、违反安全策略、合法用户的泄漏、独占资源以及恶意使用等破坏系统安全性的行为。 入侵检测系统从计算机网络或计算机系统的关键点收集信息并进行分析,从中发现网络或系统中是否有违反安全策略的行为和被攻击的迹象,使安全管理员能够及时地处理入侵警报,尽可能减少入
27、侵对系统造成的损害 入侵检测系统(IDS)实际上是一种使监控和分析过程自动化的产品,可以是软件,也可以是硬件,最常见的是软件与硬件的组合。所以,通常把负责入侵检测的软/硬件组合体称为入侵检测系统。,一个成功的入侵检测系统至少要满足以下5个要求,实时性要求:如果攻击或者攻击的企图能够被尽快发现,就有可能查出攻击者的位置,阻止进一步的攻击活动,就有可能把破坏控制在最小限度,并记录下攻击过程,可作为证据回放。 可扩展性要求:攻击手段多而复杂,攻击行为特征也各不相同。 适应性要求:入侵检测系统必须能够适用于多种不同的环境 。 安全性与可用性要求:入侵检测系统必须尽可能的完善与健壮,不能向其宿主计算机系
28、统以及其所属的计算机环境中引入新的安全问题及安全隐患。 有效性要求:能够证明根据某一设计所建立的入侵检测系统是切实有效的。即:对于攻击事件的错报与漏报能够控制在一定范围内;同时,入侵检测系统在发现入侵后,能够及时做出响应,有些响应是自动的 。,入侵检测系统的组成,入侵检测系统通常由两部分组成:传感器(Sensor)与控制台(Console)。传感器负责采集数据(网络包、系统日志等)、分析数据并生成安全事件。控制台主要起到中央管理的作用,商品化的IDS通常提供图形界面的控制台。,入侵检测系统的特点,入侵检测技术是动态安全技术的最核心技术之一 传统的操作系统加固技术和防火墙隔离技术等都是静态安全防
29、御技术,对网络环境下日新月异的攻击手段缺乏主动的反应。入侵检测技术通过对入侵行为的过程与特征的研究,使安全系统对入侵事件和入侵过程能做出实时响应。 入侵检测是防火墙的合理补充 帮助系统对付网络攻击,扩展了系统管理员的安全管理能力(包括安全审计、监视、进攻识别和响应),提高了信息安全基础结构的完整性。入侵检测被认为是防火墙之后的第二道安全闸门,提供对内部攻击、外部攻击和误操作的实时保护。 入侵检测系统是黑客的克星 入侵检测和安全防护有根本性的区别:安全防护和黑客的关系是“防护在明,黑客在暗”,入侵检测和黑客的关系则是“黑客在明,检测在暗”。安全防护主要修补系统和网络的缺陷,增加系统的安全性能,从
30、而消除攻击和入侵的条件;入侵检测并不是根据网络和系统的缺陷,而是根据入侵事件的特征去检测的(入侵事件的特征一般与系统缺陷有逻辑关系),所以入侵检测系统是黑客的克星。,4.2.2 入侵检测系统的数学模型,Denning的通用入侵检测模型,统一模型,入侵检测系统统一模型由5个主要部分(信息收集器、分析器、响应、数据库以及目录服务器)组成,如图所示。,4.2.3 入侵检测的过程,入侵信息的收集 系统和网络日志 目录和文件中的不期望的改变 程序执行中的不期望行为 物理形式的入侵信息 信号分析 模式匹配 统计分析 专家系统 完整性分析,响应:分为被动响应和主动响应 被动响应型系统只会发出告警通知,将发生
31、的不正常情况报告给管理员,本身并不试图降低所造成的破坏,更不会主动地对攻击者采取反击行动。 主动响应系统可以分为对被攻击系统实施控制和对攻击系统实施控制的系统。 对被攻击系统实施控制(防护),是通过调整被攻击系统的状态,阻止或减轻攻击影响,例如断开网络连接、增加安全日志、杀死可疑进程等;对攻击系统实施控制(反击),这种系统多被军方所重视和采用。,4.2.4 入侵检测系统的分类,根据采用的技术和原理分类:可以分为异常检测、误用检测和特征检测三种。现有的入侵检测工具大都是使用误用检测方法。异常检测方法虽然还没有得到广泛的应用,但在未来的入侵检测系统中肯定会有更大的发展。 根据监测的数据源分类:分为
32、基于主机(Host-based)的入侵检测系统、基于网络(Network-based)的入侵检测系统和分布式入侵检测系统 根据工作方式分类:可以分为离线检测系统与在线检测系统。,异常检测,基于异常的检测技术有一个假设,就是入侵事件的行为不同于一般正常用户或者系统的行为。通过多种方法可以建立正常或者有效行为的模型。入侵检测系统在检测的时候就把当前行为和正常模型比较,如果比较结果有一定的偏离,则报警异常。换句话说,所有不符合于正常模型的行为都被认为是入侵。如果系统错误地将异常活动定义为入侵,称为错报;如果系统未能检测出真正的入侵行为则称为漏报。 基于异常检测的优点就是它能够检测出新的入侵或者从未发
33、生过的入侵。它对操作系统的依赖性较小。它还可以检测出属于权限滥用类型的入侵。 异常检测方法的查全率很高但是查准率很低。过多误警是该方法的主要缺陷。 常见的异常检测方法包括统计异常检测、基于特征选择异常检测、基于贝叶斯推理异常检测、基于贝叶斯网络异常检测、基于模式预测异常检测、基于神经网络异常检测、基于贝叶斯聚类异常检测、基于机器学习异常检测等。,误用检测(1),进行误用检测的前提是所有的入侵行为都有可被检测到的特征。误用检测系统提供攻击特征库,当监测的用户或系统行为与库中的记录相匹配时,系统就认为这种行为是入侵。,误用检测(2),采用特征匹配,误用检测能明显降低错报率,并且对每一种入侵都能提出
34、详细资料,使得使用者能够更方便地做出响应。但漏报率随之增加。攻击特征的细微变化,会使得误用检测无能为力。 这种方法的缺陷就是入侵信息的收集和更新的困难。需要很多的时间和很大的工作量,还需要很强的安全知识,如网络攻击、操作系统、系统平台、应用程序等方面的知识。所以这种方法适用于特殊环境下的检测工具。另外,这种方法难以检测本地入侵(例如权限滥用),因为没有一个确定规则来描述这些入侵事件。 常见的误用检测方法包括基于条件概率的误用入侵检测、基于专家系统的误用入侵检测、基于状态迁移的误用入侵检测、基于键盘监控的误用入侵检测、基于模型的误用入侵检测等。,特征检测,和以上两种检测方法不同,特征检测关注的是
35、系统本身的行为。定义系统行为轮廓,并将系统行为与轮廓进行比较,对未指明为正常行为的事件定义为入侵。特征检测系统常采用某种特征语言定义系统的安全策略。 这种检测方法的错报与行为特征定义准确度有关,当系统特征不能囊括所有的状态时就会产生漏报。 特征检测最大的优点是可以通过提高行为特征定义的准确度和覆盖范围,大幅度降低漏报和错报率;最大的不足是要求严格定义安全策略,这需要经验和技巧,另外为了维护动态系统的特征库通常是很耗时的事情。 由于这些检测各有优缺点,许多实际入侵检测系统通常同时采用两种以上的方法实现。,基于主机的入侵检测系统,基于主机的入侵检测系统(HIDS)通常是安装在被重点检测的主机之上,
36、其数据源来自主机,如日志文件、审计记录等。通过监视与分析主机中的上述文件就能够检测到入侵。能否及时采集到上述文件是这些系统的弱点之一,因为入侵者会将主机的审计子系统作为攻击目标以避开入侵检测系统。 尽管基于主机的入侵检测系统不如基于网络的入侵检测系统快捷,但它确实具有基于网络的IDS无法比拟的优点。,基于主机的入侵检测系统的优缺点,由于基于主机的IDS使用含有已发生事件信息,可以确定攻击是否成功。 能够检查到基于网络的入侵检测系统检查不出的攻击。 能够监视特定的系统活动 适用被加密的和交换的环境。 近于实时的检测和响应。 不要求额外的硬件设备。 低廉的成本。,降低应用系统的效率。也会带来一些额
37、外的安全问题 。 依赖于服务器固有的日志与监视能力。 全面部署代价较大,用户只能选择保护部分重要主机。那些未安装基于主机的IDS的主机将成为保护的盲点、攻击目标。 除了监测自身的主机以外,不监测网络上的情况。,优 点 缺 点,基于网络的入侵检测系统,基于网络的入侵检测系统(NIDS)放置在比较重要的网段内,其数据源是网络上规范的TCP/IP协议数据包,即通过在共享网段上对通信数据的侦听采集数据,对每一个数据包进行特征分析。如果数据包与系统内置的某些规则吻合,NIDS的响应模块就提供多种选项以通知、报警并对攻击采取相应的反应。反应因系统而异,但通常都包括通知管理员、中断网络连接、为法庭分析和证据
38、收集而做好会话记录。NIDS不需要主机提供严格的日志文件、审计记录,对主机资源消耗少,并可以提供对网络通用的保护而无需顾及异构主机的不同架构。 目前,大部分入侵检测系统是基于网络的。,基于网络的入侵检测系统的优缺点,拥有成本较低。 检查所有包的头部从而发现恶意的和可疑的行动迹象。基于主机的IDS无法查看包的头部,所以它无法检测到这一类型的攻击。 使用正在发生的网络通信进行实时攻击的检测,所以攻击者无法转移证据。 实时检测和响应 操作系统无关性。 安装简便。,监测范围的局限性。基于网络的IDS只检查它直接连接网段的通信,不能检测在不同网段的网络数据包,而安装多台基于网络的IDS将会使整个成本大大
39、增加。 通常采用特征检测的方法,可以检测出普通的一些攻击,而很难实现一些复杂的需要大量计算与分析时间的攻击检测。 大量数据传回分析系统中,影响系统性能和响应速度。 处理加密的会话过程较困难,优 点 缺 点,小 结,基于主机的入侵检测系统的检测范围小,只限于一台主机内,而基于网络的入侵检测系统的检测范围是整个网段。基于主机的入侵检测系统不但可以检测出系统的远程入侵,还可以检测出本地入侵。但是由于主机的信息多种多样,不同的操作系统,信息源的格式就不同,使得基于主机的入侵检测系统比较难做。基于网络的入侵检测系统只能检测出远程入侵,对于本地入侵它是看不到的。可是由于网络数据一般都是规范的TCP/IP协
40、议的数据包,所以基于网络的入侵检测系统比较易于实现。目前,大多数入侵检测的商业产品都是基于网络的入侵检测系统,基于主机的入侵检测系统只限于系统的安全工具。 一个真正有效的入侵检测系统应该是基于主机和基于网络的混合,两种方法互为补充。,分布式入侵检测系统,分布式入侵检测系统的数据也是来源于网络中的数据包,不同的是,它采用了分布式检测、集中管理的方法。即在每个网段安装一个黑匣子,该黑匣子相当于基于网络的入侵检测系统,只是没有用户操作界面。黑匣子用来监测其所在网段上的数据流,它根据集中安全管理中心制定的安全策略、响应规则等来分析检测网络数据,同时向集中安全管理中心发回安全事件信息。集中安全管理中心是
41、整个分布式入侵检测系统面向用户的界面。它的特点是对数据保护的范围比较大,但对网络流量有一定的影响。目前这种技术在ISS的RealSecure等产品中已经有了应用。,离线检测系统,离线检测系统是非实时工作的系统,它在事后分析审计事件,从中检查入侵活动。事后入侵检测由网络管理人员进行,他们具有网络安全的专业知识,根据计算机系统对用户操作所做的历史审计记录判断是否存在入侵行为,如果有就断开连接,并记录入侵证据和进行数据恢复。事后入侵检测是管理员定期或不定期进行的,不具有实时性。,在线检测系统,在线检测系统是实时联机的检测系统,它包含对实时网络数据包的分析,实时主机审计分析。其工作过程是实时入侵检测在
42、网络连接过程中进行,系统根据用户的历史行为模型、存储在计算机中的专家知识以及神经网络模型对用户当前的操作进行判断,一旦发现入侵迹象立即断开入侵者与主机的连接,并收集证据和实施数据恢复。这个检测过程是不断循环进行的。,4.3 系统恢复技术,在系统被入侵之后,就要面临系统的恢复过程。在此过程中,所有步骤都应该与组织的网络安全策略中所描述的相符。如果安全策略中没有描述如何进行系统的恢复,那么可以先和管理人员协商。另外一个重要的用处在于,组织可以决定是否进行法律相关的调查、诉讼。 系统的恢复主要有重建系统、通过软件和程序恢复系统等方法。重建系统相对要容易一些,只要考虑到以上步骤所得的结果,或者抹掉入侵
43、者的痕迹、途径和其他安全隐患,重新试运行系统,或者是重新安装系统之后进行安全配置。,4.3.1 系统恢复和信息恢复,系统恢复。是指根据检测和响应环节提供有关事件的资料修补该事件所利用的系统缺陷,不让黑容再次利用这样的缺陷入侵。一般系统恢复包括系统升级、软件升级、打补丁和除去后门等。 信息恢复。是指恢复丢失的数据。信息恢复就是从备份的数据恢复原来数据,其过程有一个显著特点:就是有优先级别。直接影响日常生活和工作的信息必须先恢复,这样可以提高信息恢复的效率。,4.3.2 系统恢复的过程,1、切断被入侵系统的入侵者访问途径:如果入侵者来自于网络,可以将其从网络上断开。如果可以确认入侵者来自于外部网络
44、,那么可以在边界防火墙上面进行恰当的设置,以确保入侵者无法再进行访问。断开以后,可以进入UNIX系统的单用户模式或者NT的本地管理者模式进行操作,以夺回系统控制权。这样做可能会丢失一些有用的信息,比如说入侵者正在运行的扫描进程或监听进程。另外,如果决定要追踪入侵者,那么也可以不采取这些措施,以避免被入侵者察觉,但是这时应当采取其他措施保护那些内部网络尚未被入侵的机器,以避免入侵的蔓延。 2、复制一份被侵入系统:在进行入侵分析之前,最好先备份被侵入的系统,这些原始的数据和记录,会起到很多的重要作用。如果将来决定进行法律诉讼,那么这些数据也将会成为有力的证据。在必要的时候,可以将这些数据保存为档案
45、。可以使用UNIX命令dd将被侵入系统复制到另外一个硬盘。,3、入侵途径分析,分析日志文件、显示器输出及新增的文件可以发现入侵者进入的途径。 详细地审查系统日志文件:检查异常现象。详细地审查系统日志文件,可以了解到系统是如何被侵入的?入侵过程中,攻击者执行了哪些操作?以及哪些远程主机访问了系统等信息。 检查入侵检测系统和防火墙:很多入侵者会把所有相关的日志记录全部抹掉,这时,如果系统外部运行有入侵检测系统和防火墙,则往往可以提供更宝贵的信息。,4、遗留物分析,检查入侵者对系统软件和配置文件的修改 检查被修改的数据 检查入侵者留下的工具和数据 网络监听工具。 特洛伊木马程序。 安全缺陷攻击程序。
46、 后门。 检查网络监听工具 入侵者侵入一个UNIX系统后,为了获得用户名和密码信息,一般会在系统上安装一个网络监听程序。对于NT系统,入侵者则通常使用远程管理程序实现上述目的。,5检查网络上的其他系统和涉及到的运送站点,除了已知被侵入的系统外,还应该对网络上所有的系统进行检查。主要检查和被侵入主机共享网络服务(例如:NIS、NFS)或者通过一些机制(例如:hosts.equiv、.rhosts文件,或者kerberos服务器)和被侵入主机相互信任的系统,以发现这些系统是否也被入侵。,6评估入侵事件的影响, 恢复系统,对入侵所造成的影响进行评估,是一件相当困难的过程。入侵所造成的损害,可以有以下
47、几个方面: 对数据保密性的损害。发生入侵之后,需要判断哪些保密的数据有可能已经泄漏,这些信息的泄漏造成多大的影响,需要采取的应对措施造成的开销。 对数据完整性造成的损害。这些数据的损害、丢失所造成的影响。这些数据是否已经被传给了第三方,是否会因此承受其他损失。 声誉、信任度、媒体报道所造成的影响。这些影响所造成的潜在损失。 最后,采用重建系统、利用软件和程序等方法恢复系统。,习题四,攻击者常用的攻击工具有哪些? 简述口令入侵的原理。 简述网络攻击的步骤。画出黑客攻击企业内部局域网的典型流程。 攻击者隐藏自己的行踪时通常采用哪些技术? 简述网络攻击的防范措施。 简述网络攻击的处理对策。 一个成功的入侵检测系统至少要满足哪5个要求? 简述入侵检测系统的组成、特点。 分别说明入侵检测系统的通用模型和统一模型。 简述入侵检测的过程。 什么是异常检测、误用检测、特征检测? 基于主机的IDS和基于网络的IDS各有什么特点? 你曾遇到过何种类型的网络攻击?采取了哪些措施保护你的计算机网络系统?,