snort + barnyard2如何正确读取snort.unified2格式的数据集并且入库MySQL(图文详解)
不多说,直接上干货!
为什么,要写这篇论文?
是因为,目前科研的我,正值研三,致力于网络安全、大数据、机器学习研究领域!
论文方向的需要,同时不局限于真实物理环境机器实验室的攻防环境、也不局限于真实物理机器环境实验室的大数据集群平台。在此,为了需要的博友们,能在自己虚拟机里(我这里是CentOS6.5)来搭建部署snort+barnyard2+base的入侵检测系统。分享与交流是进步的阶梯!
同时,本人还尝试过在Ubuntu14.04里搭建这入侵检测系统的环境。同时,还尝试过在win7\win10里搭建这入侵检测系统的环境。
同时,也欢迎做报警数据方向的烟酒僧留言评论加好友交流。欢迎指正!谢谢。
前期博客
基于CentOS6.5下snort+barnyard2+base的入侵检测系统的搭建(图文详解)(博主推荐)
注意:看过我这篇前期博客的朋友们,我这里的主机名更改了,由datatest改为snort了。这个其实就是个主机名。
数据的准备
我这里,数据集用的是,自己抓取采集到的数据集,即/root/data/guet/snort目录下。假设部分数据如下

[root@snort snort]# pwd
/root/data/guet/snort
[root@snort snort]# ll
total
-rw-r--r--. root root Jan snort.unified2.
-rw-r--r--. root root Jan snort.unified2.
[root@snort snort]#
切换到这个目录下,即把之前的什么,snort.log.***都给删除。
[root@snort snort]# ll
total 8192
-rw-r--r--. 1 root root 2056 Aug 11 15:01 barnyard2.waldo
[root@snort snort]# pwd
/var/log/snort
[root@snort snort]#
将snort.conf里
output unified2: filename snort.log,limit 128
改为
output unified2: filename snort.u2,limit 128
或者不改
我这里啊,为了表达我自己采集的数据,特意新建了个数据库guetsnort,来存储。



对应,在/etc/snort/barnyard2.conf里将
output database: log, mysql, user=snort password=snort dbname=snort host=localhost
改为
output database: log, mysql, user=snort password=snort dbname=guetsnort host=localhost
自定义规则local.rules
[root@snort rules]# pwd
/etc/snort/rules
[root@snort rules]# cat local.rules
alert ip any any -> any any (msg: "IP Packet detected";sid:1000001;)
得注释掉,/etc/snort下的barnyard2.conf配置文件。
#config waldo_file: /var/log/snort/barnyard2.waldo
执行顺序
执行,启动barnyard2
[root@snort ~]# barnyard2 -c /etc/snort/barnyard2.conf -d /var/log/snort -f snort.u2 -w /var/log/snort/barnyard2.waldo
也许这个命令不行。
得为如下。(下面这个操作是可行的)
[root@snort ~]# barnyard2 -c /etc/snort/barnyard2.conf -d /root/data/guet/snort -f snort.unified2





这是,fast模式
http://man.chinaunix.net/network/snort/Snortman.htm

即,因为,是snort.fast模式,所以需要在/etc/snort下的barnyard2.conf里
output alert_fast: stdout
则打印出如下。

成功!
或者


或者







那么, 对于,有时候,我们需要full模式呢,怎么来做?(这才是最重要和最关心的)
http://man.chinaunix.net/network/snort/Snortman.htm

因为,这里,其实数据是通过snort来产生得到的snort.unified2数据。
所以,只需用到barnyard2即可。
即,因为,是snort.full模式,所以需要在/etc/snort下的barnyard2.conf里
output alert_full: alert.full

[root@snort snort]# pwd
/root/data/guet/snort
[root@snort snort]# ll
total
-rw-r--r--. root root Jan snort.unified2.
[root@snort snort]# barnyard2 -c /etc/snort/barnyard2.conf -d /root/data/guet/snort -f snort.unified2
由

变成

[root@snort barnyard2]# pwd
/var/log/barnyard2
[root@snort barnyard2]# ll
total
[root@snort barnyard2]# ll
total
-rw-r--r--. root root Aug : alert.full
[root@snort barnyard2]#

成功!
也就是说,这个alert.full就是snort.unified2.1484570063这个文件的内容。
或者,比如,假设,我这目录下很多数据。

