入侵检测系统与入侵防御系统
入侵检测系统(IDS, Intrusion Detection System)即通过从网络系统中的若干关键节点收集并分析信息,监控网络中是 否有违反安全策略的行为或者是否存在入侵行为。入侵防御系统(IPS, Intrusion Prevention System)是一部能够监视网络或网络设备的网络资料传输行为的计算机网络安全设备,能够即时的中断、调整或隔离一些不正常或是具有伤害性的网络资料传输行为。
入侵检测系统
IDS是计算机的监视系统,它通过实时监视系统,一旦发现异常情况就发出警告。以信息来源的不同和检测方法的差异分为几类:根据信息来源可分为HIDS(Host-based Intrusion Detection System)和NIDS(Network Intrusion Detection System),根据检测方法又可分为异常入侵检测(类似于白名单,误报率较高)和误用入侵检测(类似于黑名单,漏报率较高)。绝大多数IDS系统都是被动的,也就是说,在攻击实际发生之前,它们往往无法预先发出警报。
工作流程
检测信息收集
信息收集包括收集系统,网络,数据及用户活动的状态和行为,入侵检测利用的信息一般来自:系统和网络日志文件、非正常的目录和文件改变、非正常的程序执行这三个方面。
信息分析
对收集到的有关系统、网络、数据以及用户的活动状态和行为等信息,进行基于签名、基于统计异常和有状态协议等分析。
告警与响应
根据入侵性质和类型,做出相应的告警与响应。 它能够提供安全审计、监视、攻击识别和反攻击等多项功能,对内部攻击、外部攻击和误操作进行实时监控,在网络安全技术中起到了不可替代的作用。
主要功能
实时监测
实时地监视、分析网络中所有的数据报文,发现并实时处理所捕获的数据报文。
安全审计
对系统记录的网络事件进行统计分析,发现异常现象,得出系统的安全状态,找出所需要的证据
主动响应
主动切断连接或与防火墙联动,调用其他程序处理
根据信息来源分类
主机入侵检测系统
主机入侵检测系统 (HIDS) 在网络上的各个主机或设备上运行。其检测的目标主要是主机系统和系统本地用户,检测原理是根据主机的审计数据和系统日志发现可疑事件。HIDS 仅监视来自设备的入站和出站数据包,并在检测到可疑活动时向用户或管理员发出警报。它拍摄现有系统文件的快照,并将其与上一个快照匹配。如果修改或删除了关键系统文件,则会向管理员发送警报进行调查。
- 优点:信息更详细、误报率要低、部署灵活。
- 缺点:会降低应用系统的性能;依赖于服务器原有的日志与监视能力;代价较大;不能对网络进行监测;需安装多个针对不同系统的检测系统。
网络入侵检测系统
网络入侵检测系统 (NIDS) 放置在网络中的一个或多个关键位置,以监控进出网络上所有设备的流量。它对整个子网上的传递流量进行分析,并将子网上传递的流量与已知攻击库进行匹配。一旦识别出攻击或检测到异常行为,就可以将警报发送给管理员。当我们根据系统交互性对NIDS的设计进行分类时,有两种类型:在线和离线NIDS,通常分别称为内联和抽头模式。在线NIDS实时处理网络。它分析以太网数据帧并应用一些规则,以确定它是否是攻击。离线NIDS处理存储的数据,并通过一些过程来决定它是否是攻击。NIDS还可以与深度神经网络技术结合使用,以提高检测率和预测率。
- 优点:能够检测那些来自网络的攻击和超过授权的非法访问;不需要改变服务器等主机的配置,也不会影响主机性能;风险低;配置简单。
- 缺点:成本高、检测范围受局限;大量计算,影响系统性能;大量分析数据流,影响系统性能;对加密的会话过程处理较难;网络流速高时可能会丢失许多封包,容易让入侵者有机可乘。
根据检测方法分类
异常入侵检测
由于恶意软件的快速发展,因此引入基于异常的入侵检测系统,主要用于检测未知攻击。基本方法是使用机器学习创建可信活动模型,然后将新行为与此模型进行比较。由于这些模型可以根据应用程序和硬件配置进行训练,因此与传统的基于签名的IDS相比,基于机器学习的方法具有更好的通用属性。尽管此方法能够检测以前未知的攻击,但它可能会遭受误报:以前未知的合法活动也可能被归类为恶意。大多数现有的 IDS 在检测过程中都非常耗时,这会降低 IDS 的性能。
常用检测方法:
- 基于统计的技术:通过使用标准差、均值、阈值和概率对偏离特定行为的程度进行评分来识别异常。最早的方法使用单变量模型,后来的方法采用了多变量模型和时间序列模型。
- 基于知识的技术:这些技术依赖于过去在异常和正常的操作下观察到的参数和知识的存在。基于专家知识的技术可以使用专家知识系统、有限状态机、描述语言和数据聚类。
- 机器学习和深度学习技术:学习算法通过从过去的经验中学习而无需人工干预来提高IDS的性能。已经针对IDS应用研究了各种机器学习算法。文献中最常用的算法包括支持向量机(SVM)、朴素贝叶斯、遗传算法(GA)、k-最近邻(K-NN)、决策树(DT)、模糊逻辑和人工神经网络(ANN)。此外,具有不平衡类分布的入侵数据集可以通过采样技术或不平衡学习算法来解决。最近,也有研究人员利用深度网络的独特性质进行特征学习和分类。
误用入侵检测(基于签名的IDS)
通过查找特定模式来检测攻击,例如网络流量中的字节序列或恶意软件使用的已知恶意指令序列。 此类IDS 可以轻松检测已知攻击,但很难检测到没有可用模式的新攻击。
常用检测方法:
模式匹配法:是常常被用于入侵检测技术中。它是通过把收集到的信息与网络入侵和系统误用模式数据库中的已知信息进行比较,从而对违背安全策略的行为进行发现。模式匹配法可以显著地减少系统负担,有较高的检测率和准确率。
专家系统法:这个方法的思想是把安全专家的知识表示成规则知识库,再用推理算法检测入侵。主要是针对有特征的入侵行为。
基于状态转移分析的检测法:该方法的基本思想是将攻击看成一个连续的、分步骤的并且各个步骤之间有一定的关联的过程。在网络中发生入侵时及时阻断入侵行为,防止可能还会进一步发生的类似攻击行为。在状态转移分析方法中,一个渗透过程可以看作是由攻击者做出的一系列的行为而导致系统从某个初始状态变为最终某个被危害的状态。
IDS系统的限制
- 噪声会严重限制入侵检测系统的有效性。由软件错误、损坏的 DNS 数据以及逃逸的本地数据包生成的错误数据包可能会产生非常高的误报率。
- 真实攻击的数量通常远远低于误报的数量,以至于真正的攻击经常被遗漏和忽略。
- 许多攻击都是针对通常过时的特定版本的软件。需要一个不断变化的签名库来缓解威胁。过时的签名数据库可能会使 IDS 容易受到新策略的影响。
- 对于基于签名的 IDS,新的威胁发现与其签名应用于 IDS 之间存在延迟。在此滞后时间内,IDS 将无法识别威胁。
- 它无法弥补薄弱的识别和认证机制或网络协议的弱点。当攻击者由于身份验证机制较弱而获得访问权限时,IDS 无法阻止攻击者发生任何不当行为。
- 大多数入侵检测设备不处理加密数据包。因此,加密数据包可以允许在发生更严重的网络入侵之前未发现的网络入侵。
- 入侵检测软件根据与发送到网络的 IP 数据包关联的网络地址提供信息。如果 IP 数据包中包含的网络地址准确,这将非常有用。但是,IP 数据包中包含的地址可能是伪造或加扰的。
- 由于NIDS系统的性质,以及它们需要在捕获协议时对其进行分析,NIDS系统可能容易受到网络主机可能易受攻击的基于协议的攻击。无效数据和 TCP/IP 堆栈攻击可能会导致 NIDS 崩溃。
- 云计算上的安全措施没有考虑用户隐私需求的变化。它们为所有用户提供相同的安全机制,无论用户是公司还是个人。
IDS绕过技术
- 分段:通过发送分段数据包,攻击者将在雷达下,可以轻松绕过检测系统检测攻击特征的能力。
- 避免默认值:协议使用的 TCP 端口并不总是为正在传输的协议提供指示。例如,IDS 可能期望在端口 12345 上检测到特洛伊木马。如果攻击者将其重新配置为使用其他端口,IDS 可能无法检测到特洛伊木马的存在。
- 协调的低带宽攻击:协调众多攻击者(或代理)之间的扫描并将不同的端口或主机分配给不同的攻击者,使 IDS 难以关联捕获的数据包并推断网络扫描正在进行中。
- 地址欺骗/代理:攻击者可以使用安全性差或配置不正确的代理服务器来阻止攻击,从而增加安全管理员确定攻击来源的难度。如果源被服务器欺骗和退回,则IDS很难检测到攻击的来源。
- 模式更改规避:IDS通常依靠“模式匹配”来检测攻击。通过稍微改变攻击中使用的数据,有可能逃避检测。例如,Internet 邮件访问协议 (IMAP) 服务器可能容易受到缓冲区溢出的影响,而 IDS 能够检测到 10 种常见攻击工具的攻击特征。通过修改工具发送的有效负载,使其与 IDS 期望的数据不相似,可以逃避检测。
入侵防御系统
入侵防御系统 (IPS),也称为入侵检测和防御系统 (IDPS),是监控网络或系统活动中恶意活动的网络安全设备。入侵防御系统的主要功能是识别恶意活动,记录有关此活动的信息,报告并尝试阻止或停止它。
入侵防御系统被认为是入侵检测系统的扩展,因为它们都监视网络流量和/或系统活动中的恶意活动。主要区别在于,与入侵检测系统不同,入侵防御系统是在线放置的,能够主动防止或阻止检测到的入侵。IPS 可以采取诸如发送警报、丢弃检测到的恶意数据包、重置连接或阻止来自违规 IP 地址的流量等操作。IPS 还可以纠正循环冗余校验(CRC) 错误、对数据包流进行碎片整理、缓解 TCP 排序问题以及清理不需要的传输和网络层选项。
为什么产生了IPS系统?
- 串行部署的防火墙可以拦截低层攻击行为,但对应用层的深层攻击行为无能为力。
- 旁路部署的IDS可以及时发现那些穿透防火墙的深层攻击行为,作为防火墙的有益补充,但很可惜的是无法实时的阻断。
- IDS和防火墙联动:通过IDS来发现,通过防火墙来阻断。但由于迄今为止没有统一的接口规范,加上越来越频发的“瞬间攻击”(一个会话就可以达成攻击效果,如SQL注入、溢出攻击等),使得IDS与防火墙联动在实际应用中的效果不显著。
分类
- 基于网络的入侵防御系统(NIPS):通过分析协议活动来监控整个网络的可疑流量。
- 无线入侵防御系统 (WIPS):通过分析无线网络协议来监控无线网络中的可疑流量。
- 网络行为分析 (NBA):检查网络流量以识别产生异常流量的威胁,例如分布式拒绝服务 (DDoS) 攻击、某些形式的恶意软件和违反策略的行为。
- 基于主机的入侵防御系统 (HIPS):已安装的软件包,通过分析单个主机内发生的事件来监视该主机是否存在可疑活动。
功能
- 入侵防护:实时、主动拦截黑客攻击、蠕虫、网络病毒、后门木马、Dos等恶意流量,保护企业信息系统和网络架构免受侵害,防止操作系统和应用程序损坏或宕机。
- Web安全:基于互联网Web站点的挂马检测结果,结合URL信誉评价技术,保护用户在访问被植入木马等恶意代码的网站时不受侵害,及时、有效地第一时间拦截Web威胁。
- 流量控制:阻断一切非授权用户流量,管理合法网络资源的利用,有效保证关键应用全天候畅通无阻,通过保护关键应用带宽来不断提升企业IT产出率和收益率。
- 上网监管:全面监测和管理IM即时通讯、P2P下载、网络游戏、在线视频,以及在线炒股等网络行为,协助企业辨识和限制非授权网络流量,更好地执行企业的安全策略。
检测方法
大多数入侵防御系统使用三种检测方法之一:基于签名、基于统计异常和有状态协议分析。
基于签名的检测
基于签名的 (误用检测)IDS 监控网络中的数据包,并与预配置和预先确定的攻击模式(称为签名)进行比较。
基于统计异常的检测
基于异常的 IDS 将监控网络流量并将其与已建立的基线进行比较。基线将确定该网络的“正常”内容 - 通常使用哪种带宽以及使用什么协议。但是,如果未智能配置基线,则可能会针对合法使用流量发出误报警报。
有状态协议分析检测
该方法通过将观察到的事件与“普遍接受的良性活动定义的预定配置文件”进行比较来识别协议状态的偏差。