0x01 前言
搭建普通IDS/IPS很简单,Suricata和Snort任意一个都可以,但是他们无法保存流量,无法对告警的流量进行分析,这时想到了arkime可以利用arkime和suricata进行联动,arkime用于保存全流量,suricata用于流量检测,然后就可以从arkime下载命中suricata规则的流量包进行分析
下载arkime的rpm安装包
wget https://s3.amazonaws.com/files.molo.ch/builds/centos-7/arkime-3.4.2-1.x86_64.rpm
安装依赖
yum -y install perl-libwww-perl perl-JSON libyaml-devel perl-LWP-Protocol-https
rpm -ivh arkime-3.1.1-1.x86_64.rpm
不过需要注意的是,这只是安装了arkime自身的一些组件,尚缺少elasticsearch,以及一些配置。而解决这一步的问题才是整个安装过程中比较复杂的部分。
至于如何安装elasticsearch,如何配置arkime,在/opt/arkime/bin/Configure这个脚本中列得很清楚了,建议直接读懂这个脚本,其实有用得行不多,看明白以后就知道后面的安装大致都干了什么,出错了也好处理。
最容易出错的地方(尤其是在离线安装时)是ElasticSearch的安装。
从官网上这里就可以看出,Arkime和ElastcSearch的版本是有一个配对关系的(实际就算版本号对准了,类型没对准也会转不起来,离线安装时我在这里卡了好久),所以还是不要自己去官网直接下载ES了,下不对很麻烦。我们可以借助这个Configure脚本,在在线安装的同时帮助我们直接下载对应版本的ES。
打开/opt/arkime/bin/Configure脚本,找到如下安装ES的这一行,复制一行后改一下命令,
把yum install改成wget,直接借用脚本中的ES下载链接,把对应版本的ES的rpm包给弄下来。
然后就可用用Configure进行ES的安装和Arkime的配置工作。
然后执行Configure,注意如下图的地方,第一个要填网卡接口名,第二个只能填yes,第三个填一个你自己的口令密码,
然后就是下载和安装的时候
最后是GEO信息的下载,这里要选no
如果一切正常,主要是ES能够正确下载并安装的话,就会报告完毕,然后再GEO那个选项输入no后,基本就完事了,然后需要我们参考屏幕上返回的指示完成剩下的4、5、6、7、8、9步,这也很简单,复制对应的命令粘贴执行就好。
第四步启动elasticsearch
systemctl start elasticsearch.service
如果报错
则查看目录有没
有elasticsearch的rpm文件
如果没有则下载,找的上面报错信息
下载且安装再次启动
查看需要看看ES是否正常,执行
curl http://127.0.0.1:9200
查看是否有返回,如果没以下结果则检查以上步骤
如果结果正确,可以执行第5步,初始化ES数据库,注意替换ESHOST为localhost;
第6步,增加用户名和密码(这个会用来登录Arkime界面)
第7步,启动
systemctl start arkimecapture.service
systemctl start arkimeviewer.service
第8步是查看日志文件
第九步登录
第七步启动了,但由于GEO还没配置号,capture服务应该无法正确启动,在arkime中还看不到实际采集的数据。
实际上,只要读懂了前面的Configure脚本,就能跟踪到此处是执行arkime_update_geo.sh,主要目的就是下载2个文件。从arkime_update_geo.sh直接拿出两个地址进行wget。
打开/opt/arkime/etc目录,下载下面两个地址的文件到该目录下:
1. https://www.iana.org/assignments/ipv4-address-space/ipv4-address-space.csv
2.https://raw.githubusercontent.com/wireshark/wireshark/master/manuf
其中,第二个地址下载下来的文件应该改名为oui.txt。另外,第二个地址比较魔幻,早上连不上晚上能连上,固网能连上移动网连不上,不知是不是DNS问题,所以如果不太好用的话,就再试试下面这个地址,没准更好使一点:
https://gitlab.com/wireshark/wireshark/-/raw/master/manuf
下载及更名完成后,重启一下capture服务
再登陆服务器
等一会应该就能看到数据上来了,比如再session界面……实在等得着急的话,ping一下主机看看,应该也就可以了
0x03 安装suricata
安装
yum install suricata
更新规则
suricata-update
测试是否安装好
suricata
0x04Arkime与Suricata联动配置与使用
配suricata插件
cd /opt/arkime/etc/
vim config.ini
搜索关键词pluginsDir,在面新增如下内容
# Add suricata.so to your plugins line, or add a new plugins line
plugins=suricata.so
# suricataAlertFile should be the full path to your alert.json or eve.json file
suricataAlertFile=/var/log/suricata/eve.json
suricataExpireMinutes=60
chmod o+r /var/log/suricata/eve.json
如果提示没此文件运行以下suricata就有这个文件了
cd /opt/arkime/etc/
vim config.ini
搜索关键词dropUser,修改为root,
0x05 测试
测试环境
攻击者利用永恒之蓝攻击靶机
IPS/IDS成功检测到异常流量
后续可将此流量下载,进行分分析是否误报
0x06 总结
可将此系统部署到内网中合适的位置就可以检测所有内网中的流量,
也可以研究以下opnsense,貌似也挺好用的
0x07 参考
https://blog.csdn.net/lhyzws/article/details/124433680
https://blog.csdn.net/orright/article/details/120894886
https://blog.csdn.net/orright/article/details/120910452
本公众号发布的靶场、文章项目中涉及的任何脚本工具,仅用于测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断;
本文章、项目内场所有资源文件,杜绝任何靶本公众号、自媒体进行形式的擅自转载、发布
本公众号对任何脚本及工具问题概不负责,包括不限于由任何脚本错误导致的任何损失或损害及任何法律责任;
直接使用本或公众发布的技术、靶场、文章项目中涉及的脚本工具,但在某些行为不符合任何国家/地区或相关地区的情况下进行传播时,引发的隐私或其他任何法律问题的后果概不负责;
如果任何单位或个人认为项目或文章的内容可能侵犯其权利,则应及时通知并证明其身份,证明我们将在收到证明文件后删除相关内容;
以任何方式查看或使用此项目的人或直接或间接使用项目的任何脚本的使用者都应仔细阅读此声明;
本公众号保留更改或补充,免责随时声明的权利;
一旦您访问或使用访问本公众号任何项目,则视为您已接受此免责声明。
您在本声明未发出之时,使用或者访问了本公众号任何项目 ,则视为已接受此声明,请仔细阅读。
此致
由于、利用的信息而造成的任何或直接的此文传播后果,均由用户本人负责,作者不承担任何直接责任。
一切法律后果均由攻击者承担!!!
日站不规范,亲人两行泪!!!
日站不规范,亲人两行泪!!!
日站不规范,亲人两行泪!!!
专注于信息安全方面分享,非营利性组织,不接任何商业广告
关注不迷,点赞!关注!转向!评论!!
要投稿的请留言或者加微信,会第一时间回复,谢谢