IDS术语转载
IDS(入侵检测系统)术语
来源:新临天下--网络技术论坛
作者:不详
虽然入侵检测技术还不是很成熟,但是其发展却是很迅速。与IDS相关的新名词也*新月异。这里按字母顺序罗列了相关的术语,有的可能很普遍了,但是有的却很少见,或者定义不明确。IDS的迅速发展以及一些IDS生产厂商的市场影响力使得一些名词的含义混乱:同一个名词,不同厂商却用它表示不同的意义。
术语添加或者需要解释, Pls mailto:talisker@networkintrusion.co.uk
中文解释的问题,Pls mailto:mad@email.com.cn
警报(Alerts)
警报是IDS向系统操作员发出的有入侵正在发生或者正在尝试的消息。一旦侦测到入侵,IDS会以各种方式向分析员发出警报。如果控制台在本地,IDS警报通常会显示在监视器上。IDS还可以通过声音报警(但在繁忙的IDS上,建议关闭声音)。警报还可以通过厂商的通信手段发送到远程控制台,除此之外,还有利用SNMP协议(安全性有待考虑)、email、SMS/Pager或者这几种方式的组合进行报警。
异常(Anomaly)
大多 IDS在检测到与已知攻击特征匹配的事件就会发出警报,而基于异常的IDS会用一段时间建立一个主机或者网络活动的轮廓。在这个轮廓之外的事件会引起 IDS警报,也就是说,当有人进行以前从没有过的活动,IDS就会发出警报。比如一个用户突然获得管理员权限(或者root权限)。一些厂商把这种方法称为启发式IDS,但是真正的启发式IDS比这种方法有更高的智能性。
硬件IDS(Appliance )
现在的IDS做成硬件放到机架上,而不是安装到现有的操作系统中,这样很容易就可以把IDS嵌入网络。这样的IDS产品如CaptIO, Cisco Secure IDS, OpenSnort, Dragon and SecureNetPro。
网络入侵特征数据库(ArachNIDS - Advanced Reference Archive of Current Heuristics for Network Intrusion Detection Systems)
由白帽子住持Max Vision开发维护的ArachNIDS是一个动态更新的攻击特征数据库,适用于多种基于网络的入侵检测系统。(白帽子成员相继入狱, Max Butler还未出狱,Max Vision又被判18月监禁,但愿白帽子能够好好维持)
URL: http://www.whitehats.com/ids/
攻击注册和信息服务(ARIS - Attack Registry & Intelligence Service )
ARIS是SecurityFocus推出的一项安全信息服务,允许用户向SecurityFocus匿名报告网络安全事件。SecurityFocus整理这些数据,并和其它信息综合,形成详细的网络安全统计分析和趋势预测。
攻击(Attacks )
攻击可以定义为试图渗透系统或者绕过系统安全策略获取信息,更改信息或者中断目标网络或者系统的正常运行的活动。下面是一些IDS可以检测的常见攻击的列表和解释:
攻击1:拒绝服务攻击(Attacks: DOS - Denial Of Service attack )
DOS攻击只是使系统无法向其用户提供服务,而不是通过黑客手段渗透系统。拒绝服务攻击的方法从缓冲区溢出到通过洪流耗尽系统资源,不一而足。随着对拒绝服务攻击的认识和防范不断加强,又出现了分布式拒绝服务攻击。
攻击2:分布式拒绝服务攻击(Attacks: DDOS - Distributed Denial of Service )
分布式拒绝服务攻击是一种标准的拒绝服务攻击,通过控制多台分布的远程主机向单一主机发送大量数据,并因此得名。
攻击3:Smurf攻击(Attacks: Smurf )
Smurf攻击是以最初发动这种攻击的程序名Smurf来命名。这种攻击方法通过欺骗方法向“Smurf放大器”的网络发送广播地址的ping,放大器网络向欺骗地址——攻击目标系统返回大量的ICMP回复消息,引起目标系统的拒绝服务。
这里有每5分钟更新一次的可用的“放大器”: http://www.powertech.no/smurf/ (但愿你的网络不在此列…)
攻击4:特洛伊木马(Attacks: Trojans )
特洛伊密码来自于古希腊著名的木马攻击特洛伊城的故事。在计算机术语中最初指的是貌似合法但其中包含恶意软件的程序。当合法程序执行时,恶意软件在用户毫无察觉的情况下被安装。后来大多数的这类恶意软件都是远程控制工具,特洛伊木马也就专指这类工具,如BackOrifice, SubSeven, NetBus 等。
自动响应(Automated Response )
如对攻击发出警报,一些IDS 能够自动对攻击作出防御性反应,可以通过以下途径实现:
1 重新配置路由器或者防火墙,拒绝来自相同地址的流量;
2 发送reset包切断连接。
这两种方法都有问题。攻击者可以通过信任地址欺骗实施攻击,引起设备重新配置,使得设备拒绝这些信任地址,达到拒绝服务的目的。发包需要有一个活动的网络接口,又使得其本身易受攻击。解决办法是可以把活动网卡放在防火墙内,或者使用专门的发包程序,避开标准IP栈的需求。
CERT计算机应急响应组(CERT - Computer Emergency Response Team )
CERT来自成立于Carnegie Mellon University的第一支计算机安全事件响应队伍的名称。今天许多组织都有自己的CERT(计算机安全事件处理队伍)。同CIRT(计算机事件响应组)相区别,CERT侧重于紧急事件的快速反应,而不是长期监视。
通用入侵检测框架:(CIDF - Common Intrusion Detection Framework )
CIDF是为了在某种程度上对入侵检测进行标准化,开发了一些协议和应用程序接口,使得入侵检测研究项目的软件能够共享信息和资源,同样入侵检测系统组件也可以被其他系统应用。
计算机事件响应组(CIRT - Computer Incident Response Team )
源自CERT, CIRT的不同在于对安全事件的处理方式。CERT的目标是特殊的计算机紧急事件。而CIRT中的事件并不都是紧急事件,还包括其它安全事件。
通用入侵描述语言(CISL - Common Intrusion Specification Language )
CISL是为了在CIDF组件之间进行通信而描述入侵的通用语言。同CIDF的标准化工作一样,CISL也是试图对入侵检测研究的描述语言进行标准化。
通用漏洞披露(CVE - Common Vulnerabilities and Exposures )
关于漏洞一个问题就是当设计漏洞扫描或者采取应对策略时,不同厂商对漏洞的称谓完全不同。此外有的厂商用几种特征去描述一条漏洞,并解释为可以检测更多的攻击。MITRE建设了CVE,对漏洞名称进行了标准化,加入CVE的厂商都使用标准化漏洞描述。
URL: http://www.cve.mitre.org./
构造数据包(Crafting Packets )
不遵循通常的数据包结构,通过构造自己的数据包,能够进行数据包欺骗,或者使接收者无法处理这样的数据包。 Nemesis就是这样一个工具,最新版本1.32(当然你可以自己用libnet写). URL: http://jeff.chi.wwti.com/nemesis/
同步失效(见“躲避”)( Desyncronization (see also Evasion) )
最初,同步失效是指利用序列号的躲避IDS的方法。一些IDS无法确定期望的序列号,从而对这种数据包无能为力,无法重构数据包。这种技术98年产生,现在已经过时。有的文章用来指代其他IDS躲避方法。
Eleet
黑客们在写漏洞开发程序时,经常会留下标记,最常见的就是“elite” (精华,精锐),通常是elite = eleet,转换为数字就是31337. 31337 经常被用作端口号或者序列号等。现在流行的词是"skillz".
列举(Enumeration )
在经过被动探测和社会工程学的工作之后,攻击者开始列举网络资源。列举就是当攻击者主动探测一个网络来发现有哪些漏洞可以利用。由于这个活动是主动的,并且可以被探测到,但是攻击者的活动仍会尽可能地隐蔽,避免被探测到。
躲避(见“同步失效”)(Evasion (see also Desynchronization) )
躲避是实施攻击计划,避开IDS检测的过程。躲避的技巧就是使IDS只看到攻击的一面,而目标却在其它。一种躲避的形式就是为不同的数据包设置不同的TTL 值。因此经过IDS的信息看上去并没有什么问题,然而,这些并不影响攻击到达目标。一旦到达目标,就只有有用的攻击了。这里大大简化了实际躲避的复杂性。 Ptacek and Nesham的文章《嵌入、逃避和拒绝服务:如何躲避网络入侵检测》(Insertion, Evasion, and Denial of Service: Eluding Network Intrusion Detection)讲述了实施躲避的基本原理和方法。
http://www.robertgraham.com/mirror/Ptacek-Newsham-Evasion-98.html
漏洞利用(Exploits )
对于每一个漏洞,都有利用此漏洞进行攻击的机制。为了攻击系统,攻击者编写出漏洞利用代码或脚本。
漏洞利用:零时间利用(Exploits: Zero Day Exploit)
零时间漏洞利用指的是还没有被公布或者传播的漏洞利用。一旦安全界发现一个漏洞,厂商会发布补丁,IDS系统会加入相应的攻击特征检测。对攻击者而言,零时间漏洞利用的价值最大。
漏报(False Negatives )
漏报:攻击事件没有被IDS检测到或者逃过分析员的眼睛。
误报(False Positives )
误报:IDS对正常事件识别为攻击并进行报警。
防火墙(Firewalls )
防火墙作为网络安全的第一道闸门,它与IDS功能不同,但其*志可以为IDS提供有用的信息。防火墙依据对IP地址或者端口的规则拒绝非法连接。
FIRST - Forum of Incident Response and Security Teams
FIRST是一个由国际上政府或者民间组织建立的联盟,以进行安全信息交换和协调安全事件响应。FIRST年会总是受到很大关注。
URL: http://www.first.org/
分片(Fragmentation )
如果数据包过大,将会被分片传输。分片依据是网络最大传输单元(MTU)。例如令牌环网是4464,而以太网是1500。当一个数据包从令牌环网向以太网传输,它将被按照以太网的MTU进行分片。在有限的网络条件下,分片传输是很正常的。但是黑客们利用分片来逃避IDS检测,有几种臭名昭著的DOS攻击也是利用了分片技术。
黑客规范:(Hacker Ethics )
尽管每个人的认识不同,对大多数成熟的黑客而言,黑客规范是神圣的,应该受到尊敬并得到遵守。例如无条件信息共享,不得偷窃、修改和泄漏被攻击系统的数据信息等。
URL:http://www.tuxedo.org/~esr/jargon/html/entry/hacker-ethic.html
黑客规范1:黑帽子(Hacker Ethics: Black Hat )
藐视法律,做事不考虑任何约束的反面黑客。一旦发现漏洞他们往往会私下传播利用,而不是向社会公布。
黑客规范2:白帽子(Hacker Ethics: White Hat )
正面黑客:一旦发现漏洞,他们首先通知厂商,在发布修补补丁之前,他们不会公布漏洞。关于白帽对黑客规范的观点和一些**的IDS工具,见Jude Thaddeus的文章Confessions of a white hat hacker.
URL:http://www.idg.net/english/crd_network_480552.html
黑客规范3:灰帽子(Hacker Ethics: Grey Hat )
灰帽黑客介于前两者之间,一旦发现漏洞,他们会向黑客群体发布,同时通知厂商,然后观察事态发展。他们遵循了黑客守则的两点道德规范。许多人认为厂商应该最先得到通知,很多厂商利用这些信息。Rain Forest Puppy 发布了一个策略既能保证厂商利益,又不影响安全研究。
URL:http://www.wiretrip.net/rfp/policy.html
启发(Heuristics )
“启发“中包含了应用于IDS中的人工智能的思想。启发式IDS已经提出近十年,然而至今仍进展不大,而黑客却可以“训练”IDS使其忽视恶意攻击。一些 IDS使用异常模型来探测入侵攻击,然而IDS需要大量时间来“学习”以识别正常事件。厂商在市场上把这称为启发式IDS,但至少这种IDS并没有应用人工智能对输入数据进行分析。
Honeynet 工程(Honeynet Project )
根据Honeynet 工程的定义:Honeynet是一个学习工具,是一个被设计含有缺陷的网络系统。一旦系统安全受到威胁,相关信息就会被捕捉,并被小组人员分析和学习。因此Honeynet是一个非常有用的,透视攻击全过程的资源。Honeynet小组由30个安全专家组成,每人都设置了一系列的“蜜罐”来引诱攻击者,通过观察研究策略、工具和黑客行为。
URL:http://project.honeynet.org/project.html
蜜罐(Honeypot )
蜜罐是模拟存在漏洞的系统,为攻击者提供攻击目标。蜜罐在网络中没有任何用途,因此任何连接都是可能的攻击。蜜罐的另一个目的就是诱惑攻击者在其上浪费时间,延缓对真正目标的攻击。尽管蜜罐的最初设计目标是为起诉攻击者提供证据收集,但是关于应用蜜罐做陷阱的讨论很多。如果蜜罐在网络内部,攻击者至少要攻陷一个网络设备。有的国家法律规定,蜜罐收集的证据不能作为起诉证据。
IDS分类(IDS Categories)
基于应用的 IDS( Application IDS)基于应用的IDS知道针对特殊应用的入侵特征,比如对web服务器和数据库系统的安全等。但是,许多基于主机的IDS正在从操作系统预警转向应用程序预警,虽然它们缺省不是应用程序预警,但可以通过训练学习达到。例如KSE(一种基于主机的IDS)可以通过*志得到包括应用程序在内的系统的所有运行信息,但是大部分与安全无关的*志都被过滤掉,涉及安全的信息,例如病毒和访问失败等将被按不同等级报警。Entercept Web服务器版本是一个基于特殊应用的IDS。
控制台(Consoles)
为了使分布的IDS探测端协同工作,需要由集中的控制台进行管理。现代的集中管理控制台可以接收和处理其它信息源,例如其它IDS产品、防火墙产品和路由器的报警或者*志。这些相关信息有助于发现更完整的攻击计划。一些控制台还可以向探测端发放攻击特征和实行远程控制。产品: Intellitactics Network Security Monitor 、Open Esecurity Platform.
文件完整性检查(File Integrity Checkers)
系统被黑客入侵,经常会发生一些重要文件的替换。通过对关键文件进行消息摘要,并周期性地对这些文件进行检查,可以发现文件变化,从而达到一定的保护目的。一旦发现文件变化,就会触发文件完整性检查工具发出警报。系统管理员可以通过同样的处理确定系统受危害的程度。以前的文件完整性检查工具都是事后处理工具,但是现在很多工具都提供即时检查和报警,因此也算作一种IDS。
产品:Tripwire、Intact.
蜜罐(Honeypots)
蜜罐是可以模拟脆弱性主机,提供攻击目标。蜜罐主机不提供其它任何服务,因此所有连接到蜜罐主机的连接都是可能的攻击。蜜罐的另一个目的就是诱惑攻击者在其上浪费时间,延缓对真正目标的攻击。
尽管蜜罐的最初设计目标是为起诉攻击者提供证据收集,但是关于应用蜜罐做陷阱的讨论很多。如果蜜罐在网络内部,攻击者至少要攻陷一个网络设备。有的国家法律规定,蜜罐收集的证据不能作为起诉证据。
产品:Mantrap and Sting.
基于主机的IDS(Host-based IDS,HIDS)
基于主机的IDS监视系统/事件*志,分析可疑活动,可以用来侦测系统内部信任用户误用以及通过逃避常规监测方法的外来渗透。除此之外,基于主机的IDS对事件/*志/时间做签名分析,有的产品还应用启发式学习技术。由于其接近实时探测,能够很快探测系统错误,使得它在技术人员和安全人员中应用的很广泛。 “基于主机的IDS”指基于服务器/工作站主机的所有类型的入侵检测系统。厂商们为了迷惑用户提出了网络节点IDS和文件完整性检查工具等概念,都属于基于主机的IDS。
产品:Kane Secure Enterprise 、Dragon Squire.
混合IDS(Hybrid IDS)
现代交换式网络不允许网卡完全工作在混杂模式,为传统的基于网络的IDS工作带来了困难(然而有的交换机允许在跨越端口或者连接模式终端访问点-TAP监听交换机的所有流量),同时网络带宽的增加使得NIDS的抓包率大大降低。一种解决方式就是混合IDS:把NIDS向上扩展一层,结合网络节点IDS和 HIDS,形成混合形式的入侵检测系统。虽然这种IDS覆盖范围增大了,但是需要考虑由此带来的巨大流量和成本问题。很多网络为关键服务器保留混合 IDS。
一些厂商把不仅完成一种概念的IDS都成为混合IDS;然而,我认为这更多是因为市场原因。混合IDS只是在2000年中期一个在市场上流行的词汇,现在很多人已经开始放弃。
产品: CentraxICE 、 RealSecure Server Sensor.
基于网络的IDS( Network IDS (NIDS)
NIDS 监视探测器所在网段的所有流量,对包含攻击特征或者可疑的异常行为作出反应。传统上,NIDS是具有IDS特征过滤器的混杂模式包嗅探器,然而今天的 NIDS具有更高的智能性,能够进行协议分析和状态保持。NIDS有基于应用的产品,可以直接安装在应用主机上。NIDS可以分析每一个数据报寻找攻击特征,但是当流量过大时,会出现丢包现象。
许多NIDS有对攻击的响应功能(见第一部分的“自动响应”)。在2000年后期很多NIDS宣传进入高速和交换网络的时代,更有的厂商宣传NIDS能够处理G比特的网络,通过交换机的监听断口或者TAP端口可以克服交换网络带来的不便。例如Shomiti 交换机就支持这种功能。
产品:SecureNetPro 、Snort.
网络节点IDS( Network Node IDS (NNIDS))
交换网络和高速网络给NIDS带来问题:一些NIDS在高速网络下工作不可靠,丢包率升高。交换网络不允许混杂模式网卡监听到网络内所有流量。而网络节点IDS将NIDS的功能分布到单个的网络节点,从而解决了高速和交换网络的问题。
虽然网络节点IDS与个人防火墙相近,但它们也有区别。对个人防火墙归类为NNIDS,在对连接企图将应用事件分析。例如在个人防火墙上报警"attempted connection to port *****" ,NNIDS将根据“whatever”攻击特征识别为“whatever”探测。NNIDS将收集到的事件向中央控制台汇报。尽管有这些区别,但是有的个人防火墙厂商还是将其作为网络节点IDS推出。
产品: BlackICE Agent 、Tiny CMDS.
个人防火墙 Personal Firewall
个人防火墙安装在个人操作系统上防止非法连接进出。它们能否有效保护主机免受攻击并不可靠。不要将它与网络节点IDS混淆。
例如: ZoneAlarm 、 Sybergen.
基于目标的IDS(Target-Based IDS )
这类IDS的概念不是很明确,不同的人有不同的理解。一种定义指的是文件完整性检查工具,而另一种是基于网络的IDS,可以侦测攻击特征保护网络。后一种定义的目标是避开不必要的检测,加速IDS。我个人希望了解每一种攻击而不考虑其成功与否。由于这个术语有太多的含义,应该避免使用它,以免混淆。
入侵检测工作组-IDWG(Intrusion Detection Working Group (IDWG))
IDWG的工作目标是定义入侵检测和响应系统进行信息共享和交换,以及与管理系统交互所需的数据格式。IDWG与IETF其它工作组协同工作。
URL:http://www.ietf.org/html.charters/idwg-charter.html
事件处理Incident Handling
探测到入侵只是开始。更多的情况是,控制台操作员会经常接到警报,因此没有时间亲自跟踪每个事件,他们会对感兴趣的事件做上标志,以利于事件处理小组深入调查事件。经过最初响应之后,接下来需要处理的问题是深入调查、取证和法庭起诉工作。Chris Jordan的论文 "Analyzing IDS Data" 论述了IDS警报分析的前两个阶段。
URL:http://www.securityfocus.com/focus/ids/articles/analyzeids.html
事件响应(Incident Response)
对潜在事件的初始反应,然后依据事件处理程序操作。
隔离(Islanding)
隔离是把网络从Internet上隔离开来,这往往是迫不得已采取得办法,通常在遇到大规模病毒发作或者遇到很严重的攻击的情况下才采取隔离措施。
混杂模式Promiscuous
缺省情况下,IDS的网络界面只能看到从主机进出的包——这是非混杂模式。通过设置网络界面的混杂模式,IDS可以监听到整个网络内所有的流量。这是基于网络地IDS工作的必要条件。交换式HUB防止主机监听网段内所有流量,但是很多交换机提供跨越端口来监视网络内所有的网络活动。
路由器Routers
路由器是连接子网的设备,它在OSI七层模型的传输层和网络层工作。路由器的基本职能是为网络数据包到达目的地找到正确路由。许多路由器都有访问控制表(Access Control Lists (ACLs))来过滤不期望的数据包。许多路由器的*志可以被IDS利用,提供关于阻止网络访问有价值的信息。
扫描器(Scanners)
扫描器是一种能够扫描网络或者主机漏洞的自动工具。像IDS一样,扫描器有很多种类。详细列表见作者主页:http://www.networkintrusion.co.uk/scanners.htm
网络扫描器(Network Scanners)
网络扫描器用来映射一个网络,找到网络上的所有主机。传统的方法使用ICMP ping来进行探测,但是这种方法容易被发现。有多种不同的方法来隐蔽网络扫描,像ack扫描和fin扫描。这些隐蔽扫描方法主要是利用不同操作系统对这些扫描方式的响应方式不同。
工具:nmap.
网络漏洞扫描器Network Vulnerability Scanners
网络漏洞扫描器是网络扫描器的发展,可以检查目标主机的漏洞。攻击者和安全人员都利用网络漏洞扫描器作为探测工具。它很容易引起网络入侵检测系统的警报。有的网络漏洞扫描器主要扫描web服务器的漏洞,像Whisker 甚至可以有一些的设置方法来避开NIDS的检测
产品:Retina、 CyberCop Scanner
Scanner Category: 主机漏洞扫描器Host Vulnerability Scanners
使用主机漏洞扫描器,特权用户可以从内部扫描主机,检查诸如密码强度、文件权限的安全策略方面的漏洞。它的扫描可以被IDS,尤其是HIDS探测到。 SecurityExpressions 是一个远程 Windows 漏洞扫描器,甚至可以自动修补系统漏洞。其它像ISS的数据库扫描器(ISS database scanner)可以扫描数据库漏洞。
脚本小子Script Kiddies
脚本小子利用别人开发的漏洞利用脚本来达到自己的目的,而不是自己努力。有很多人轻视脚本小子的能力,甚至贬损他们。但是他们是一股不可小看的力量,像grc.com(http://grc.com/dos/intro.htm)。他们就像持有枪械的小孩,不需要理解弹道学或者去构筑坚固的炮台,但决不能低估他们。
躲避(Shunning )
“躲避”是很多边缘设备的配置方法,目的是拒绝从不受欢迎的源地址来的各种数据包。有的网络甚至拒绝从某一特定国家来的流量。
特征(Signatures)
IDS 的核心是攻击特征,IDS根据攻击特征产生事件触发。攻击特征的描述太短容易产生误报,太长则延缓IDS的响应速度。有人将IDS识别攻击特征的数量作为 IDS质量的衡量标准。有的厂商用一条特征覆盖很多种攻击方法,而有的厂商则将其拆分为几种特征,假以宣传自己的产品可以识别更多的攻击,实则不然。
隐蔽(Stealth )
隐蔽模式使得IDS在对外界不可见的情况下正常工作。这种IDS大多数用在DMZ外,在防火墙的保护之外。它有自动响应的缺点。
作者:不详
虽然入侵检测技术还不是很成熟,但是其发展却是很迅速。与IDS相关的新名词也*新月异。这里按字母顺序罗列了相关的术语,有的可能很普遍了,但是有的却很少见,或者定义不明确。IDS的迅速发展以及一些IDS生产厂商的市场影响力使得一些名词的含义混乱:同一个名词,不同厂商却用它表示不同的意义。
术语添加或者需要解释, Pls mailto:talisker@networkintrusion.co.uk
中文解释的问题,Pls mailto:mad@email.com.cn
警报(Alerts)
警报是IDS向系统操作员发出的有入侵正在发生或者正在尝试的消息。一旦侦测到入侵,IDS会以各种方式向分析员发出警报。如果控制台在本地,IDS警报通常会显示在监视器上。IDS还可以通过声音报警(但在繁忙的IDS上,建议关闭声音)。警报还可以通过厂商的通信手段发送到远程控制台,除此之外,还有利用SNMP协议(安全性有待考虑)、email、SMS/Pager或者这几种方式的组合进行报警。
异常(Anomaly)
大多 IDS在检测到与已知攻击特征匹配的事件就会发出警报,而基于异常的IDS会用一段时间建立一个主机或者网络活动的轮廓。在这个轮廓之外的事件会引起 IDS警报,也就是说,当有人进行以前从没有过的活动,IDS就会发出警报。比如一个用户突然获得管理员权限(或者root权限)。一些厂商把这种方法称为启发式IDS,但是真正的启发式IDS比这种方法有更高的智能性。
硬件IDS(Appliance )
现在的IDS做成硬件放到机架上,而不是安装到现有的操作系统中,这样很容易就可以把IDS嵌入网络。这样的IDS产品如CaptIO, Cisco Secure IDS, OpenSnort, Dragon and SecureNetPro。
网络入侵特征数据库(ArachNIDS - Advanced Reference Archive of Current Heuristics for Network Intrusion Detection Systems)
由白帽子住持Max Vision开发维护的ArachNIDS是一个动态更新的攻击特征数据库,适用于多种基于网络的入侵检测系统。(白帽子成员相继入狱, Max Butler还未出狱,Max Vision又被判18月监禁,但愿白帽子能够好好维持)
URL: http://www.whitehats.com/ids/
攻击注册和信息服务(ARIS - Attack Registry & Intelligence Service )
ARIS是SecurityFocus推出的一项安全信息服务,允许用户向SecurityFocus匿名报告网络安全事件。SecurityFocus整理这些数据,并和其它信息综合,形成详细的网络安全统计分析和趋势预测。
攻击(Attacks )
攻击可以定义为试图渗透系统或者绕过系统安全策略获取信息,更改信息或者中断目标网络或者系统的正常运行的活动。下面是一些IDS可以检测的常见攻击的列表和解释:
攻击1:拒绝服务攻击(Attacks: DOS - Denial Of Service attack )
DOS攻击只是使系统无法向其用户提供服务,而不是通过黑客手段渗透系统。拒绝服务攻击的方法从缓冲区溢出到通过洪流耗尽系统资源,不一而足。随着对拒绝服务攻击的认识和防范不断加强,又出现了分布式拒绝服务攻击。
攻击2:分布式拒绝服务攻击(Attacks: DDOS - Distributed Denial of Service )
分布式拒绝服务攻击是一种标准的拒绝服务攻击,通过控制多台分布的远程主机向单一主机发送大量数据,并因此得名。
攻击3:Smurf攻击(Attacks: Smurf )
Smurf攻击是以最初发动这种攻击的程序名Smurf来命名。这种攻击方法通过欺骗方法向“Smurf放大器”的网络发送广播地址的ping,放大器网络向欺骗地址——攻击目标系统返回大量的ICMP回复消息,引起目标系统的拒绝服务。
这里有每5分钟更新一次的可用的“放大器”: http://www.powertech.no/smurf/ (但愿你的网络不在此列…)
攻击4:特洛伊木马(Attacks: Trojans )
特洛伊密码来自于古希腊著名的木马攻击特洛伊城的故事。在计算机术语中最初指的是貌似合法但其中包含恶意软件的程序。当合法程序执行时,恶意软件在用户毫无察觉的情况下被安装。后来大多数的这类恶意软件都是远程控制工具,特洛伊木马也就专指这类工具,如BackOrifice, SubSeven, NetBus 等。
自动响应(Automated Response )
如对攻击发出警报,一些IDS 能够自动对攻击作出防御性反应,可以通过以下途径实现:
1 重新配置路由器或者防火墙,拒绝来自相同地址的流量;
2 发送reset包切断连接。
这两种方法都有问题。攻击者可以通过信任地址欺骗实施攻击,引起设备重新配置,使得设备拒绝这些信任地址,达到拒绝服务的目的。发包需要有一个活动的网络接口,又使得其本身易受攻击。解决办法是可以把活动网卡放在防火墙内,或者使用专门的发包程序,避开标准IP栈的需求。
CERT计算机应急响应组(CERT - Computer Emergency Response Team )
CERT来自成立于Carnegie Mellon University的第一支计算机安全事件响应队伍的名称。今天许多组织都有自己的CERT(计算机安全事件处理队伍)。同CIRT(计算机事件响应组)相区别,CERT侧重于紧急事件的快速反应,而不是长期监视。
通用入侵检测框架:(CIDF - Common Intrusion Detection Framework )
CIDF是为了在某种程度上对入侵检测进行标准化,开发了一些协议和应用程序接口,使得入侵检测研究项目的软件能够共享信息和资源,同样入侵检测系统组件也可以被其他系统应用。
计算机事件响应组(CIRT - Computer Incident Response Team )
源自CERT, CIRT的不同在于对安全事件的处理方式。CERT的目标是特殊的计算机紧急事件。而CIRT中的事件并不都是紧急事件,还包括其它安全事件。
通用入侵描述语言(CISL - Common Intrusion Specification Language )
CISL是为了在CIDF组件之间进行通信而描述入侵的通用语言。同CIDF的标准化工作一样,CISL也是试图对入侵检测研究的描述语言进行标准化。
通用漏洞披露(CVE - Common Vulnerabilities and Exposures )
关于漏洞一个问题就是当设计漏洞扫描或者采取应对策略时,不同厂商对漏洞的称谓完全不同。此外有的厂商用几种特征去描述一条漏洞,并解释为可以检测更多的攻击。MITRE建设了CVE,对漏洞名称进行了标准化,加入CVE的厂商都使用标准化漏洞描述。
URL: http://www.cve.mitre.org./
构造数据包(Crafting Packets )
不遵循通常的数据包结构,通过构造自己的数据包,能够进行数据包欺骗,或者使接收者无法处理这样的数据包。 Nemesis就是这样一个工具,最新版本1.32(当然你可以自己用libnet写). URL: http://jeff.chi.wwti.com/nemesis/
同步失效(见“躲避”)( Desyncronization (see also Evasion) )
最初,同步失效是指利用序列号的躲避IDS的方法。一些IDS无法确定期望的序列号,从而对这种数据包无能为力,无法重构数据包。这种技术98年产生,现在已经过时。有的文章用来指代其他IDS躲避方法。
Eleet
黑客们在写漏洞开发程序时,经常会留下标记,最常见的就是“elite” (精华,精锐),通常是elite = eleet,转换为数字就是31337. 31337 经常被用作端口号或者序列号等。现在流行的词是"skillz".
列举(Enumeration )
在经过被动探测和社会工程学的工作之后,攻击者开始列举网络资源。列举就是当攻击者主动探测一个网络来发现有哪些漏洞可以利用。由于这个活动是主动的,并且可以被探测到,但是攻击者的活动仍会尽可能地隐蔽,避免被探测到。
躲避(见“同步失效”)(Evasion (see also Desynchronization) )
躲避是实施攻击计划,避开IDS检测的过程。躲避的技巧就是使IDS只看到攻击的一面,而目标却在其它。一种躲避的形式就是为不同的数据包设置不同的TTL 值。因此经过IDS的信息看上去并没有什么问题,然而,这些并不影响攻击到达目标。一旦到达目标,就只有有用的攻击了。这里大大简化了实际躲避的复杂性。 Ptacek and Nesham的文章《嵌入、逃避和拒绝服务:如何躲避网络入侵检测》(Insertion, Evasion, and Denial of Service: Eluding Network Intrusion Detection)讲述了实施躲避的基本原理和方法。
http://www.robertgraham.com/mirror/Ptacek-Newsham-Evasion-98.html
漏洞利用(Exploits )
对于每一个漏洞,都有利用此漏洞进行攻击的机制。为了攻击系统,攻击者编写出漏洞利用代码或脚本。
漏洞利用:零时间利用(Exploits: Zero Day Exploit)
零时间漏洞利用指的是还没有被公布或者传播的漏洞利用。一旦安全界发现一个漏洞,厂商会发布补丁,IDS系统会加入相应的攻击特征检测。对攻击者而言,零时间漏洞利用的价值最大。
漏报(False Negatives )
漏报:攻击事件没有被IDS检测到或者逃过分析员的眼睛。
误报(False Positives )
误报:IDS对正常事件识别为攻击并进行报警。
防火墙(Firewalls )
防火墙作为网络安全的第一道闸门,它与IDS功能不同,但其*志可以为IDS提供有用的信息。防火墙依据对IP地址或者端口的规则拒绝非法连接。
FIRST - Forum of Incident Response and Security Teams
FIRST是一个由国际上政府或者民间组织建立的联盟,以进行安全信息交换和协调安全事件响应。FIRST年会总是受到很大关注。
URL: http://www.first.org/
分片(Fragmentation )
如果数据包过大,将会被分片传输。分片依据是网络最大传输单元(MTU)。例如令牌环网是4464,而以太网是1500。当一个数据包从令牌环网向以太网传输,它将被按照以太网的MTU进行分片。在有限的网络条件下,分片传输是很正常的。但是黑客们利用分片来逃避IDS检测,有几种臭名昭著的DOS攻击也是利用了分片技术。
黑客规范:(Hacker Ethics )
尽管每个人的认识不同,对大多数成熟的黑客而言,黑客规范是神圣的,应该受到尊敬并得到遵守。例如无条件信息共享,不得偷窃、修改和泄漏被攻击系统的数据信息等。
URL:http://www.tuxedo.org/~esr/jargon/html/entry/hacker-ethic.html
黑客规范1:黑帽子(Hacker Ethics: Black Hat )
藐视法律,做事不考虑任何约束的反面黑客。一旦发现漏洞他们往往会私下传播利用,而不是向社会公布。
黑客规范2:白帽子(Hacker Ethics: White Hat )
正面黑客:一旦发现漏洞,他们首先通知厂商,在发布修补补丁之前,他们不会公布漏洞。关于白帽对黑客规范的观点和一些**的IDS工具,见Jude Thaddeus的文章Confessions of a white hat hacker.
URL:http://www.idg.net/english/crd_network_480552.html
黑客规范3:灰帽子(Hacker Ethics: Grey Hat )
灰帽黑客介于前两者之间,一旦发现漏洞,他们会向黑客群体发布,同时通知厂商,然后观察事态发展。他们遵循了黑客守则的两点道德规范。许多人认为厂商应该最先得到通知,很多厂商利用这些信息。Rain Forest Puppy 发布了一个策略既能保证厂商利益,又不影响安全研究。
URL:http://www.wiretrip.net/rfp/policy.html
启发(Heuristics )
“启发“中包含了应用于IDS中的人工智能的思想。启发式IDS已经提出近十年,然而至今仍进展不大,而黑客却可以“训练”IDS使其忽视恶意攻击。一些 IDS使用异常模型来探测入侵攻击,然而IDS需要大量时间来“学习”以识别正常事件。厂商在市场上把这称为启发式IDS,但至少这种IDS并没有应用人工智能对输入数据进行分析。
Honeynet 工程(Honeynet Project )
根据Honeynet 工程的定义:Honeynet是一个学习工具,是一个被设计含有缺陷的网络系统。一旦系统安全受到威胁,相关信息就会被捕捉,并被小组人员分析和学习。因此Honeynet是一个非常有用的,透视攻击全过程的资源。Honeynet小组由30个安全专家组成,每人都设置了一系列的“蜜罐”来引诱攻击者,通过观察研究策略、工具和黑客行为。
URL:http://project.honeynet.org/project.html
蜜罐(Honeypot )
蜜罐是模拟存在漏洞的系统,为攻击者提供攻击目标。蜜罐在网络中没有任何用途,因此任何连接都是可能的攻击。蜜罐的另一个目的就是诱惑攻击者在其上浪费时间,延缓对真正目标的攻击。尽管蜜罐的最初设计目标是为起诉攻击者提供证据收集,但是关于应用蜜罐做陷阱的讨论很多。如果蜜罐在网络内部,攻击者至少要攻陷一个网络设备。有的国家法律规定,蜜罐收集的证据不能作为起诉证据。
IDS分类(IDS Categories)
基于应用的 IDS( Application IDS)基于应用的IDS知道针对特殊应用的入侵特征,比如对web服务器和数据库系统的安全等。但是,许多基于主机的IDS正在从操作系统预警转向应用程序预警,虽然它们缺省不是应用程序预警,但可以通过训练学习达到。例如KSE(一种基于主机的IDS)可以通过*志得到包括应用程序在内的系统的所有运行信息,但是大部分与安全无关的*志都被过滤掉,涉及安全的信息,例如病毒和访问失败等将被按不同等级报警。Entercept Web服务器版本是一个基于特殊应用的IDS。
控制台(Consoles)
为了使分布的IDS探测端协同工作,需要由集中的控制台进行管理。现代的集中管理控制台可以接收和处理其它信息源,例如其它IDS产品、防火墙产品和路由器的报警或者*志。这些相关信息有助于发现更完整的攻击计划。一些控制台还可以向探测端发放攻击特征和实行远程控制。产品: Intellitactics Network Security Monitor 、Open Esecurity Platform.
文件完整性检查(File Integrity Checkers)
系统被黑客入侵,经常会发生一些重要文件的替换。通过对关键文件进行消息摘要,并周期性地对这些文件进行检查,可以发现文件变化,从而达到一定的保护目的。一旦发现文件变化,就会触发文件完整性检查工具发出警报。系统管理员可以通过同样的处理确定系统受危害的程度。以前的文件完整性检查工具都是事后处理工具,但是现在很多工具都提供即时检查和报警,因此也算作一种IDS。
产品:Tripwire、Intact.
蜜罐(Honeypots)
蜜罐是可以模拟脆弱性主机,提供攻击目标。蜜罐主机不提供其它任何服务,因此所有连接到蜜罐主机的连接都是可能的攻击。蜜罐的另一个目的就是诱惑攻击者在其上浪费时间,延缓对真正目标的攻击。
尽管蜜罐的最初设计目标是为起诉攻击者提供证据收集,但是关于应用蜜罐做陷阱的讨论很多。如果蜜罐在网络内部,攻击者至少要攻陷一个网络设备。有的国家法律规定,蜜罐收集的证据不能作为起诉证据。
产品:Mantrap and Sting.
基于主机的IDS(Host-based IDS,HIDS)
基于主机的IDS监视系统/事件*志,分析可疑活动,可以用来侦测系统内部信任用户误用以及通过逃避常规监测方法的外来渗透。除此之外,基于主机的IDS对事件/*志/时间做签名分析,有的产品还应用启发式学习技术。由于其接近实时探测,能够很快探测系统错误,使得它在技术人员和安全人员中应用的很广泛。 “基于主机的IDS”指基于服务器/工作站主机的所有类型的入侵检测系统。厂商们为了迷惑用户提出了网络节点IDS和文件完整性检查工具等概念,都属于基于主机的IDS。
产品:Kane Secure Enterprise 、Dragon Squire.
混合IDS(Hybrid IDS)
现代交换式网络不允许网卡完全工作在混杂模式,为传统的基于网络的IDS工作带来了困难(然而有的交换机允许在跨越端口或者连接模式终端访问点-TAP监听交换机的所有流量),同时网络带宽的增加使得NIDS的抓包率大大降低。一种解决方式就是混合IDS:把NIDS向上扩展一层,结合网络节点IDS和 HIDS,形成混合形式的入侵检测系统。虽然这种IDS覆盖范围增大了,但是需要考虑由此带来的巨大流量和成本问题。很多网络为关键服务器保留混合 IDS。
一些厂商把不仅完成一种概念的IDS都成为混合IDS;然而,我认为这更多是因为市场原因。混合IDS只是在2000年中期一个在市场上流行的词汇,现在很多人已经开始放弃。
产品: CentraxICE 、 RealSecure Server Sensor.
基于网络的IDS( Network IDS (NIDS)
NIDS 监视探测器所在网段的所有流量,对包含攻击特征或者可疑的异常行为作出反应。传统上,NIDS是具有IDS特征过滤器的混杂模式包嗅探器,然而今天的 NIDS具有更高的智能性,能够进行协议分析和状态保持。NIDS有基于应用的产品,可以直接安装在应用主机上。NIDS可以分析每一个数据报寻找攻击特征,但是当流量过大时,会出现丢包现象。
许多NIDS有对攻击的响应功能(见第一部分的“自动响应”)。在2000年后期很多NIDS宣传进入高速和交换网络的时代,更有的厂商宣传NIDS能够处理G比特的网络,通过交换机的监听断口或者TAP端口可以克服交换网络带来的不便。例如Shomiti 交换机就支持这种功能。
产品:SecureNetPro 、Snort.
网络节点IDS( Network Node IDS (NNIDS))
交换网络和高速网络给NIDS带来问题:一些NIDS在高速网络下工作不可靠,丢包率升高。交换网络不允许混杂模式网卡监听到网络内所有流量。而网络节点IDS将NIDS的功能分布到单个的网络节点,从而解决了高速和交换网络的问题。
虽然网络节点IDS与个人防火墙相近,但它们也有区别。对个人防火墙归类为NNIDS,在对连接企图将应用事件分析。例如在个人防火墙上报警"attempted connection to port *****" ,NNIDS将根据“whatever”攻击特征识别为“whatever”探测。NNIDS将收集到的事件向中央控制台汇报。尽管有这些区别,但是有的个人防火墙厂商还是将其作为网络节点IDS推出。
产品: BlackICE Agent 、Tiny CMDS.
个人防火墙 Personal Firewall
个人防火墙安装在个人操作系统上防止非法连接进出。它们能否有效保护主机免受攻击并不可靠。不要将它与网络节点IDS混淆。
例如: ZoneAlarm 、 Sybergen.
基于目标的IDS(Target-Based IDS )
这类IDS的概念不是很明确,不同的人有不同的理解。一种定义指的是文件完整性检查工具,而另一种是基于网络的IDS,可以侦测攻击特征保护网络。后一种定义的目标是避开不必要的检测,加速IDS。我个人希望了解每一种攻击而不考虑其成功与否。由于这个术语有太多的含义,应该避免使用它,以免混淆。
入侵检测工作组-IDWG(Intrusion Detection Working Group (IDWG))
IDWG的工作目标是定义入侵检测和响应系统进行信息共享和交换,以及与管理系统交互所需的数据格式。IDWG与IETF其它工作组协同工作。
URL:http://www.ietf.org/html.charters/idwg-charter.html
事件处理Incident Handling
探测到入侵只是开始。更多的情况是,控制台操作员会经常接到警报,因此没有时间亲自跟踪每个事件,他们会对感兴趣的事件做上标志,以利于事件处理小组深入调查事件。经过最初响应之后,接下来需要处理的问题是深入调查、取证和法庭起诉工作。Chris Jordan的论文 "Analyzing IDS Data" 论述了IDS警报分析的前两个阶段。
URL:http://www.securityfocus.com/focus/ids/articles/analyzeids.html
事件响应(Incident Response)
对潜在事件的初始反应,然后依据事件处理程序操作。
隔离(Islanding)
隔离是把网络从Internet上隔离开来,这往往是迫不得已采取得办法,通常在遇到大规模病毒发作或者遇到很严重的攻击的情况下才采取隔离措施。
混杂模式Promiscuous
缺省情况下,IDS的网络界面只能看到从主机进出的包——这是非混杂模式。通过设置网络界面的混杂模式,IDS可以监听到整个网络内所有的流量。这是基于网络地IDS工作的必要条件。交换式HUB防止主机监听网段内所有流量,但是很多交换机提供跨越端口来监视网络内所有的网络活动。
路由器Routers
路由器是连接子网的设备,它在OSI七层模型的传输层和网络层工作。路由器的基本职能是为网络数据包到达目的地找到正确路由。许多路由器都有访问控制表(Access Control Lists (ACLs))来过滤不期望的数据包。许多路由器的*志可以被IDS利用,提供关于阻止网络访问有价值的信息。
扫描器(Scanners)
扫描器是一种能够扫描网络或者主机漏洞的自动工具。像IDS一样,扫描器有很多种类。详细列表见作者主页:http://www.networkintrusion.co.uk/scanners.htm
网络扫描器(Network Scanners)
网络扫描器用来映射一个网络,找到网络上的所有主机。传统的方法使用ICMP ping来进行探测,但是这种方法容易被发现。有多种不同的方法来隐蔽网络扫描,像ack扫描和fin扫描。这些隐蔽扫描方法主要是利用不同操作系统对这些扫描方式的响应方式不同。
工具:nmap.
网络漏洞扫描器Network Vulnerability Scanners
网络漏洞扫描器是网络扫描器的发展,可以检查目标主机的漏洞。攻击者和安全人员都利用网络漏洞扫描器作为探测工具。它很容易引起网络入侵检测系统的警报。有的网络漏洞扫描器主要扫描web服务器的漏洞,像Whisker 甚至可以有一些的设置方法来避开NIDS的检测
产品:Retina、 CyberCop Scanner
Scanner Category: 主机漏洞扫描器Host Vulnerability Scanners
使用主机漏洞扫描器,特权用户可以从内部扫描主机,检查诸如密码强度、文件权限的安全策略方面的漏洞。它的扫描可以被IDS,尤其是HIDS探测到。 SecurityExpressions 是一个远程 Windows 漏洞扫描器,甚至可以自动修补系统漏洞。其它像ISS的数据库扫描器(ISS database scanner)可以扫描数据库漏洞。
脚本小子Script Kiddies
脚本小子利用别人开发的漏洞利用脚本来达到自己的目的,而不是自己努力。有很多人轻视脚本小子的能力,甚至贬损他们。但是他们是一股不可小看的力量,像grc.com(http://grc.com/dos/intro.htm)。他们就像持有枪械的小孩,不需要理解弹道学或者去构筑坚固的炮台,但决不能低估他们。
躲避(Shunning )
“躲避”是很多边缘设备的配置方法,目的是拒绝从不受欢迎的源地址来的各种数据包。有的网络甚至拒绝从某一特定国家来的流量。
特征(Signatures)
IDS 的核心是攻击特征,IDS根据攻击特征产生事件触发。攻击特征的描述太短容易产生误报,太长则延缓IDS的响应速度。有人将IDS识别攻击特征的数量作为 IDS质量的衡量标准。有的厂商用一条特征覆盖很多种攻击方法,而有的厂商则将其拆分为几种特征,假以宣传自己的产品可以识别更多的攻击,实则不然。
隐蔽(Stealth )
隐蔽模式使得IDS在对外界不可见的情况下正常工作。这种IDS大多数用在DMZ外,在防火墙的保护之外。它有自动响应的缺点。