Skip to main content

入侵预防系统

http://gengwg.blogspot.com/
入侵预防系统英语Intrusion Prevention System,缩写为IPS),又称为入侵侦测与预防系统(intrusion detection and prevention systems,缩写为IDPS),是计算机网络安全设施,是对防病毒软件(Antivirus Softwares)和防火墙的补充。入侵预防系统是一部能够监视网络或网络设备的网络数据传输行为的计算机网络安全设备,能够实时的中断、调整或隔离一些不正常或是具有伤害性的网络数据传输行为。

网络安全

随着计算机的广泛应用和网络的不断普及,来自网络内部和外部的危险和犯罪也日益增多。20年前,计算机病毒(电脑病毒)主要通过软盘传 播。后来,用户打开带有病毒的电子信函附件,就可以触发附件所带的病毒。以前,病毒的扩散比较慢,杀毒软件的开发商有足够的时间从容研究病毒,开发防病 毒、杀病毒软件。而今天,不仅病毒数量剧增,质量提高,而且通过网络快速传播,在短短的几小时内就能传遍全世界。有的病毒还会在传播过程中改变形态,使杀 毒软件失效。
目前流行的攻击程序和有害代码如DoS(Denial of Service),分布式拒绝服务攻击,暴力猜解(Brut-Force-Attack),端口扫描(Portscan),嗅探,病毒,蠕虫垃圾邮件木马等等。此外还有利用软件的漏洞和缺陷钻空子、干坏事,让人防不胜防。
网络入侵方式越来越多,有的充分利用防火墙放行许可,有的则使杀毒软件失效。比如,在病毒刚进入网络的时候,还没有一个厂家迅速开发出相应的辨认和扑灭程序,于是这种全新的病毒就很快大肆扩散、肆虐于网络、危害单机或网络资源,这就是所谓Zero Day Attack。
防火墙可以根据英特网地址(IP-Addresses)或服务端口(Ports)过滤数据包。但是,它对于利用合法网址和端口而从事的破坏活动则无能为力。因为,防火墙极少深入数据包检查内容。
每种攻击代码都具有只属于它自己的特征(signature),病毒之间通过各自不同的特征互相区别,同时也与正常的应用程序代码相区别。除病毒软件就是通过存储所有已知的病毒特征来辨认病毒的。
在ISO/OSI网络层次模型(见OSI模型)中,防火墙主要在第二到第四层起作用,它的作用在第四到第七层一般很微弱。而除病毒软件主要在第五到第七层起作用。为了弥补防火墙和除病毒软件二者在第四到第五层之间留下的空文件,几年前,工业界已经有入侵检测系统投 入使用。入侵侦查系统在发现异常情况后及时向网络安全管理人员或防火墙系统发出警报。可惜这时灾害往往已经形成。虽然,亡羊补牢,尤未为晚,但是,防卫机 制最好应该是在危害形成之前先期起作用。随后应运而生的入侵反应系统(IRS: Intrusion Response Systems)作为对入侵侦查系统的补充能够在发现入侵时,迅速作出反应,并自动采取阻止措施。而入侵预防系统则作为二者的进一步发展,汲取了二者的长 处。
入侵预防系统也像入侵侦查系统一样,专门深入网络数据内部,查找它所认识的攻击代码特征,过滤有害数据流,丢弃有害数据包,并进行记载,以便事后分 析。除此之外,更重要的是,大多数入侵预防系统同时结合考虑应用程序或网络传输层的异常情况,来辅助识别入侵和攻击。比如,用户或用户程序违反安全条例、 数据包在不应该出现的时段出现、操作系统或应用程序弱点的空子正在被利用等等现象。入侵预防系统虽然也考虑已知病毒特征,但是它并不仅仅依赖于已知病毒特 征。
应用入侵预防系统的目的在于及时识别攻击程序或有害代码及其克隆和变种,采取预防措施,先期阻止入侵,防患于未然。或者至少使其危害性充分降低。入 侵预防系统一般作为防火墙 和防病毒软件的补充来投入使用。在必要时,它还可以为追究攻击者的刑事责任而提供法律上有效的证据(forensic)。

