基于LINUX下桥模式的入侵检测系统的研究

来源 :商场现代化 | 被引量 : 0次 | 上传用户:lcm2005
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要] 本文设计的基于Linux2.6内核桥模式的入侵检测系统,有别于传统网络入侵检测系统旁路监听的方式,它使用了桥模式的入侵检测方式,对数据包的检测在数据链路层进行,以此达到数据包检测快速、高效的目的。对该系统在真实网络环境下进行的正常访问及入侵测试试验表明:本文设计的基于Linux桥模式的入侵检测系统达到了无漏报、快速、高效的效果,可以有效的检测入侵,同时保障了对正常访问的响应。
  [关键词] 入侵检测系统 Linux 网络安全 桥模式
  
  一、引言
  入侵检测作为一种积极主动地安全防护技术,提供了对内部攻击、外部攻击和误操作的实时保护,在网络系统受到危害之前拦截和响应入侵。常见的有基于网络的入侵检测和基于主机的入侵检测系统:基于主机的入侵检测系统HIDS(HOST Intrusion Detection System)实时监视可疑的连接、非法访问的闯入等;基于网络的入侵检测系统NIDS(Net Intrusion Detection System)在關键的网段或交换部位侦听。在实际的部署中,传统NIDS是并接在网络中,通过旁路监听的方式实时地监视网络中的流量,判断其中是否含有攻击的企图。
  传统NIDS工作在应用层和网络层。所抓的数据包由底层向上传,经过分析判断后再向下送,有较长的网络延迟。而且特征代码库中特征代码的匹配的计算量大,计算速度慢,容易形成网络瓶颈。当攻击者向被保护网络发送大量的数据,超过NIDS的处理能力,从而使被监听的端口流量总和超过监听端口的上限,会发生丢包的情况,而可能导致入侵行为漏报“false negative”。还有,当Web 服务器已超载,不能够再处理更多的连接请求时, NIDS会以为该服务器正在受到拒绝服务的攻击,容易出现假警报“false positive”(误警),将良性流量误认为恶性的。
  据统计,目前NIDS的告警信息中,仅有10%是有用的,因此需要提高NIDS的检测速度,无遗漏的检测数据包,进行快速处理以适应高速网络通信的要求。
  二、基于Linux内核桥模式的网络入侵检测系统的改进思想
  1.传统NIDS是旁路接入一个网络(或与集线器连接,或接入交换机的SPAN端口),通过旁路监听的方式实时地监视网络流量。基于Linux环境下桥模式的NIDS改进了旁路连接,使其成为网络的一部分,将它部署到网络的必经之处,使数据包必须经过该NIDS,以此来强制完成对网络中所有流经的数据包的检测,从而避免了入侵的漏报(false negative),达到数据包的无遗漏检测,这是网桥模式NIDS优于传统NIDS的一个重要特点。
  2.由于一个网桥更像一段网线,将一个网络的两个部分连接在一起。一个透明NIDS像网桥一样工作,检测通过它的数据包而不被两端设备发现。一个桥模式的NIDS的网卡不分配任何IP地址,对于现有网络拓扑结构透明,丝毫不影响网络管理人员的路由分析,减轻了网络管理人员的负担。由于系统结构的透明性,可以在网络中添加一个IDS而不需要修改网络中任何设备的参数。桥模式有效的把NIDS本身隐藏起来,使其成为用户攻击的一个盲点,解决了NIDS自身的安全性问题。
  3.传统NIDS是在应用层和网络层完成客户端的显示,数据包的分析与检测,特征码的存储等任务,在做数据包截取和分析时,所抓的数据包由底层向上传送到应用层,然后解开包头,读取相关信息进行分析匹配,经过分析判断后重新包装包头,再向下送,把它从应用层送到数据链路层通过网卡传送出去,大大增加了网络延迟。而且特征代码库中特征代码匹配的计算量大,计算速度慢,容易形成网络瓶颈。
  这种基于底层的NIDS对数据包的获取、分析与处理都不在网络层和应用层,而在链路层,通过网桥模式来完成,由内核直接处理数据包,根据桥检测模块的判断,让数据包通过或是丢弃。对于不能在数据链路层明确判断的数据包,传送到上层,在网络层进一步通过特征代码库进行高级匹配,这样的工作方式可以加快数据包的处理速度,节省数据包的处理的时间,减小网络延迟。同时采用了内核包检测分析原理,使NIDS在遭到攻击时检测并以不同的方式向系统报警,以保证合法数据包的正常通过。
  4.Linux的稳定性、可靠性和安全性,给NIDS提供了稳定的运行环境。Linux的开放性及模块设计技术,使Linux内核功能更容易扩展,能够灵活的把IDS桥检测程序模块加载到内核。
  三、基于Linux内核桥模式的网络入侵检测系统的设计和实现
  1.桥模式的建立
  在本课题的研究中,将多块网卡变成一个桥接设备,从而搭建起网桥,每一个网卡就是桥的一个端口,在桥的端口之间完全透明的转发数据包。采用Linux2.6内核下的bridge桥接模块来实现,在linux系统将网卡设置成网桥的工作模式,网卡接收到数据包后,经过的网络协议层次如图:
  2.内核IDS检测模块的实现
  为提高内核处理效率,将实现在驱动程序之后,在调用网桥模块的时候进行数据包检测,选择的位置在调用netif_receive_skb函数前调用入侵检测处理函数。自定义包检测钩子函数,在网桥模块中加入钩子函数,调用点放到process_backlog函数的调用netif_receive_skb语句之前。通过模块机制,将桥入侵检测模块的处理函数和数据结构注册到内核中。这样用bridge和netfilter/iptables构建对于用户和外界均透明的NIDS,实现了把桥入侵检测模块加载到内核网络接口层向网络层衔接处。
  整个桥入侵检测的处理模块通过init_module将该机制定义的函数和数据结构注册到内核中去,它进行初始化,为包检测处理模块的实现分配内存、初始化指针等模块与内核之间的连接操作,而检测处理模块所提供的函数通过系统调用packet-_detect_register_hook将这些函数和数据结构注册到内核中去。将检测模块处理函数注册到内核的数据结构是packet_detect_hook_
  ops,在模块中生成该结构体的实例,将检测处理函数作为回调函数,赋值给内核中自定义的钩子函数指针。
  在同一目录下编写Makefile文件,编译生成 .ko(kernel object,内核目标文件)模块,用insmod命令将模块插入,内核就会在数据包从数据链路层送往网络层之前调用桥IDS模块的处理函数,从而对流经的所有数据包进行检测。把IDS桥检测程序模块加载到内核后数据包流程如图所示。
  3.IDS检测模块程序设计伪代码
  首先,生成packet_detect_hook_ops结构体的实例。
  static struct packet_detect_hook_ops _filter=
  {
  IDS_module, //packet_detect_hookfn类型的指针钩子hook指向ids模块处理函数IDS_module
  };
  其次,通过系统调用module_ init将定义的函数和数据结构注册到内核中去的,module_ init调用一个初始化函数init,为状态机制的实现分配内存、初始化指针等操作,并将定义的结构体实例注册到内核。
  int init(void)
  {
  初始化各种链表表头
  packet_detect_register_hook(&IDS_Module);// 登记钩子函数
  return 0;
  }
  最核心部分是IDS检测模块部分。
  int IDS_module(struct sk_buff *skb)
  {
  If(查询特征跟踪链表,有匹配项)
  return PACKET_DROP; //通知内核数据包是入侵包,丢掉
  else if(网络状态异常)
  {
  记录数据包信息;
  送入高级匹配模块;
  return PACKET_DETECT; //通知内核数据包需进一步检测
  }
  else {
  return PACKET_NOMAL;//通知内核数据包是正常包
  }
  }
  最后,通过系统调用module_exit,在模块卸载时,释放内存,注销过滤钩子函数。
  void cleanup(void)
  {
  释放链表空间
  packet_detect_unregister_hook(&IDS_Module);//注销钩子函数
  return;
  }
  module_init(init);//加载ids检测模块入口
  module_exit(cleanup);//卸载ids检测模块出口
  四、实验
  1.实验环境
  实验环境一:11号交换机和10号主机相连模拟内网,1至9号主机与13号交换机相连模拟外网。10号主机使用IIS做Web发布,成为一个Web Server服务器,外网客户端(1~9号主机)可以向其发送Web请求,Web 服务端(10号主机)提供Web网页。基于Linux网桥模式NIDS系统系统安装在12号主机,它工作在网桥模式下,所以可以通过12号NIDS系统的两块网卡分别与11号交换机与13号交换机相连,这样内网外网中间有了一道检测防御系统,保护Web Server服务器,防止其受到外网的攻击。实验环境一的网络拓扑结构如图3。
  实验环境二:14号机为传统NIDS系统,以旁路模式安置在网络中,其它均同环境一。
  2.实验结果
  环境一实验结果:当网络存在正常访问和入侵扫描时,在不同强度的攻击下,桥模式NIDS系统的性能,包括:监测系统主机CPU(即12号主机)及内存消耗程度。实验结果如下图所示:
  图中1号兰色线表示当网络存在正常访问、入侵扫描时,用1号机进行SYN攻击时桥模式NIDS系统消耗的CPU/内存情况,2号红色线表示相同条件下,同时用1、2号机进行SYN攻击时桥模式NIDS系统消耗的CPU/内存消耗情况,3号绿线表示相同条件下,同时用1、2、3号机进行SYN攻击时桥模式NIDS消耗的CPU/内存消耗情况。
  环境二实验结果:
  图中1号兰色线表示用1号机进行SYN攻击时某公司A系列LND-100NIDS系统消耗的网络带宽/CPU,2号红色线表示1、2号机同时进行SYN攻击时该系统消耗的网络带宽/CPU,3号绿线表示1、2、3号机同时进行SYN攻击时该系统消耗的网络带宽/CPU。
  从实验的结果表明,入侵扫描、Syn攻击器等工具的扫描和攻击在传统的NIDS系统下,因流量过大数据包过多,检测系统无法检测拦截攻击包,并在其系统资源消耗过多情况下无法拦截检查有害信息,造成黑客嗅探入侵成功。而改进后的基于Linux下桥模式的NIDS系统,采用数据链路层检测分析,以较少的CPU消耗为代价,拦截到了攻击包并检测出了黑客的入侵扫描行为,同时保证了网络的正常访问请求。但两者网络带宽的消耗几乎相同。
  五、结论
  基于Linux2.6内核开发改进的桥模式NIDS系统工作在Linux系统内核网络协议栈的底层,随内核启动而工作,真正的做到了内核底层检测拦截黑客扫描攻击的效果。用多种攻击工具进行黑客攻击和入侵扫描,该系统都能无遗漏的将数据包抓取并检测,较好地解决了对入侵扫描以及黑客攻击行为的检测和抵御。目前该系统的不足之处是内存资源消耗较多,存在着部分内存泄露的问题。这是是造成系统不稳定的潜在因素,也是以后的开发过程中要对该系统逐渐加以完善的地方。
  
  参考文献:
  [1]Robert Graham. NIDS-Pattern Search vs. Protocol Decode[J],Computers& Security, 2001. 20:37~41
  [2]StevenMcCanne,Van Jacobson.The BSD Packet Filter;A New Architecture for User-level Packet Capture[J].Lawrence Berkeley Laboratory One Cyclotron RoadBerkeley, 1992
  [3]Stephen Northcutt. 网絡入侵检测分析员手册[M].人民邮电出版社,2000
  [4]Love,R著.Linux内核设计与实现[M].北京:机械工业出版社,2006.1
  注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
