精华内容
下载资源
问答
  • 入侵检测系统是一种对网络传输进行即时监视,在发现可疑传输时发出警报或者采取主动反应措施网络安全设备。它与其他网络安全设备不同之处便在于,入侵检测系统是一种积极主动安全防护技术。 入侵检测系统...

    入侵检测系统是一种对网络传输进行即时监视,在发现可疑传输时发出警报或者采取主动反应措施的网络安全设备。它与其他网络安全设备的不同之处便在于,入侵检测系统是一种积极主动的安全防护技术。

    入侵检测系统(IDS)检查所有进入和发出的网络活动,并可确认某种可疑模式,IDS利用这种模式能够指明来自试图进入(或破坏系统)的某人的网络攻击(或系统攻击)。入侵检测系统与防火墙不同,主要在于防火墙关注入侵是为了阻止其发生。防火墙限制网络之间的访问,目的在于防止入侵,但并不对来自网络内部的攻击发出警报信号。而IDS却可以在入侵发生时,评估可疑的入侵并发出警告。而且IDS还可以观察源自系统内部的攻击。从这个意义上来讲,IDS可能安全工作做得更全面。今天我们就看看下面这五个最著名的入侵检测系统。

    1.Snort:这是一个几乎人人都喜爱的开源IDS,它采用灵活的基于规则的语言来描述通信,将签名、协议和不正常行为的检测方法结合起来。其更新速度极快,成为全球部署最为广泛的入侵检测技术,并成为防御技术的标准。通过协议分析、内容查找和各种各样的预处理程序,Snort可以检测成千上万的蠕虫、漏洞利用企图、端口扫描和各种可疑行为。在这里要注意,用户需要检查免费的BASE来分析Snort的警告。

    2.OSSEC HIDS:这一个基于主机的开源入侵检测系统,它可以执行日志分析、完整性检查、Windows注册表监视、rootkit检测、实时警告以及动态的适时响应。除了其IDS的功能之外,它通常还可以被用作一个SEM/SIM解决方案。因为其强大的日志分析引擎,互联网供应商、大学和数据中心都乐意运行 OSSEC HIDS,以监视和分析其防火墙、IDS、Web服务器和身份验证日志3.Fragroute/Fragrouter:是一个能够逃避网络入侵检测的工具箱,这是一个自分段的路由程序,它能够截获、修改并重写发往一台特定主机的通信,可以实施多种攻击,如插入、逃避、拒绝服务攻击等。它拥有一套简单的规则集,可以对发往某一台特定主机的数据包延迟发送,或复制、丢弃、分段、重叠、打印、记录、源路由跟踪等。严格来讲,这个工具是用于协助测试网络入侵检测系统的,也可以协助测试防火墙,基本的TCP/IP堆栈行为。可不要滥用这个软件呵。

    4.BASE:又称基本的分析和安全引擎,BASE是一个基于PHP的分析引擎,它可以搜索、处理由各种各样的IDS、防火墙、网络监视工具所生成的安全事件数据。其特性包括一个查询生成器并查找接口,这种接口能够发现不同匹配模式的警告,还包括一个数据包查看器/解码器,基于时间、签名、协议、IP地址的统计图表等。

    5.Sguil:这是一款被称为网络安全专家监视网络活动的控制台工具,它可以用于网络安全分析。其主要部件是一个直观的GUI界面,可以从 Snort/barnyard提供实时的事件活动。还可借助于其它的部件,实现网络安全监视活动和IDS警告的事件驱动分析。

    展开全文
  • 入侵检测是帮助系统对付网络攻击,扩展了系统管理员安全管理能力(包括安全审计、监视、进攻识别和响应),提高了信息安全基础结构完整性。它从计算机网络系统若干关键点收集信息,并分析这些信息,看看网络中...

    ​提示:正文共6400字,预计阅读需要17分钟

    入侵检测

    入侵检测是帮助系统对付网络攻击,扩展了系统管理员的安全管理能力(包括安全审计监视进攻识别响应),提高了信息安全基础结构的完整性。它从计算机网络系统中的若干关键点收集信息,并分析这些信息,看看网络中是否有违反安全策略的行为和遭到袭击的迹象。入侵检测是系统保护的最后一道安全闸门,在不影响网络和主机性能的情况下进行监测,从而提供对内部攻击、外部攻击和误操作的实时保护。

    入侵行为的影响程度取决于对信息安全CIA三元组的破坏程度、商业压力及监管压力等多方面的影响。

    黑客在未经授权的情况下,控制、使用我方资源(包括但不限于读写数据、执行命令、控制资源等)达到各种目的。从广义上讲,黑客利用SQL注入漏洞窃取数据,或者拿到了目标域名在ISP中的帐号密码,以篡改DNS指向一个黑页,又或者找到了目标的社交帐号,在微博/QQ/邮箱上,对虚拟资产进行非授权的控制,都属于入侵的范畴。

    企业入侵检测的范围,多数情况下比较狭义:一般特指黑客对PC、系统、服务器、网络(包括办公网、生产网)控制的行为。

    黑客对PC、服务器等主机资产的控制,最常见的方法是通过Shell去执行指令,获得Shell的这个动作叫做GetShell。

    比如通过Web服务的上传漏洞,拿到WebShell,或者利用RCE漏洞直接执行命令/代码(RCE环境变相的提供了一个Shell)。另外,通过某种方式先植入“木马后门”,后续直接利用木马集成的SHELL功能对目标远程控制,这个也比较典型。

    因此,入侵检测可以重点关注GetShell这个动作,以及GetShell成功之后的恶意行为(为了扩大战果,黑客多半会利用Shell进行探测、翻找窃取、横向移动攻击其它内部目标,这些区别于好人的特性也可以作为重要的特征)。

    有一些商业产品,喜欢报告GetShell之前的一些“外部扫描、攻击探测和尝试行为”,并美其名曰“态势感知”,告诉企业有人正在“试图攻击”。在笔者看来,实战价值并不大。很多企业,基本上无时无刻都在遭受“不明身份”的攻击,知道了有人在“尝试”攻击,如果并不能有效地去行动,无法有效地对行动进行告警,除了耗费心力之外,并没有太大的实际价值。

    当我们习惯“攻击”是常态之后,就会在这样的常态下去解决问题,可以使用什么加固策略,哪些可以实现常态化的运营,如果有什么策略无法常态化运营,比如需要很多人加班临时突击守着,那这个策略多半在不久之后就会逐渐消逝掉。跟我们做不做这个策略,并没有本质上的区别。

    类似于SQL注入、XSS等一些不直接GetShell的Web攻击,暂时不在狭义的“入侵检测”考虑范围,建议可以划入“漏洞”、“威胁感知”等领域,另行再做探讨。当然,利用SQL注入、XSS等入口,进行了GetShell操作的,我们仍抓GetShell这个关键点,不必在乎漏洞入口在何处。

    入侵检测技术

    入侵检测技术:入侵检测是指“通过对行为、安全日志或审计数据或其它网络上可以获得的信息进行操作,检测到对系统的闯入或闯入的企图”。

     

    入侵检测技术从结构上包含:入侵检测知识库、入侵检测主体、入侵检测体系等子结构

     

    1.     通过特征、模型、异常检测等手段进行入侵防御。

    2.     部署于主机之上,实现无盲区覆盖。

    3.     在高可用场景下依然可用,基于异常的启发式规则,将变种入侵手段通过行为特征捕获。

    4.     可通过时间窗口关联多次行为特征,提高入侵检测的敏感和准确度。

    5.     基于已知的行为判断发现发现未知的入侵行为。

    入侵检测体系

    入侵检测体系是根据入侵检测知识库建立的对抗入侵行为的制度和框架。入侵检测体系从粗糙臃肿、定位笼统不清晰的安全运营体系中抽离并对入侵检测体系再次抽象。

    从而对企业内部入侵检测制度规范、检测策略、框架产生定义。入侵检测主体根据入侵检测知识库提供设计指导思想,建设和实施入侵检测体系。对检测到入侵行为后还原事件提供极大的帮助。

    入侵检测框架

    入侵检测框架是入侵检测实施主体结合入侵检测体系的制度规范、入侵检测框架的设计需求,对入侵检测系统的产生定义。为入侵检测系统实例提供设计标准,功能模块等方面的指导思想。是为了提高同步性、整合性、解耦方面的产物。

    鲁棒性:比如说,计算机软件在输入错误、磁盘故障、网络过载或有意攻击情况下,能否不死机、不崩溃,就是该软件的鲁棒性。

    入侵检测目标

    1.      解决现有入侵检测商业化方案不能完美符合企业要求的问题:

    • 性价比差:商业化解决方案对于技术成熟度高的企业收费和回报不成正比。

    • 扩展性差:产品难以自主控制,扩展性小,无法随性更改功能模块,难以满足企业定制化要求。

    • 定制性差:针对特殊场景的感知能力有限,不开放检测策略,难以满足安全工程师对于自身企业自定义策略。

    • 关联性差,难以和其他入侵检测系统进行适配,无法完善的贴合已有入侵检测框架及入侵检测体系。

    • 响应度差,需求得不到及时的回应,总是会被排期。

    2.     解决入侵检测效率低下的问题

    • 散乱无章的入侵检测实例各自为战、不能统一结合,既无法产生十分准确的感知,每个实例又单独生产出海量告警,使运营人员响应效率低下,长期以往意志消耗殆尽,从而丧失作战能力。

    • 通过入侵检测框架中各个系统实例交叉验证、联动分析,降低误报率

    3.     解决无完善标准化流程的问题

    • 建立入侵检测体系中策略、制度、规范流程,整体从而在入侵检测体系上提升的预防、检测、缓解、事件响应、事件还原能力,而不是依赖单个入侵检测实例、入侵检测主体的技能经验,无规范、无序的解决以上问题。

    4.     提升复杂入侵场景感知难的能力:

    • 提升入侵检测技术之间的协同:近几年安全能力迅速发展,0day、Nday和APT泛滥,对抗利用各类Web应用、其他应用,操作系统的0day、Nday等等的漏洞入侵过程中,如果没有高效的情报协同,实施主体快速制定的制度、策略,准确无误的安全系统策略下发,无情报的协同的入侵检测,就无法使制度、策略、框架等多元因素高效协同;

    • 提升体系中各个元素之间的协同能力:通过入侵检测体系中制度、策略、框架、主体之间有限融合、高效协同,通过解决复杂入侵场景中入侵行为感知困难的问题。

    • 弥补静态的、未整合的资源下检测能力不足的缺陷:静态的,未整合的资源及环境在应对多方位、多变的入侵时,无论从预防过程、实践效率,还是结果上来看都很难满足对抗部分现有入侵的需求,企业面临的多变的入侵风险的现状从本质上决定了入侵监测体系是动态的,可扩展的;而静态则意味着包含缺陷、盲区、缺乏维护等因素。建立入侵检测体系恰恰就是以高效检测入侵行为为目标,最大程度上解决这些问题。

    5.      解决经验无法赋能至体系中的问题

    1)      事件响应后通过复盘优化入侵检测知识库,知识库再对系统赋能形成响应闭环。

    6.     解决体系中因制度、策略、框架过度耦合带来的一些问题,将入侵检测体系中的制度、策略、框架在一定程度上解耦。

    • 避免制度发生变更后同步至策略、框架困难;

    • 避免一类入侵检测实例发生问题后,导致其他入侵检测实例功能失效;

    • 避免主体与框架过度耦合,如发生人员离职后检测框架因入侵检测实例缺乏维护,影响整个入侵检测系统正常运行。

    • 避免实例间过度耦合,实例发生故障而导致牵一发而动全身的情况。

    • 除复杂的入侵场景以外,应依靠框架感知大部分入侵行为,避免更换主体后影响入侵检测框架的感知、事件还原等功能。在框架中实例开发时,应尽量使用易用、易维护、符合评估要求的公共组件。

    入侵检测系统

    入侵检测系统是根据入侵检测框架设计需求实现的结构化系统实例。含有对入侵行为进行自动化的监视、审计、缓解、阻断,事件还原等方面功能。每个入侵检测系统实例基本含有四个模块:事件产生、事件数据库、事件分析引擎、事件告警引擎触发。每一个入侵检测实例含有一个或多个模块。根据企业环境,各个实例的数据库、分析引擎、告警引擎可能有不同程度的统一。各个模块也可能多次、交叉、无固定顺序的进行关联形成一个联合整体。(大多数情况下,阻断功能可能会影响业务的正常进行,不建议轻易尝试)

     

     

    入侵检测实例

    1.      基线监控系统:基于安全策略基线的采集、审计、配置的近实时或定时基线监控系统。基线监控系统也可整合至HIDS,也可在依靠操作系统自带的高级审核功能作为引擎。

    策略:

    制度:包含在入侵检测体系内

    框架:包含在入侵检测框架内

    2.      网络入侵检测系统(NIDS):基于网络流量特征、网络流量模型及启发式逻辑对监视、审计、控制的网络入侵检测系统(传统NIDS及基于模型的Web IDS/WAF);

    3.      终端入侵检测系统(HIDS):基于终端行为对操作系统的程序,可执行代码,异常操作等可疑行为监视、审计的主机入侵检测系统;

    4.      反病毒系统(AV):基于终端的对恶意程序,恶意代码执行监视、控制的反恶意(反木马、病毒、蠕虫、勒索)行为的入侵防御系统;

    5.      防泄漏系统:基于终端或网络,对机密信息非正常或过程的转移、窃取、复制等异常行为预防、检测、缓解的(针对企业机密的透明加解密(HDLP)、网络行为审计(NDLP、行为审计)、非信任设备监控)系统;

    6.      公共流数据处理引擎:基于大数据产生的数据处理引擎,用于实时数据清洗和存储,决定了告警的准确性和实时性。

    7.      公共安全信息事件管理系统:基于事件处理流程的事件告警、展示、管理的系统。

    8.      威胁情报的系统:实施主体通过各种渠道积极获取威胁情报或者购买威胁情报厂商产品;

    9.      恶意样本分析沙箱:基于动静态结合的手段,通过分析未知文件的特征、行为的恶意文件检测沙箱。

    10.    蜜罐诱饵系统:基于伪/实状态结合的陷阱、诱饵式信息系统对入侵者进行情报收集的系统(蜜罐);

    11.    其他可扩展的对非正常手段或过程监视、审计、控制的入侵检测系统;

        1.   基于单实例单点感知的直接异常检测

        2.   基于单实例多点感知的时序异常检测

        3.   基于短时间内多个实例异常的组合事件检测

     

    常见的入侵手法与应对

    如果对黑客的常见入侵手法理解不足,就很难有的放矢,有时候甚至会陷入“政治正确”的陷阱里。比如渗透测试团队说,我们做了A动作,你们竟然没有发现,所以你们不行。而实际情况是,该场景可能不是一个完备的入侵链条,就算不发现该动作,对入侵检测效果可能也没有什么影响。每一个攻击向量对公司造成的危害,发生的概率如何进行排序,解决它耗费的成本和带来的收益如何,都需要有专业经验来做支撑与决策。

     

    现在简单介绍一下,黑客入侵教程里的经典流程(完整过程可以参考杀伤链模型):

    入侵一个目标之前,黑客对该目标可能还不够了解,所以第一件事往往是“踩点”,也就是搜集信息,加深了解。比如,黑客需要知道,目标有哪些资产(域名、IP、服务),它们各自的状态如何,是否存在已知的漏洞,管理他们的人有谁(以及如何合法的管理的),存在哪些已知的泄漏信息(比如社工库里的密码等)......

    一旦踩点完成,熟练的黑客就会针对各种资产的特性,酝酿和逐个验证“攻击向量”的可行性,下文列举了常见的攻击方式和防御建议。

    高危服务入侵

    所有的公共服务都是“高危服务”,因为该协议或者实现该协议的开源组件,可能存在已知的攻击方法(高级的攻击者甚至拥有对应的0day),只要你的价值足够高,黑客有足够的动力和资源去挖掘,那么当你把高危服务开启到互联网,面向所有人都打开的那一刻,就相当于为黑客打开了“大门”。

    比如SSH、RDP这些运维管理相关的服务,是设计给管理员用的,只要知道密码/秘钥,任何人都能登录到服务器端,进而完成入侵。而黑客可能通过猜解密码(结合社工库的信息泄露、网盘检索或者暴力破解),获得凭据。事实上这类攻击由于过于常见,黑客早就做成了全自动化的全互联网扫描的蠕虫类工具,云上购买的一个主机如果设置了一个弱口令,往往在几分钟内就会感染蠕虫病毒,就是因为这类自动化的攻击者实在是太多了。

    或许,你的密码设置得非常强壮,但是这并不是你可以把该服务继续暴露在互联网的理由,我们应该把这些端口限制好,只允许自己的IP(或者内部的堡垒主机)访问,彻底断掉黑客通过它入侵我们的可能。

    与此类似的,MySQL、Redis、FTP、SMTP、MSSQL、Rsync等等,凡是自己用来管理服务器或者数据库、文件的服务,都不应该针对互联网无限制的开放。否则,蠕虫化的攻击工具会在短短几分钟内攻破我们的服务,甚至直接加密我们的数据,甚至要求我们支付比特币,进行敲诈勒索。

    还有一些高危服务存在RCE漏洞(远程命令执行),只要端口开放,黑客就能利用现成的exploit,直接GetShell,完成入侵。

    防御建议:针对每一个高危服务做入侵检测的成本较高,因为高危服务的具体所指非常的多,不一定存在通用的特征。所以,通过加固方式,收敛攻击入口性价比更高。禁止所有高危端口对互联网开放可能,这样能够减少90%以上的入侵概率。

    Web入侵

    随着高危端口的加固,黑客知识库里的攻击手法很多都会失效了。但是Web服务是现代互联网公司的主要服务形式,不可能都关掉。于是,基于PHP、Java、ASP、ASP.NET、Node、C写的CGI等等动态的Web服务漏洞,就变成了黑客入侵的最主要入口。

    比如,利用上传功能直接上传一个WebShell,利用文件包含功能,直接引用执行一个远程的WebShell(或者代码),然后利用代码执行的功能,直接当作Shell的入口执行任意命令,解析一些图片、视频的服务,上传一个恶意的样本,触发解析库的漏洞......

    Web服务下的应用安全是一个专门的领域,具体的攻防场景和对抗已经发展得非常成熟了。当然,由于它们都是由Web服务作为入口,所以入侵行为也会存在某种意义上的共性。相对而言,我们比较容易能够找到黑客GetShell和正常业务行为的一些区别。

    针对Web服务的入侵痕迹检测,可以考虑采集WAF日志、Access Log、Auditd记录的系统调用,或者Shell指令,以及网络层面Response相关的数据,提炼出被攻击成功的特征,建议我们将主要的精力放在这些方面。

    0day入侵

    通过泄漏的工具包来看,早些年NSA是拥有直接攻击Apache、Nginx这些服务的0day武器的。这意味着对手很可能完全不用在乎我们的代码和服务写成什么样,拿0day一打,神不知鬼不觉就GetShell了。

    但是对于入侵检测而言,这并不可怕:因为无论对手利用什么漏洞当入口,它所使用的Shellcode和之后的行为本身依然有共性。Apache存在0day漏洞被攻击,还是一个PHP页面存在低级的代码漏洞被利用,从入侵的行为上来看,说不定是完全一样的,入侵检测模型还可以通用。

    所以,把精力聚焦在有黑客GetShell入口和之后的行为上,可能比关注漏洞入口更有价值。当然,具体的漏洞利用还是要实际跟进,然后验证其行为是否符合预期。

    办公终端入侵

    绝大多数APT报告里,黑客是先对人(办公终端)下手,比如发个钓鱼邮件,哄骗我们打开后,控制我们的PC,再进行长期的观察/翻阅,拿到我们的合法凭据后,再到内网漫游。所以这些报告,多数集中在描述黑客用的木马行为以及家族代码相似度上。而反APT的产品、解决方案,多数也是在办公终端的系统调用层面,用类似的方法,检验“免杀木马”的行为。

    因此,EDR类的产品+邮件安全网关+办公网出口的行为审计+APT产品的沙箱等,联合起来,可以采集到对应的数据,并作出相似的入侵检测感知模型。而最重要的一点,是黑客喜欢关注内部的重要基础设施,包括但不限于AD域控、邮件服务器、密码管理系统、权限管理系统等,一旦拿下,就相当于成为了内网的“上帝”,可以为所欲为。所以对公司来说,重要基础设施要有针对性的攻防加固讨论,微软针对AD的攻防甚至还发过专门的加固白皮书。

    写在结尾

    本文大多数思路来自于公开资料,经过自己学习结合工作经验产出,如有错误可联系修改。

     

     

     

     

     

    展开全文
  • 入侵检测系统原理和实践

    千次阅读 2012-06-11 19:10:22
    IDS:THEORY&PRACTICE  ...本文旨在介绍几种常见的入侵检测系统及其理论和实践,需要指出的是,本文仅仅是一篇介绍性的文章,即使我推荐了许多可能的系统,在你相信其可靠性前,最好还是深入的研究一下他们。(NND,
    IDS:THEORY&PRACTICE 
    入侵检测系统:理论和实践 
    自从计算机以网络方式被连接开始,网络安全就成为一个重大问题,随着INTERNET的发展,安全系统的要求也与日俱增,其要求之一就是入侵检测系统。 
    本文旨在介绍几种常见的入侵检测系统及其理论和实践,需要指出的是,本文仅仅是一篇介绍性的文章,即使我推荐了许多可能的系统,在你相信其可靠性前,最好还是深入的研究一下他们。(NND,烦死我了,要敲4个字,以后我就简称ID得了。入侵检测系统就是IDS:-) ) 
    一、什么是入侵检测。 
    入侵检测是指监视或者在可能的情况下,阻止入侵或者试图控制你的系统或者网络资源的那种努力。 
    简而言之,它的工作方式是这样的:你有台机器,被连接到网络上,也许就是被连到了INTERNET上,出于可以理解的原因,你也愿意为被授权者设置从网络上访问你的系统的许可。比如,你有以台连接到INTERNET上的WEB服务器,愿意让客户、职员和潜在客户可以访问存储在WEB服务器上的页面。 
    然而,你并不愿意那些未经授权的职员、顾客或者其他未经授权的第三方访问系统。比如,你不愿意除了公司雇佣的网页设计人员以外的人员可以修改储存在机器上的页面。典型的做法之一就是使用防火墙或者某种认证系统来防止未经授权的访问。 
    但是,在一些情况下,简单的使用防火墙或者认证系统也可以被攻破。入侵检测就是这样以种技术,它会对未经授权的连接企图作出反应,甚至可以抵御以部分可能的入侵。 
    那么, 



    二、为什么要使用ID呢? 
    以下给出了使用ID的理由: 
    (1)你需要保护自己的数据安全和系统,而事实是在现在的INTERNET环境下,如果你仅仅使用普通的密码和文件保护方式,你不可能永远保证你数据和系统的安全性。 
    (2)对于保护数据来说,没有什么比系统的安全更重要了,想就这么把你的机器连上INTETNET而不作任何防护,甚至连管理员密码都不设,就指望这台机器会太平无事,那简直是近乎于痴心妄想。同样,系统对核心文件或者授权数据库(比如NT的SAM和UNIX的/ETC/PASSWORD或者/ETC/SHADOW)的保护也是非常重要的。 
    (3)在通过局域网连接到INTERNET的环境下,经常会采用防火墙或者其他保护措施,如果在NT环境下,如果开放了文件共享,或者允许TELNET,这台机器就需要更好的保护,比如在防火墙中对137-139端口(属于TCP/UDP),SMB协议下的NT文件共享加以限制、使用SSH取代UNIX环境下的TELNET连接。 
    (4)ID还有进一步的作用,由于被放置在防火墙和被保护的系统之间,ID等于是在系统之上增加了以层保护。比如,通过ID对敏感端口的监测就可以判断防火墙是否已经被攻破,或者防护措施已经被灭了。 



    三、ID有哪些种类呢? 
    ID可以分为两大类, 
    (1)基于网络的系统:这种ID放置于网络之上,靠近被检测的系统,它们监测网络流量并判断是否正常。 
    (2)基于主机的系统:这种系统经常运行在被监测的系统之上,用以监测系统上正在运行的进程是否合法。我还想补充最近出现的一种ID:位于操作系统的内核之中并监测系统的最底层行为。所有这些系统最近已经可以被用于多种平台。 



    基于网络的ID 
    简介 
    基于网络的IDS是指监测整个网络流量的系统,一块网卡就可能会有两种用途: 
    普通模式: 受数据包里面所包含的MAC地址决定,数据被发送到目的主机。 
    任意模式(Promiscuous mode):所有可以被监测到的信息均被主机接收。 
    网卡可以在普通模式和任意模式之间进行切换,同样,使用操作系统的低级功能就可以完成这种变换。基于网络的IDS一般是需要把网卡设置成后以种模式。 



    包嗅探和网络监测 
    包嗅探和网络监测最初是为了监测以太网的流量而设计的,最初的代表性产品就是NOVEL的LANALYSER和MS的NETWORKMONITOR。 
    这些产品一般会拦截它们在网络上可疑拦截的一切数据包,当一个数据包被拦截后,可能会有以下几种情况: 
    对包进行累加,在截取的时间段内对数据包进行累加,用以确定该时间段内网络的负载,LANALYSER和MS的NM都在网络负载的表示界面方面有很好的表现。 
    对数据包进行分析:比如,当你想对抵达一个WEB服务器的数据进行分析时,你往往会先捕获一些数据,然后进行分析。 
    包嗅探工具在近年有了长足的发展,象ETHEREAL和新版的MSNM都可以对数据包进行详尽的分析。 
    最后罗嗦以句(NND,洋人就是P多):工具本身无善恶,全在人心,通过对连接到UNIX的TELNET连接进行包嗅探,就可能可以截取用户的密码,任何一个入侵者一旦得手,首先的事情就是会安装包嗅探器(NND,那是说高手,象俺最多在自己的机器上装个嗅探器,嘿嘿) 



    包嗅探与任意模式 
    所有包嗅探都需要网卡被设置为任意模式,因为仅在此模式下,所有通过网卡的数据可以被传送到嗅探器,包嗅探的使用前提是安装他的机器上使用者具有管理员权限 
    还有一点需要引起注意的是交换机的使用,请注意,不是HUB(NND,当我们中国人没见过交换机啊!),在交换机内,一个接口所接收的数据并不是一定会转发到另一个接口,所以,在这种情况下,包嗅探器并不一定可以发挥其作用。 



    基于网络的ID:嗅探器的发展 
    不幸的是,从安全的角度来看,包嗅探器好处有限。要去捕获每一个数据包,然后是分析、手工采取行动,实在是一件烦琐之至的事情,但是,如果用软件来代替我们的劳动呢? 
    这就是基于网络的ID要干的活。比如经常使用的ISS RealSecureEngine和Network Flight Recorder. 



    以下给出RealSecure Engine这种ID的作用: 
    监测网络上的数据传输情况。 
    如果数据为正常数据,允许其通过(或者留待以后分析),如果数据包被认为可能会危害目的地系统的安全,则发出\"connectionclosed\"(使用TCP协议时)或者\"portunreachable’(使用ICMP时)以截断数据发送方和接收方之间的连接。 
    在这种情况下,RealSecure可以在防火墙后建立起以个有效的阻止系统,当然,也有在防火墙的位置直接使用RS的,而我(原作者-不是土鳖我啊!)不建议大伙采用这种方法。 
    基于网络的ID还有一些别的功能,比如: 



    监测明显的端口扫描。在攻陷系统之前,攻击者一般会扫描系统以发现系统的缺陷,一般说来,INTERNET上来自以台主机的端口扫描往往是有人开始攻击的先兆。 
    对常见的攻击方式加以监测。通过80端口连接到以台WEB服务器应该看来是以件很正常的事情,但是有些同样通过80端口进行的连接就可能是祸心内藏哦,看看这个命令你就知道了: 
    “GET /../../../etc/passwd HTTP/1.0” 
    鉴别各种IP欺骗。用于完成IP和MAC地址之间转换的ARP协议往往是攻击的重点,通过在以太网上向目的地址发布载有虚假ARP数据的数据包,入侵者可以将自己伪装成位于另外一个系统上,这样的结果就是各种拒绝服务攻击,当大型服务器(如DNS或者身份认证服务器)遭到攻击时,入侵者可以将数据包转发到自己的系统上。基于网络的IDS通过登记ARP包,对信息源(以太网地址)进行认定,如果确认信息来自于已经被攻陷的系统,则会对入侵者进行拦截。 



    如果探测到了有问题的行动,基于网络的ID会自行采取行动,包括重新配置附近的防火墙以拦截所有来自入侵者的数据流. 



    基于主机的ID 
    简介 
    当数据包抵达目的主机后,防火墙和网络监控已经无能为力了,但是还有以个办法可以试试,那就是“基于主机的ID” 
    基于主机的ID又可以分成两大类: 
    网络监测:这种监测对抵达主机的数据进行分析并试图确认哪些是潜在的威胁,任何连接都可能是潜在的入侵者所为,请注意,这点与基于网络的ID不同,因为它仅仅对已经抵达主机的数据进行监测,而后者则是对网络上的流量进行监控。如次一来就不需要把网卡设置成××模式了。 
    主机监测:任何入侵企图(或者成功的入侵)都会在监测文件、文件系统、登录记录或其他主机上的文件中留下痕迹,系统管理员们可以从这些文件中找到相关痕迹。 
    外来连接监测: 
    主机可以在数据包真正抵达主机之前对试图进入主机的数据包进行监测,以避免其进入系统后可能造成的损害。 
    可供选择的处理方式有: 
    监测未经授权的试图通过TCP或者UDP端口进行的连接,比如如果有人试图通过未开放任何服务的端口进行连接,就往往意味着有人在寻找系统漏洞。 
    监测端口扫描:在此我再推荐一种方式:调整防火墙或者调整本地IP配置(可以使用LINUX下的IPCHAINS)以拒绝来自可能的入侵者的连接请求。 
    值得推荐的两个文件是ISS的RealSecure Agent和PortSentry. 



    注册行为监测 
    即使网管做了最大的努力,安装了最新的IDS,入侵者也有可能使用无法被监测到的的手段来入侵系统,造成这种情况的重要可能之一就是入侵者使用包嗅探恩公工具已经取得了用户密码并能够合法登录系统。 
    HOSTSENTRY这样的产品的任务之一就是寻找系统的不寻常操作,对用户试图进行注册和注销进行监控,并就这些活动中不正常或者未曾预料的部分向系统管理员报警。 



    根操作监控 
    入侵者的最终目的是为了掌握被入侵主机上的根用户权限,如果一台WEB服务器规划的好的话,除了极少数的计划好的维修时间以外,根用户应该很少会有什么操作,但是根用户们也很少按照计划去进行检修,而是逮空就干,但是即使是这样,入侵者也很有可能在兔子都不拉屎的时间或者地方干出些什么事情来。 
    需要防御的战线还有以条:监视根用户或系统管理员的任何操作。许多UNIX系统允许根用户执行包括登录、监测在内的所有运算,而象LOGCHECK这样的工具则可以对这些登录记录加以监控并提请网管注意。 
    如果使用了开放源代码的操作系统,网管们只有一个选择:改进内核。如何改进不在本文的讨论范围之内,毕竟INTERNET网上这样的资源很多。 
    监测文件系统 
    不管你的愿望如何良好,ID怎么卖命,你也不敢保证系统固若金汤,而系统一旦被攻陷,入侵者就会立即开始更改系统的文件,或者更改一些设置以废掉ID们的武功(哦!要练神功,必先自宫!!) 
    在软件的安装过程中,不可避免的会更改系统设置,这些设置更改一般会在系统的文件或者LIBRARY的变化中体现出来。 
    类似于TRIPWIRE,FCHECK和AIDE的程序被设计用于检测系统内的文件变动,并向系统管理员报告。 
    在所有系统文件上使用MD5或者其他的加密、校验和等手段,将这些设置储存进数据库,当文件变化时,校验和也会发生变化。 
    注意所有文件的创建和修改时间,以及它们的时戳。 
    对SUID命令的使用加以监控,任何变化或者新的SUID命令被安装、删除,都可能会是问题的征兆。 
    不管Tripwire, Fcheck,AIDE玩得怎么花,它们的工作原理就是上面那些东西,它们的作用是保证那些数据库和加密的校验和没出问题。因为不排除这样一种可能,入侵者水平很高,高到足以理解操作系统和IDS,直接就把加密的校验和数据库都改得天衣无缝。 



    基于内核的ID 
    基于内核的ID还是以种新生事务,但是成长很快,尤其是在和LINUX的配合方面。 
    现在有两种基于LINUX的不同的基于内核的ID,它们是OPENWALL和LIDS。它们在防止缓冲区溢出方面有了长足进展,增强了文件系统的保护,拦截信号并使入侵系统变得更加困难。LIDS也采取了一定措施以防止根用户执行一些操作,比如安装嗅探器或者更改防火墙规则等等。 



    内核保护和文件系统保护 
    显而易见的是,虽然最终效果相近,LIDS系统和TRIPWIRE系统差别很大,它们都可以用于阻止入侵者出于未经授权的目的使用系统。 
    乍看之下,虽然象TRIPWIRE这样的系统确实是一个监测文件系统的好东西,人们也可能会认为他意义不大,人们的共识是:一旦你的系统被内在的入侵者攻陷,最好的办法就是关机重装系统。损失已然造成,系统已然玩完,你还是老老实实从恢复盘上重装系统得了。而LIDS提供的服务则更有诱惑一些,如果说一般的家伙是在屋子里面已经被糟践得一塌糊涂后才来跑来告诉你门开着的话,LIDS可能会使你的系统免遭损失。 



    从理论上说,我也同意以上分析,但是如果将LIDS和TRIPWIRE同时运行,肯定会带来更好的安全性。虽然LIDS在保护文件系统方面有着独到之处,但是如果再加上象TRIPWIRE这样的文件系统监视器,用他作为一个“独立的”审计方,效果肯定会更好,因为HACKER有可能会挫败LIDS的努力。 
    小结 
    使用最新的工具可能会抵御一切已知形式的入侵,不幸的是,随着日常实践,新的威胁和软件的安全漏洞却在不断的被发现。 
    在任何环境下,非常重要的一点是知道你可能面对的所有威胁,要警惕你系统里面可能存在的潜在漏洞并加以修补,以免遭受基于这些漏洞的攻击。 
    举个例子来说,以台通过防火墙被连接到INTERNET的主机可以说会免于大多数种攻击,但是机器里的CGI程序则会使机器暴露出脆弱的以面,要尤其注意并确定CGI程序已经被合适的配置,数据在执行前已经被确认合法有效。而一个ID程序则会被放在WEB服务器和防火墙之间以拦截任何可疑的连接。 
    随时更新 
    随着新的入侵手段的发现,上面我们所阐述的工具也在不断更新,所以及时更新工具也是非常重要的。 
    在安装了相应的软件以后,用户有必要经常访问一些和安全有关的页面和邮件列表,同时,如果你所安装的软件或者防火墙报告说其自身出现缺陷或者其他被入侵的问题,千万不要为了面子而不去向软件提供商需求帮助(老外也这么要面子吗?嘿嘿) 
    Which Tools? 
    使用什么软件呢? 

    以上我们已经探讨了好几种有着不同功能的工具。为了尽量保证你的环境的安全性,根据功能来选择工具就变得非常重要。工具之间“尺有所短,寸有所长”的情况很突出,所以,你的安全防线的第以关应该就是防火墙,然后,在防火墙后侧安装基于网络的IDS用于监视防火墙,再以后呢(老外就是TMD烦),就应该是连接监测工具,比如PORTSEBTRY或者HOSTSENTRY之类的,最后呢,你还可以用LOGCHECK之类的工具来监测那些最终的进入者。 

    原作者:DEL是新西兰的一位有着15年IT从业的哥们。其余的俺就不翻译了吧了,反正各位要是有什么问题要问我的话那就歇了,俺好菜的,就是翻译洋文速度好快,嘿嘿。附上这哥们简历,免得说俺侵犯版权,嘿嘿。 
    David Elson (Del) is a security and technology consultant workingfor Wang New Zealand in Christchurch, on the South Island of NewZealand. With 15 years IT experience, he consults to variousclients on security and networking issues. He also maintains a setof web pages on Linux and other related security topics, and hasgiven talks on various security and networking issues atconferences in Australia and New Zealand.
    展开全文
  • 入侵检测系统对于检测一些常见的入侵方式具有很好的效率和性能。同时,该系统提供了完整的框架,可以灵活地应用于各种环境并扩充。当然, 本系统还有很多不足的地方:数据源比较单一,还应该加入日志数据源;而且...
  • ContractGuard 是首次提出面向以太坊区块链智能合约的入侵检测系统,它能检测智能合约的潜在攻击行为。ContractGuard 的入侵检测主要依赖检测潜在攻击可能引发的异常控制流来实现。由于智能合约运行在去中心化的环境...
  • cnhids是基于用于cardano节点主机入侵检测系统: cnHids目的是通过提供给Prometheus和Grafana来制作简单SIEM,提供一种监视和分析OSSEC数据简便方法。 一些常见用例已作为面板添加到了仪表板中(预计将...
  • AD安全入侵检测系统 英文文件|文件 在收集所有域控制器上事件日志和kerberos流量之后,WatchAD可以通过功能匹配,Kerberos协议分析,历史行为,敏感操作,蜜罐帐户等来检测各种已知或未知威胁.WatchAD规则涵盖了...
  • 入侵检测系统的概念及组成?随着Internet的迅猛发展,网络安全越来越受到政府、企业、乃至个人的重视。过去,防范网络攻击最常见的方法是防火墙。然而,仅仅依赖防火墙并不能保证足够的安全,如果把防火墙比作守卫...

    入侵检测系统的概念及组成?

    随着Internet的迅猛发展,网络安全越来越受到政府、企业、乃至个人的重视。过去,防范网络攻击最常见的方法是防火墙。然而,仅仅依赖防火墙并不能保证足够的安全,如果把防火墙比作守卫网络大门的门卫,那么我们还需要可以主动寻找罪犯的巡警 D 入侵检测系统(IDS)。

      基本概念

      入侵检测技术是主动保护自己免受攻击的一种网络安全技术。作为防火墙的合理补充,入侵检测技术能够帮助系统对付网络攻击,扩展了系统管理员的安全管理能力(包括安全审计、监视、攻击识别和响应),提高了信息安全基础结构的完整性。它从计算机网络系统中的若干关键点收集信息,并分析这些信息。

      系统组成

      IETF(Internet工程任务组)将一个入侵检测系统分为四个组件:事件产生器(Event generators);事件分析器(Event analyzers);响应单元(Response units );事件数据库(Event databases )。

      事件产生器的功能是从整个计算环境中捕获事件信息,并向系统的其他组成部分提供该事件数据。事件分析器分析得到的事件数据,并产生分析结果。响应单元则是对分析结果作出作出反应的功能单元,它可以作出切断连接、改变文件属性等有效反应,当然也可以只是报警。事件数据库是存放各种中间和最终数据的地方的统称,用于指导事件的分析及反应,它可以是复杂的数据库,也可以是简单的文本文件。

      目前研究状况

      国内经过近几年的发展,IDS产品开始步入一个快速的成长期,用户也开始认可IDS在网络安全防御中不可替代的作用。但是,与此同时,大家也逐渐意识到IDS自身有难以克服的缺点 D “较高的漏报率和误报率”。那么,如何通过解决这个问题使IDS产品的价值最大化呢?本文试图通过介绍一些技术和产品发展的新动向,使读者了解从网络安全业界试图解决这个问题的若干思路。

      在IDS系统中,所谓漏报(False Negatives),是指攻击事件没有被IDS检测到。而误报(False Positives)是指IDS将正常事件识别为攻击。发生这些问题主要有两个原因:

      一、IDS通过网络嗅探(Sniffer)技术获取网络数据包后,需要进行协议分析、模式匹配或异常统计才可能发现入侵行为。可是我们知道,协议分析是很复杂的,当涉及到数目庞大的应用协议、各种加密或编码方式、以及针对IDS的规避技术时,则更是如此。在没有透彻分析数据包涉及协议的情况下,发生漏报和误报是在所难免的。

      二、随着网络系统结构的复杂化和大型化,系统的弱点和漏洞将趋向于分布式。此外,随着黑客入侵水平的提高,入侵行为也不再是单一的行为,单个的IDS设备(无论是主机型还是网络型)应对分布式、协同式、复杂模式攻击的入侵行为时,就显得十分力单势薄。

      要解决第一类问题,除了加大协议分析的深度和细度外,还有待于理论和技术上的突破。目前,国内外这方面的研究取得了迅速的发展。首先是基于神经网络的入侵检测技术,该技术的关键在于在正式检测之前要用入侵样本进行训练,使其具备对某些入侵行为进行分类的能力,从而能够正确地“认识”各种入侵行为。另外,基于模型推理的入侵检测技术和基于免疫的入侵检测技术也是研究的热点。但值得注意的是,这些技术大多只是做为高校和研究所的科研成果,可运行的系统一般也只是远未成熟的演示版本,到真正产品化和进入网络安全市场仍然有很长的距离。

      应对第二类问题的方法是:入侵检测系统也向分布式结构发展,采用分布收集信息,分布处理多方协作的方式。这里的“协作”有多个层次的含义:同一系统不同入侵检测部件间的协作,尤其式主机型(HIDS)和网络型(NIDS)入侵检测部件之间的协作;异构平台部件之间的协作;不同安全工具之间的协作;不同厂家安全产品之间的协作;不同组织间预警能力和信息的协作。可以说,“协作”是网络安全产品的一个重要发展方向!

      目前,业界在“协作”方面有两个方向的努力:一是系统结构的改善。二是协同工作接口的标准化和开放。

      系统结构改善方面具有代表性的是基于Agents的分布式入侵检测系统。这种Agent代理结构具有适应性和自主性,能连续外界和内部的变化,并作出相应的反应。利用Agent的推理机制和多Agent间的协同工作,可以完成知识库更新、模型过程描述、动态模式识别等功能,比传统的专家系统效率要高。

      协同工作接口的标准化首先要解决的是交换信息格式标准化。目前正在制定的相关标准有:IETF的入侵检测信息交换格式(Intrusion Detection Message Exchange Format,简称IDMEF)和事件对象描述交换格式(Incident Object Description and Exchange Format,简称IODEF);还有一个项目引发的通用入侵检测框架(Common Intrusion Detection Framework,简称CIDF)协议组和开发接口。此外,还有DMTF组织制定的更通用的标准 - 通用信息模型(Common Information Model,简称CIM),其中也包含不少网络安全和网络管理产品协同工作的标准格式。值得一提的是,在近来标准制定的过程中,XML(eXtensible Markup Language)语言成为基本信息交换格式的首选。

      结束语

      在上述相关标准没有正式在业界流行之前,安全产品厂商之间主动的相互合作就显得尤为重要。正是基于对上述观点的深刻认识,为了全面推动国内安全产品之间的“协同工作、动态防护”的互操作性,中科网威在国内推出第一个IDS互动开放接口 - “Netpower OpenIDS V1.0”(详情及开发包请参见公司网站www.netpower.com.cn)。该开发包提供了一个接口供各个防火墙厂商使用,以完成IDS和防火墙之间的报警联动,该接口的特点是:简单易用、灵活可靠。此外,中科网威公司的研发队伍也密切关注着网络安全标准的制定进程,随时准备为国内网络安全界的“协作”做出自己的贡献!

    展开全文
  • 互联网的安全问题一直存在,并且在可预见的未来中没有消弭的迹象...跨站请求伪造(CSRF)的是Web应用程序一种常见的漏洞,其攻击特性是危害性大但非常隐蔽,尤其是在大量Web2.0技术的应用的背景下,CSRF攻击完全可以在
  • 介绍两部分内容:防火墙和入侵检测技术。 介绍防火墙基本概念,常见防火墙类型以及如何使用规则集实现...介绍入侵检测系统的基本概念以及入侵检测常用方法 如何编写入侵检测工具以及如何使用工具实现入侵检测。
  • 第1章Snort简介第2章软件列表第3章Snort 安装与配置第4章Snort操作与使用第5章常见问题与解决方法第1章Snort简介Snort是一个免费IDS(入侵监测系统)软件。它一些源代码是从著名tcpdump软件发展而来。它是一...
  • 入侵检测系统原理和实践(转)[@more@] 自从计算机以网络方式被连接开始,网络安全就成为一个重大问题,随着INTERNET的发展,安全系统的要求也与日俱增,其要求之一就是入侵检测... 本文旨在介绍几种常见的入侵检测系...
  • 本文主要介绍了基于网络和主机的入侵检测系统,并对入侵检测中的一项新技术——协议分析技术作了讨论。对于一个网络入侵检测系统,协议分析主要有三方面的作用:为检测引擎提供输入,提高检测的有效性,提高检测效率...
  • 描述了IDS测试方法:IDS指标、测试连接、测试方法、常见IDS产品、IDS与IPS区别
  • 防火墙与入侵检测 介绍防火墙基本概念,常见防火墙类型以及如何使用规则集实现防火墙 入侵检测技术 介绍入侵检测系统的基本概念以及入侵检测常用方法 如何编写入侵检测工具以及如何使用工具实现入侵检测
  • 0x00 简介在入侵检测的过程中,进程创建监控是必不可少的一点,因为攻击者的绝大多数攻击行为都是以进程的方式呈现,所以及时获取到新进程创建的信息能帮助我们快速地定位攻击行为。本文将介绍一些常见的监控进程...
  • 1.1 常见的加密算法 对称加密:怎么加密,就怎么解密 DES Date Encryption Standard AES Advance Encryption Standard 非对称加密 RSA Rivest Shamirh Adleman DSA Digital Signature Algorithm 数据信息...
  • 基于网络的入侵检测已成为评估机器学习算法的常见方法。 尽管KDD Cup'99数据集在不同的入侵类别上存在类别失衡,但它在评估机器学习算法方面仍起着重要作用。 在这项工作中,我们利用奇异值分解技术来减少特征维数。...
  • 加密与解密 信息传递中的风险 什么是加解密 ...-非对称加密:加密、解密用不同的密钥(公钥,私钥) ...常见的加密算法 对称加密 非对称加密 Hash散列技术,用于信息摘要 MD5完整性检验...
  • 一、加密与解密 1.加密与解密介绍 发送方:明文到密文 接收方:密文到明文 2.加密目的及方式 确保数据的机密性 ...3.常见的加密算法 对称加密 DES,Data Encryption Standard AES,Advanced Encry...
  • 关于KDD99入侵检测数据集FAQ

    千次阅读 2017-06-23 15:14:05
    关于KDD99入侵检测数据集的FAQ 本文总结了关于KDD99数据集的一些常见问题,来自之前...A1:基于网络的入侵检测数据集是由 TCPDUMP 采集的,然后提取特征形成的。TCPDUMP和sniffer之类的抓包工具一样,不过是在linux
  • 常见的入侵方式 漏洞 入侵检测 入侵检测系统在安全体系中的位置 入侵检测原理 入侵检测系统结构 入侵检测的技术实现 入侵防御技术的引入 背景 入侵防御定义 优势 入侵检测系统与入侵防御系统的对比 ...
  • MIDAS是一个用来开发Mac入侵检测分析系统的框架,主要是基于 Etsy 和 Facebook 安全团队之间的工作和协作讨论而创建出来的。这个资源库提供一个模块化框架和一些协助工具,同时还有一个案例模块用来检测修改常见的OS...
  • Linux入侵检测

    千次阅读 2005-01-22 16:32:00
    简介这篇文章主要是关于适用于Linux的几种基于主机的入侵检测系统。特别的,我们将会覆盖一些怎么安装这些软件包的要素,已经它们的用处和什么时候能够用到这些东西。系统安全101本文将为大家展示一些基础的系统安全...
  • Linux入侵检测工具

    2019-02-18 16:35:00
    rootkit是Linux平台下最常见的一种木马后门工具,它主要通过替换系统文件来达到入侵和和隐蔽的目的,这种木马比普通木马后门更加危险和隐蔽,普通的检测工具和检查手段很难发现这种木马。rootkit攻击能力极强,对...
  • 本章介绍两部分内容: 防火墙和入侵检测技术。 介绍防火墙基本概念,常见防火墙类型以及如何使用规则集...介绍入侵检测系统的基本概念以及入侵检测常用方法 如何编写入侵检测工具以及如何使用工具实现入侵检测。
  • 常见的安全威胁来源 在实际的安全工作中,我们常见的信息安全所面对的威胁来自于多个方面,如图1-3所示。 图1-3 信息安全面对的威胁实例 ·地震、雷雨、失火、供电中断、网络通信故障和硬件故障都属于破坏物理安全...
  • 10款常见的Webshell检测工具

    万次阅读 2020-04-10 08:00:06
    当网站服务器被入侵时,我们需要一款Webshell检测工具,来帮助我们发现webshell,进一步排查系统可能存在安全漏洞。本文推荐了10款Webshll检测工具,用于网站入侵排查。...

空空如也

空空如也

1 2 3 4 5 ... 12
收藏数 232
精华内容 92
关键字:

常见的入侵检测系统