构建基于Snort+Splunk的IDS系统

      Splunk是一款数据分析系统(分为社区版和商业版两种),它在快速collect、search、分析、实时获取数据方面的能力较为突出,效率高,能够处理PB级数据,并且它支持对数据源进行实时监控。支持自定义过滤规则。Splunk除了功能强大,在本地化方面也做得非常不错,通过用户图形界面进行各种统计分析操作,能够对数据进行可视化展示,形象直观。

     本实验中利用Splunk来分析本地上传Snort的警报日志文件(社区版最大上传文件500MB) alert.id(有的系统是fast.log文件)。Splunk 9不但能分析alert.ids日志文件,而且能分析snort.log.xxxxxxxx这类Unified2格式的二进制文件(v9以前的版本不具备此项功能)。在进行下面实验之前,我们首先在splunk.com注册账户,以便下载插件。

一、安装Splunk 9

       我们在Windows 10 系统中安装Splunk 9,无论将Splunk安装到哪个分区,要构建一个基本的实验环境,首先确保磁盘可用空间不小于50GB,然后就要设置Web访问用户名和密码,如图1所示。


图1 设置Splunk访问密码

该软件其他安装界面,大家根据系统提示逐步操作即可,本文不再赘述。

二、安装日志解析插件


        Splunk 9可以解析Snort产生的文本格式报警和Unified2格式的报警,下面我们分别添加两种插件,并分别上传文本格式和Unified2格式的报警数据,分为以下四步完成。

步骤1:添加Alert 插件

打开浏览器,在地址栏输入网址: http://127.0.0.1:8000,显示界面,如图2所示。

图2 Splunk登录界面

登录系统之后,开始添加数据源,如图3所示。

图3 设置数据源

我们先通过“查找更多应用”选项找到Snort插件,如图4所示。然后再进行安装。

图4 查找Snort插件

点击安装按钮,接着系统提示输入Splunk网站注册的用户名和密码。安装成功截图如图5所示。

图5 插件安装成功

步骤2:添加 Unified2格式解析插件

Splunk 9.0增加了Unified2读取插件功能,它可以方便得解析 Unified2“警报”日志。如果您使用 Snort 编写 Unified2 警报日志或 Barnyard2 并通过 syslog 发送它们,此应用程序将提取与该事件关联的所有字段。

注意:将支持数据包日志记录和真正的统一日志记录。在应用选项中输入Unified2关键词,我们可以找到安装入口,如图6所示,安装过程同上一步。

图6  安装Unified2插件

这两个插件安装完成之后,我们开始导入本地数据源。


步骤3:上传alert.ids报警文件


我们打开Splunk首页,选择数据来源,先进入Snort的日志目录,打开alert.ids,如图7所示。

图7 选择alert.ids为数据源

注意,社区版Splunk只能导入500M日志文件。接着选择下一步。如图8所示。

图8  选择 alert.ids

接着,我们在选择来源类型下列菜单中依次选择:网络和安全→Snort alert,并选择数据类型如图9所示。

图9  选择数据类型为snort

接着,选择下一步按钮,并保存来源类型,如图10所示。

图10 选择数据保存类型

接下来,点击“检查”按钮。如图11所示。

图11 检查设置

系统显示摘要信息,如图12所示。

图12 显示导入数据源摘要

至此安装已完成,下面点击提交按钮,如图13所示。

图13 成功上传日志文件

日志文件上传成功之后,开始系统检测,首先点击“开始搜索”按钮,如图14所示。

图14 搜索日志

        这里,我们可以在搜索框中输入IP地址或端口信息查询信息。下面我们打开刚安装的插件程序,返回首页选择Snort Alert for Splunk按钮,如图15所示。

图15 打开Alert for Splunk界面

点击Snort Alert for Splunk按钮,显示数据如图16所示。

图16 Snort Alert可视化报警界面
 

步骤4:上传Unified2格式报警文件


      为了演示Splunk解析 Unified2文件的效果,这里我们先上传一个Linux系统下产生的报警文件。选择数据源上传Unified2报警文件,如图17所示。

图17 上传 Unified2格式报警文件

在默认类型里输入Unified2,将数据源设置为unified2,点击下一步,如图18所示。

图18 设置unified2数据类型

下面,接着点击下一步按钮开始检查,如图19所示。

图19 完成检查

三、生成日志报表


当步骤3成功设置之后,我们点击报表下拉菜单中“Top 10 source IPS“即可生成报表,如图20所示。

图 20  生成报表

四、总结

 
       我们在构建SIEM系统中,选择Splunk来收集所有系统、网络及安全设备的日志,这就包括了防火墙、IDS/IPS的所有事件。通过Splunk来集中管理多源事件,本案例中重点讲解了如何加入Snort产生的两类日志:

1.alert.ids (文本格式)

2.Unified2 (二进制格式)

       对于这两类日志我们可以直接在Splunk里导入数据源也可以用数据转发方式发送到远端系统, 对于系统实验环境搭建大家可参考《Windows 10环境快速安装Snort可视化系统》课程。https://edu.51cto.com/course/34405.html

      通过以上介绍,可以发现Splunk绘图功能比BASE更强大,而且处理的数据量也远大于BASE,本文介绍的经验适合于Windows系统环境下部署Snort IDS。

2023年度 51CTO杰出讲师评选开始啦,期待大家投上宝贵一票!  

  • 18
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值