Libnids(Library Network Intrusion Detection System) .
Libnids(Library Network Intrusion Detection System)是一个网络入侵检测开发的专业编程接口。它实现了基于网络的入侵检测系统的基本框架,并提供了一些基本的功能。使用Libnids可以快速地构建基于网络的入侵检测系统,并可以在此基础上进一步扩展开发。Libnids实现了入侵检测系统的底层功能,使开发者可以专注于高层的功能开发。
Libnids是基于Libpcap和Libnet而开发的,所以它具有Libpcap和Libnet的优点,具有较强的移植性,效率高,使用简单。Libnids是仿造Linux 2.0.x内核中的TCP/IP协议部分而实现的,具有高可靠性,并通过了许多测试。
Libnids的主要功能包括捕获网络数据包、IP碎片重组、TCP数据流重组及端口扫描攻击测试和异常数据包测试等。Libnids使用了Libpcap捕获数据包的功能,可以设定过滤规则,指定捕获感兴趣的数据包。IP碎片重组是Libnids的一个重要内容,它是仿照Linux内核中的IP重组而实现的,所以非常可靠。Libnids提供了TCP数据流重组功能,这是Lipcap所不具备的,利用TCP数据流重组,可以分析基于TCP协议的各种应用层协议。另外,Libnids还提供了检测TCP端口扫描攻击的功能,检测异常数据包的功能,这是入侵检测系统(IDS)最基本的功能。
Libnids是Rafal Wojtczuk开发的,对于我目前使用的是在Windows平台下所对应的开发包,Libnids-W32-1.19 版本的,目前应该来说是最新的,http://www.packetstormsecurity.org/UNIX/IDS/Libnids-W32-1.19.tar.gz,这个是下载地址,顺便说句,对于英文的东西,还是觉得Google的技术更好些,百度在这方面,不是他的专长了,险些没有找到下载地址。
Libnids的使用范围
Libnids使用了Libpcap。所以他具有捕获数据包的功能,利用Libnids可以轻松地实现对数据包的捕获,对其进行分析。同时,Libnids提供了TCP数据流重组功能,所以对于分析基于TCP协议的各种协议Libnids都能胜任。Libnids还提供了对IP分片进行重组的功能,以及端口扫描检测和异常数据包检测功能,所以它对于分析网络异常情况也是非常有效的。总结起来,Libnids可以用在以下几个方面。当然,良好的扩展性可以给我们带来更多的惊喜。
一、入侵检测系统
Libnids的设计是作为入侵检测系统的一个部件来设计的,它实现了入侵检测系统中非常基础的功能,如数据包捕获、协议分析接口等。另外,它还专门针对入侵检测系统的特性,实现了TCP数据流重组功能,这对于分析准对TCP协议的各种攻击是很有效的。还有,它已经实现了IP碎片重组功能、对异常数据包的检测功能以及对TCP端口扫描的检测功能。最重要的是,Libnids为入侵检测系统更深入的开发提供了开发接口。因此,开发人员可以更关注于对入侵检测技术的研究,而不用考虑底层的实现细节。
二、网络协议分析
Libnids是在Libpcap的基础上开发的,所以它具备了Libpcap的功能,可以实现各种协议的分析,并在Libpcap的基础上开发了更多的功能,如TCP数据流重组。这样,在利用Libnids分析基于TCP协议的各种协议时,不仅可以分析各种单个TCP数据包,而且可以分析整个TCP连接过程。这对于分析FTP协议,HTTP协议,POP3协议等基于TCP的应用层协议是非常有帮助的。
三、网络嗅探
网络嗅探也成网络监视,主要是指检测网络信息,查看网络内容。针对不同的目的,有各种各样的故障,它可以利用网络嗅探技术来实现。对于网络非法攻击者来说,为了获得敏感信息,他也可以利用网络嗅探技术来获取他所需要的内容,如,密码、用户、帐号等。后面,读者将可以看到,利用Libnids可以轻松获取很多协议传输的用户和密码。所以说,Libnids是一把双刃剑。除此之外,利用Libnids还可以重现网络内容,还原网络数据,如重现HTTP协议中传输的网页,POP3协议中传输的电子邮件等。
我们要用它在Windows下开发,同样需要注意的就是要设置好我们需要的Include和Lib库了,大概需要Libnids.lib Wpcap.lib wsock32.lib
Libnids(Library Network Intrusion Detection System) .的更多相关文章
- 开源网络准入系统(open source Network Access Control system)
开源网络准入系统(open source Network Access Control system) http://blog.csdn.net/achejq/article/details/5108 ...
- Android训练课程(Android Training) - 使用Volley传输网络数据(Transmitting Network Data Using Volley)
使用Volley传输网络数据(Transmitting Network Data Using Volley) Volley 是一个 HTTP 库,它使得在Android应用程序中操作网络更容易,是重要 ...
- 在Caffe中使用 DIGITS(Deep Learning GPU Training System)自定义Python层
注意:包含Python层的网络只支持单个GPU训练!!!!! Caffe 使得我们有了使用Python自定义层的能力,而不是通常的C++/CUDA.这是一个非常有用的特性,但它的文档记录不足,难以正确 ...
- 从时序异常检测(Time series anomaly detection algorithm)算法原理讨论到时序异常检测应用的思考
1. 主要观点总结 0x1:什么场景下应用时序算法有效 历史数据可以被用来预测未来数据,对于一些周期性或者趋势性较强的时间序列领域问题,时序分解和时序预测算法可以发挥较好的作用,例如: 四季与天气的关 ...
- HDFS分布式文件系统(The Hadoop Distributed File System)
The Hadoop Distributed File System (HDFS) is designed to store very large data sets reliably, and to ...
- MBMD(MobileNet-based tracking by detection algorithm)作者答疑
If you fail to install and run this tracker, please email me (zhangyunhua@mail.dlut.edu.cn) Introduc ...
- 网络分析法(Analytic Network Process,ANP)
什么是网络分析法 网络分析法(ANP)是美国匹兹堡大学的T.L.Saaty教授于1996年提出的一种适应非独立的递阶层次结构的决策方法,它是在层次分析法(Analytic Hierarchy Proc ...
- 入侵检测基本准则(Basic principles of intrusion detection)【v1.0】
所谓“入侵检测”,顾名思义,就是对入侵行为的发觉.他通过对计算机网络或计算机系统中若干关键点收集信息并对其进行分析,从中发现网络或系统中是否有违反安全策略的行为和被攻击的迹象.” 但实际上,所谓的“违 ...
- 2020国防科大综述:3D点云深度学习——综述(3D点云分割部分)
目录 摘要 1.引言: 2.背景 2.1 数据集 2.2评价指标 3.3D点云分割 3.1 3D语义分割 3.1.1 基于投影的方法 多视图表示 球形表示 3.1.2 基于离散的方法 稠密离散表示 稀 ...
随机推荐
- UICollectionView 常用操作
1 iOS开发 - UICollectionView点击展开收起
- [HDU2874]Connections between cities
思路:LCA裸题.本来是帮pechpo调错,结果自己写了半天… 设$dis_x$是点$x$到根结点距离,不难想到两点$u$.$v$之间最短距离等于$dis_u+dis_v-dis_{LCA(u,v)} ...
- Loj 10211 sumdiv
题目描述 求 A^B 的所有约数之和 mod 9901. 首先,我们要求出A的约数之和. 就是把A分解质因数,成为:a1^k1*a2^k2*a3^k2.... 然后约数和就是(a1^0+a1^1+a1 ...
- c# -- 解决vs使用本地iis运行项目支持局域网访问的问题(附防火墙端口开放步骤)
用vs运行项目时,有时候需要局域网内不同设备进行访问调试~ 以前解决过这个问题,这次用了部新电脑,问题又出现了,改了配置还是不行,原来还差了一步防火墙端口开放访问. 于是写了这篇分享,备忘~ 操作步骤 ...
- mobile开发备忘
css -webkit-tap-highlight-color webkit点击时会反色,可以清楚 -webkit-appearance 设为none时自带组建样式清除
- github入门教程:第一步
[git教程] 以前在网上找过一些,见 http://www.wojilu.com/Forum1/Topic/702 我自己会一边学,一边写教程,过程中有不明白的,会跟大家请教交流. ----- ...
- DELPHI 常用虚拟键:VK_
常数名称 十六进制值 十进制值 对应按键 VK_LBUTTON 01 ...
- 微软为何选择在 Github 上开源 .NET 核心?
本文来自微软开源.NET 的一篇公告 ,文中阐述了微软为何选择在 Github 开源.NET,以及微软对开源和开源社区方面的认识的变迁. 对于.NET来说,今天(2014/11/12)是个大日子! 我 ...
- OData查询ASP.NET Web API全攻略
本篇使用ASP.NET Web API来体验OData各种query. 首先是本篇即将用到的Model.使用的OData版本是4.0. public class Customer { public i ...
- windows phone 基础
一.安装 建议安装Windows 7环境,XP中不能运行模拟器,Vista系统支持,但不解释.系统安装完后,直接去微软网站在线安装即可,非常方便,美中不足的是如果你的网速不快,那可能要折磨你半天,快得 ...