则,可以这样来一次性收到一个txt里。则是
[root@snort snort]# barnyard2 -c /etc/snort/barnyard2.conf -d /root/data/guet/snort/nssa-sensor3 -f snort.unified2 > nssa-sensor3_snort.txt
[root@snort snort]# barnyard2 -c /etc/snort/barnyard2.conf -d /root/data/guet/snort/nssa-sensor4 -f snort.unified2 > nssa-sensor4_snort.txt
这样也是可行。
output alert_full: stdout含义和output alert_full: alert.full
前者stdout直接是打印到屏幕上
后者alert.full是输出到/var/log/barnyard2下的alert.full文件里。
barnyard2的github网站
https://github.com/firnsy/barnyard2
或者以下也是可以的

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| snort |
| test |
+--------------------+
rows in set (0.01 sec) mysql> create database guetsnort;
Query OK, row affected (0.00 sec) mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| guetsnort |
| mysql |
| snort |
| test |
+--------------------+
rows in set (0.00 sec) mysql>
然后

然后,注释掉/etc/snort/barnyard2.conf里
#config waldo_file: /var/log/snort/barnyard2.waldo
以下是我数据放置的目录

然后执行
[root@snort snort]# barnyard2 -c /etc/snort/barnyard2.conf -d /root/data/guet/snort/nssa-sensor3 -f snort.unified2


我这里,经多次尝试,依然还是无法用新建的数据库来导入。
所以,我这就把导好的DARPA 1999数据库给删除掉了。
这里教大家的是,如何在base界面里快速删除数据。

成功删除。

或者在base界面里快速清空里面的数据。
操作如下:

得到的

成功!
然后,继续尝试
[root@snort ~]# barnyard2 -c /etc/snort/barnyard2.conf -d /root/data/guet/snort/nssa-sensor3 -f snort.unified2



成功!


同时,大家可以关注我的个人博客:
http://www.cnblogs.com/zlslch/ 和 http://www.cnblogs.com/lchzls/ http://www.cnblogs.com/sunnyDream/
详情请见:http://www.cnblogs.com/zlslch/p/7473861.html
人生苦短,我愿分享。本公众号将秉持活到老学到老学习无休止的交流分享开源精神,汇聚于互联网和个人学习工作的精华干货知识,一切来于互联网,反馈回互联网。
目前研究领域:大数据、机器学习、深度学习、人工智能、数据挖掘、数据分析。 语言涉及:Java、Scala、Python、Shell、Linux等 。同时还涉及平常所使用的手机、电脑和互联网上的使用技巧、问题和实用软件。 只要你一直关注和呆在群里,每天必须有收获
对应本平台的讨论和答疑QQ群:大数据和人工智能躺过的坑(总群)(161156071)