入侵预防技术

  • 异常侦查。正如入侵侦查系统,入侵预防系统知道正常数据以及数据之间关系的通常的样子,可以对照识别异常。
  • 在遇到动态代码(ActiveX,JavaApplet,各种指令语言script languages等等)时,先把它们放在沙盘内,观察其行为动向,如果发现有可疑情况,则停止传输,禁止执行。
  • 有些入侵预防系统结合协议异常、传输异常和特征侦查,对通过网关或防火墙进入网络内部的有害代码实行有效阻止。
  • 内核基础上的防护机制。用户程序通过系统指令享用资源(如存储区、输入输出设备、中央处理器等)。入侵预防系统可以截获有害的系统请求。
  • 对Library、Registry、重要文件和重要的文件夹进行防守和保护。

入侵预防系统类型

投入使用的入侵预防系统按其用途进一步可以划分为主机入侵预防系统(HIPS: Hostbased Intrusion Prevension System)和网络入侵预防系统(NIPS: Network Intrusion Prevension System)两种类型。
网络入侵预防系统作为网络之间或网络组成部分之间的独立的硬件设备,切断交通,对过往包裹进行深层检查,然后确定是否放行。网络入侵预防系统借助病 毒特征和协议异常,阻止有害代码传播。有一些网络入侵预防系统还能够跟踪和标记对可疑代码的回答,然后,看谁使用这些回答信息而请求连接,这样就能更好地 确认发生了入侵事件。
根据有害代码通常潜伏于正常程序代码中间、伺机运行的特点,单机入侵预防系统监视正常程序,比如Internet Explorer,Outlook,等等,在它们(确切地说,其实是它们所夹带的有害代码)向操作系统发出请求指令,改写系统文件,创建对外连接时,进行 有效阻止,从而保护网络中重要的单个机器设备,如服务器路由器防火墙等 等。这时,它不需要求助于已知病毒特征和事先设定的安全规则。总地来说,单机入侵预防系统能使大部分钻空子行为无法得逞。我们知道,入侵是指有害代码首先 到达目的地,然后干坏事。然而,即使它侥幸突破防火墙等各种防线,得以到达目的地,但是由于有了入侵预防系统,有害代码最终还是无法起到它要起的作用,不 能达到它要达到的目的。

成熟的产品

目前市场上成熟的入侵预防系统产品很多,主要有如下几种:
虽然它们在商业意义上都是已经充分成熟的产品,但是,至今却还没有一等一级的佼佼者。它们之间重要的差别大多数在于,有的偏于保守,只有它认为很重 要的事件才采取行动;有的则过于敏感,就象名人的保镖一样,把每件鸡毛蒜皮的不正常小事(event)都当作攻击的苗头来看待(false positive),给安全管理人员留下大量的事件记载。 在选购入侵预防系统时还应该注意,比如在网络传输量很大时,它能不能正常运行,对已经确认的攻击能不能有效阻止,是不是方便使用,以及价格等等。尽量做到 既不忽视它的作用,又要根据自己的需要,经过试用对比,仔细选取合适的产品。

Comments

Popular posts from this blog

CKA Simulator Kubernetes 1.22

  https://killer.sh Pre Setup Once you've gained access to your terminal it might be wise to spend ~1 minute to setup your environment. You could set these: alias k = kubectl                         # will already be pre-configured export do = "--dry-run=client -o yaml"     # k get pod x $do export now = "--force --grace-period 0"   # k delete pod x $now Vim To make vim use 2 spaces for a tab edit ~/.vimrc to contain: set tabstop=2 set expandtab set shiftwidth=2 More setup suggestions are in the tips section .     Question 1 | Contexts Task weight: 1%   You have access to multiple clusters from your main terminal through kubectl contexts. Write all those context names into /opt/course/1/contexts . Next write a command to display the current context into /opt/course/1/context_default_kubectl.sh , the command should use kubectl . Finally write a second command doing the same thing into ...

OWASP Top 10 Threats and Mitigations Exam - Single Select

Last updated 4 Aug 11 Course Title: OWASP Top 10 Threats and Mitigation Exam Questions - Single Select 1) Which of the following consequences is most likely to occur due to an injection attack? Spoofing Cross-site request forgery Denial of service   Correct Insecure direct object references 2) Your application is created using a language that does not support a clear distinction between code and data. Which vulnerability is most likely to occur in your application? Injection   Correct Insecure direct object references Failure to restrict URL access Insufficient transport layer protection 3) Which of the following scenarios is most likely to cause an injection attack? Unvalidated input is embedded in an instruction stream.   Correct Unvalidated input can be distinguished from valid instructions. A Web application does not validate a client’s access to a resource. A Web action performs an operation on behalf of the user without checkin...