位置: 编程技术 - 正文
随着对网络安全需求的深入开发,基于网络的入侵检测技术已经成为一个重要且有意思的研究方向。想学习NIDS技术除了去读一些现成的资料和一些开源系统的源码,最好的办法莫过于自己去写一个NIDS程序,只有那样才能真正体会到一些NIDS的实现需求和设计妙处。
本质上说NIDS只是一种网络流量的分析工具,通过对网络流量的分析识别出一些已知或未知的攻击行为,一个最简单的NIDS完成的主要工作也就是抓包->协议解码->匹配,众所周知PERL是极其强大的脚本语言,尤其是它的字符串处理能力可以方便地实现对于网络流量中恶意特征进行匹配。当然PERL毕竟只是脚本语言,它的执行效率不允许用于真正大流量生产性环境,但PERL的简单易学及强大功能对于实现一个简单的NIDS达到学习的目的无疑是非常好的,下面我介绍一个用PERL实现的简单NIDS框架,我们将在Linux下实现它,在其他操作系统上类似。
PERL的一个强大特性就在于它海量的CPAN模块库,很多你想实现的功能都可以找到现成的模块,你所要做的只是安装上那些模块即可,关于PERL的模块及面向对象特性的管理和使用在这就不介绍了,请参看相关资料,比如O'REILLY出版的《高级Perl编程》。在用PERL编写网络流量分析脚本之前,需要安装一些底层的抓包及基本的数据包解码模块,包括如下这些: 实现抓包及检测分析的主程序。
(二)FTP.pm FTP协议解码模块,抽取数据包里的FTP命令及相应的参数,此文件需要拷贝到NetPacket系列模块所在的目录,通常是在/usr/lib/perl5/site_perl/5.x.x/NetPacket/
(三)SMB.pm 对SMB包头结构的简单解码模块,此文件需要拷贝到NetPacket系列模块所在的目录,通常是在/usr/lib/perl5/site_perl/5.x.x/NetPacket/
推荐整理分享通过perl实现一个简单的NIDS(perl keys),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:perl怎么运行,perl -ne,perl-v,perl怎么运行,perl keys,perl keys,perl语句,perl 调用perl,内容如对您有帮助,希望把文章链接给更多的朋友!
perl用变量做句柄介绍 #!/usr/bin/perl-wusestrict;usewarnings;useFileHandle;my%fh;my@array=(1..);for(1..5){open$fh{$_},"$_.txt"ordie;}for(1..5){#print$fh{$_}"$_n";此处错误$fh{$_}-print("$_n");#为FileHandle里的
Perl学习基本备忘录 1.Perl数组(1):1)初始化数组@array=("stringA","stringB","stringC");2)使用负索引循环检索print$array[-1];#输出索引为(-1+3)%3=2的stringC3)动态增长$array[4]="stringD";#虽然$array
Perl 字符串处理备忘录 1.chop和chomp函数两个函数都以字符串作为参数,并去除其末尾最后一个字符。区别是,无论最后一个字符是什么,chop都会去除,并在返回值中返回;而
标签: perl keys
本文链接地址:https://www.jiuchutong.com/biancheng/372507.html 转载请保留说明!友情链接: 武汉网站建设