snort + barnyard2如何正确读取snort.unified2格式的数据集并且入库MySQL(图文详解)的更多相关文章
- 如何正确且成功破解跨平台数据库管理工具DbVisualizer?(图文详解)
前期博客 基于JDBC的跨平台数据库管理工具DbVisualizer安装步骤(图文详解)(博主推荐) 上图,所示,说明这个还只是免费版而已,没又破解为Pro版本. 接下来,就是带领大家如何正确且成功破 ...
- 如何正确且高效实现OSSIM中文化的解决方案(图文详解)
前言 对于玩OSSIM的初学者或者中级水平的从业人员来说,都有一定必要性从中文看起,当然,最终还是英文的目标迈进,只是说,为了让自己更快速上手! 虽然系统说明支持中文,实际上,只是台湾的繁体中文而 ...
- ubuntu16.04里如何正确添加用root用户来登录图形界面(图文详解)
不多说,直接上干货! Ubuntu版本都默认不允许使用root登录,必须要改配置文件. 第一步: 首先设置root密码,利用现有管理员帐户登陆Ubuntu,在终端执行命令:sudo passwd ro ...
- 基于CentOS6.5下snort+barnyard2+base的入侵检测系统的搭建(图文详解)(博主推荐)
为什么,要写这篇论文? 是因为,目前科研的我,正值研三,致力于网络安全.大数据.机器学习研究领域! 论文方向的需要,同时不局限于真实物理环境机器实验室的攻防环境.也不局限于真实物理机器环境实验室的大数 ...
- 基于Windows7下snort+apache+php 7 + acid(或者base) + adodb + jpgraph的入侵检测系统的搭建(图文详解)(博主推荐)
为什么,要写这篇论文? 是因为,目前科研的我,正值研三,致力于网络安全.大数据.机器学习.人工智能.区域链研究领域! 论文方向的需要,同时不局限于真实物理环境机器实验室的攻防环境.也不局限于真实物理机 ...
- 基于CentOS6.5下如何正确安装和使用Tcpreplay来重放数据(图文详解)
前期博客 基于CentOS6.5下snort+barnyard2+base的入侵检测系统的搭建(图文详解)(博主推荐) tcpreplay是什么? 简单的说, tcpreplay是一种pcap包的重放 ...
- 全网最全的Windows下Anaconda2 / Anaconda3里正确下载安装爬虫框架Scrapy(离线方式和在线方式)(图文详解)
不多说,直接上干货! 参考博客 全网最全的Windows下Anaconda2 / Anaconda3里正确下载安装OpenCV(离线方式和在线方式)(图文详解) 第一步:首先,提示升级下pip 第二步 ...
- 全网最全的Windows下Anaconda2 / Anaconda3里正确下载安装OpenCV(离线方式和在线方式)(图文详解)
不多说,直接上干货! 说明: Anaconda2-5.0.0-Windows-x86_64.exe安装下来,默认的Python2.7 Anaconda3-4.2.0-Windows-x86_64.ex ...
- 【适合公司业务】全网最详细的IDEA里如何正确新建【普通或者Maven】的Java web项目并发布到Tomcat上运行成功【博主强烈推荐】(类似eclipse里同一个workspace下【多个子项目】并存)(图文详解)
不多说,直接上干货! 首先,大家要明确,IDEA.Eclipse和MyEclipse等编辑器之间的新建和运行手法是不一样的. 如果是在Myeclipse里,则是File -> new -> ...
随机推荐
- CSDN-markdown基本的语法说明
文件夹 概述 简介Markdown CSDN Markdown的功能支持 标题 Setext形式 atx形式 区块引用 分隔线 强调 列表 无序列表 有序列表 注意事项 链接 自己主动链接 普通文本链 ...
- 微信小程序 自定义组件(modal) 引入组件
项目结构: 步骤一:创建组件 声明这一组文件为自定义组件 modal.json { "component": true, // 自定义组件声明 "usingCompone ...
- Dubbo应用启动与停止脚本,超具体解析
本周刚好研究了一下dubbo的启动脚本,所以在官网的启动脚本和公司内部的启动脚本做了一个整理,弄了一份比較通过的Dubbo应用启动和停止脚本. 以下的脚本仅仅应用于配置分离的应用.什 ...
- JNI返回复杂对象之中的一个
需求: 首先说需求.近期接手一个项目.要在底层解析二进制数据,数据结构比較负责,因为server是c++server,加之開始没有考虑到移动端开发,所以协议有点扯蛋.大体是这种,一个数据包里面是map ...
- 机器学习笔记之PCA-SIFT总结
不多说,直接上干货! PCA-SIFT算法在描述子构建上作了创新,主要是 将统计学中的主成分分析(PCA)应用于对描述子向量的降维,以提高匹配效率 . PCA 的原理是:一般有效信号的方差大,噪声的方 ...
- Python爬虫开发【第1篇】【多线程爬虫及案例】
糗事百科爬虫实例: 地址:http://www.qiushibaike.com/8hr/page/1 需求: 使用requests获取页面信息,用XPath / re 做数据提取 获取每个帖子里的用户 ...
- Entity Framework工具POCO Code First Generator的使用(参考链接:https://github.com/sjh37/EntityFramework-Reverse-POCO-Code-First-Generator)
在使用Entity Framework过程中,有时需要借助工具生成Code First的代码,而Entity Framework Reverse POCO Code First Generator是一 ...
- IntelliJ IDEA jrebel6 安装,破解
一.Setting中在线安装JRebel插件,install 二.拷贝下载的jrebel.rar解压后 把里面内容覆盖IDEA插件安装目录中此插件目录之下 下载:http://pan.baidu.co ...
- 从远程Linux Copy文件到本机 界面化操作
1.安装SSHSecureShellClient 2.打开 3.设置1,然后打开2就可以操作了
- bzoj5333: [Sdoi2018]荣誉称号
请不要去改题目给的输入,不然你会wa穿... 这么故弄玄虚的题目,肯定要先转换问题 看到这个不断的除2想起别人家的线段树的写法...x的两个孩子是x<<1和x<<1|1 然后问 ...