其他文献
[摘要] 基于J2EE平台、JSP技术实现虚拟商场的设计。采用Browser/Server(B/S)模式与Oracle数据库服务器以及JDBC数据库技术、java程序片实现电子商务网络销售。系统结合面向对象设计语言的优点和虚拟商场日益庞大的需求,以java语言为核心,并基于一系列开放和流行标准、技术及协议,对电子商务网络化进行全新的诠释。  [关键词] 虚拟商场 java 电子商务    随着In
期刊
一、ERP理念在企业中的应用  ERP的理念是现代企业经营管理的基本和本质的原理和方法。对ERP理念的认识程度直接影响管理人员管理实践的效率和效果。有人提出,ERP的核心理念是“计划和平衡”,我十分赞同这个观点。大致有五个层次:企业经营计划、销售和运作计划、主生产计划、物料需求计划和能力计划,前两个是决策计划,后三个是执行层计划。这五个层次的计划分别属于长期、中期和近期规划,计划的平衡也处在不同的
期刊
[摘要] 随着企业的发展和社会信息化水平的提高,ERP作为现代信息技术应用于企业经营与管理,越来越受到企业的认可与推崇,应用ERP提升企业综合竞争力已经成为企业的共识。体验式营销在ERP的推广中起着越来越重要的作用。  [关键词] 体验式营销 ERP    体验营销是一种全新的营销方式。它是一种高层次的营销,因为它不仅涉及产品的销售过程,还涉及产品应用的全生命周期管理。根据Bernd H.Schm
期刊
[摘要] E-mail营销作为网络营销的一种方式,虽然其重要性近年来不断增加,但在营销上的应用却一直没有很大的起色。本文从E-mail营销的要素入手,分析了E-mail营销所面临的问题,并针对这些问题提出了具体的解决办法。  [关键词] E-mail营销 垃圾邮件 网络营销    据中国互联网络信息中心(CNNIC)发布的第20次“中国互联网络发展状况统计报告”,截至2007年6月30日,中国网民
期刊
[摘要] 面对房地产行业日趋激烈的市场竞争,以消费者为导向的4C营销理念逐步引入房地产市场营销中。本文结合吉安市房地产的营销环境,从消费者需求、成本、方便与沟通四个角度对吉安市住宅房地产销售进行了分析并提出营销建议。  [关键词] 4C 房地产 市场营销    一、4C营销理论  进入21世纪以来,中国的房地产业飞速发展,房地产总体规模不断扩大。房地产企业为了在日趋激烈的市场竞争中获胜,不断将新的
期刊
[摘要] 随着网络技术的迅速发展,电子商务行业正处以一个高速发展的时期,各类商务网站也应运而生。如何从繁多的商务网站数据中获得有用的信息就成了一件亟需解决的问题。本文分析了Web内容挖掘在电子商务网站中的应用以及如何获得数据源。  [关键词] 电子商务网站 Web内容挖掘 数据源    一、引言  对于电子商务网站来说,Internet上储存了大量的文档、图像、声音等非结构化的数据及信息,并且用户
期刊
[摘要] 本文结合传统消费者决策行为理论和网络消费者决策行为理论,分析得出影響C2C电子商务模式下网络消费者购买决策的两个因素:个人因素、C2C网站和商家构成的购物环境两个因素。并对这两个因素进行具体分析。  [关键字] C2C 电子商务 购买决策 影响因素    一、引言  网络经济时代的到来使电子商务(Electronic Commerce, EC)得到了快速的发展。网络销售平台因具有产品多样
期刊
[摘要] 我国的企业并购从1984年的“保定模式”和“武汉模式” 至今的二十余年中,已有数以万计的企业进行了并购重组。在加入世贸组织后,我国的国企兼并改革正在步入一个日渐成熟的新阶段,但我们同时也必须清醒而深刻地认识到中国企业尚存在诸多方面的问题,我们必须在新的一轮并购浪潮中从根本上改变那些不正常、不合理、不经济的“并购方式”, 规范各级政府的行为、健全并购法律体系、完善金融股票市场,以推动我国企
期刊
[摘要] 本文对移动agent在电子商务中应用的原因和优势作了分析,并在此基础上深入分析和研究移动agent技术,从而利用此技术来构造一种新型的电子商务系统模型,并阐述了系统的框架设计及工作流程。移动agent技术的引入,将为电子商务提供一条新的发展途径。  [关键词] agent 移动agent Aglet 电子商务    一、引言  目前,在电子商务实现过程中,普遍采用客户机/服务器技术。基于
期刊
[摘要] 本文通过运用经济学的供求原理来分析2007年我国的猪肉价格的变化。分析出因为国民收入的增加以及猪肉的替代效应等导致猪肉需求增加,而同时因为生猪疫情的爆发和养殖成本的增加导致猪肉供给减少,故猪肉市场价格会上涨。针对2008年猪肉价格情况,我们同样运用经济学原理的供求原理加以预测,得出在正常情况下来年猪肉价格会下降,并维持在略高于2006年价位的水平上,由此提出养殖户谨慎控制养殖生猪数量并加
期刊