设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 安全技术 >> 入侵检测 >> IDS及其Linux下的实现
精品推荐
入侵检测点击TOP10
·snort+acid打造LINUX下的入侵检测系统(IDS)(上)
·入侵检测系统Radware DefensePro
·Kfsensor IDS+HONEYPOT高级配置
·在家制造你的Cisco IDS
·一个网络入侵检测系统的实现
·LIDS精通与进阶(二)
·网吧入侵和网吧老板斗争到底
·snort+acid打造LINUX下的入侵检测系统(IDS)(下)
·用LIDS增强系统安全
·专家剖析黑客如何通过Google发动攻击
安全技术点击TOP10
·主板芯片级维修技术资料
·Symantec AntiVirus防病毒服务器安装配置使用指南
·教你如何手动查杀“幽灵(I-Worm.Ghost)”病毒
·贴片元件标记对应型号资料
·主板芯片组详解
·在WindowsXP/2003下查看端口对应的进程
·主板点不亮(不显示)的BIOS修复两法
·计算机启动过程详解
·网吧如何禁止使用PP点点通
·主板开机原理
精选专题

IDS及其Linux下的实现

作者: 来源:网络文章 时间:2005-12-19 16:29:01

IDS及其Linux下的实现(3)
  对各种事件进行分析,从中发现违反安全策略的行为是入侵检测系统的核心功能。从技术上,入侵检测分为两类:一种基于标志(signature-based),另一种基于异常情况(anomaly-based)。

  对于基于标识的检测技术来说,首先要定义违背安全策略的事件的特征,如网络数据包的某些头信息。检测主要判别这类特征是否在所收集到的数据中出现。此方法非常类似杀毒软件。

  而基于异常的检测技术则是先定义一组系统"正常"情况的数值,如CPU利用率、内存利用率、文件校验和等(这类数据可以人为定义,也可以通过观察系统、并用统计的办法得出),然后将系统运行时的数值与所定义的"正常"情况比较,得出是否有被攻击的迹象。这种检测方式的核心在于如何定义所谓的"正常"情况。

  两种检测技术的方法、所得出的结论有非常大的差异。基于异常的检测技术的核心是维护一个知识库。对于已知得攻击,它可以详细、准确的报告报告出攻击类型,但是对未知攻击却效果有限,而且知识库必须不断更新。基于异常的检测技术则无法准确判别出攻击的手法,但它可以(至少在理论上可以)判别更广范、甚至未发觉的攻击。

  如果条件允许,两者结合的检测会达到更好的效果。

  5、Linux下的实现

  5.1 系统框架

  HereLine是一个在Linux下运行的基于标识检测的网络IDS。从逻辑上分为数据采集、数据分析和结果显示三部分,符合CIDF的规范。

  从实现结构上看,HereLine分成三个应用程序,它们分别是:

  1、数据收集及分析程序(watcher) ;
  2、告警信息收集程序(listener);
  3、告警信息显示程序(console)。watcher是数据采集和数据分析的合体;listener接收watcher发出的告警信息,并将接到的信息存储为日志;console为管理员提供了更友好的观察日志的图形界面。

  同大多数商业IDS一样,HereLine采用了分布式的结构。运行HereLine建议采用两台PC机,一台运行watcher,另一台运行listener和console.

  与其他同类程序相比,HereLine的优点主要有:

  1、提供了完整的框架,可以灵活的应用于各种环境并扩充;
  2、采用数据分析与告警程序分离,便于在大规模的网络环境下集中管理;
  3、已经实现了对分片的处理,解决了利用分片逃避检查的问题;
  4、数据分析部分不完全依赖已有攻击程序,而是分析其核心特征以察觉其变种攻击;但同时依靠已有攻击程序的细节来评估判别的准确性。以上设计增加了告警的可靠性。

  各部分的实现流程及重要问题说明

  5.1.1 数据采集部分

  watcher采用了Linux2.2内核中提供的PF_PACKET类型的socket(并未采用libpcap提供的API接口) ,直接从链路层获取数据帧。(直接采用操作系统提供的接口主要是考虑高效性,但为了将来的移植问题,以后仍然可能会改为使用libpcap库提供的函数接口。)根据Linux的要求,建立这样的一个socket需要root权限,即uid=0。从packet socket读到的数据是链路层格式的数据,但经过处理(socket函数的第二个参量SOCK_DGRAM表示要去掉第二层的数据头,第三个参量ETH_P_IP表示只接收ipv4的数据包)后,缓冲区内的内容是个完整的IP包(未经任何其它处理)。分析工作交由数据分析程序去做。

  数据采集部分还做了一项工作就是将网卡置于混杂模式,这样可以监听到整个网段的数据。

  HereLine的这种实现,实际是通过socket将数据拷贝到应用层。这种结构比较灵活与安全(应用程序崩溃不会导致系统崩溃),但频繁的应用态与核心态的转换浪费了CPU。还有一种办法就是采用Linux中的模组(modular)的办法,将IDS作为内核的一部分。《Building Into The Linux Network Layer 》提供了一个内核中的sniffer的框架。可以利用其结构实现嵌入内核的、更加高效的入侵检测系统。HereLine可以很容易的转移到这种方式,但考虑到其对操作系统稳定性的影响和调试的难度,目前未采用。

共5页 9 7 [1] [2] [3] [4] [58 :>

IDS及其Linux下的实现 相关文章:
IDS及其Linux下的实现 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com