一.安全洋葱核心功能
    官网:https://securityonion.net/
    Security Onion将三个核心功能无缝融合在一起:
    1.完整数据包捕获;
    2.基于网络和基于主机的入侵检测系统(分别为NIDS和HIDS);
    3.强大的分析工具。

    二.安全洋葱框架图
    【20181028】Security Onion安全洋葱架构概述 - 图1

    三.安全洋葱框架介绍(只针对NIDS)
    安全洋葱主要由流量采集,流量分析,日志解析,事件检索,分析工具5个组件组成。
    1.流量采集组件
    采集网口中的完成流量包
    (1)netsniff-ng
    捕获完整流量包
    2.流量分析组件
    和netsniff-ng组件独立,实时监控和分析当前网络流量
    (1)Bro
    实时基于分析驱动的分析检测流量,输出分析日志,不保存原始流量
    (2)Snort/Suricata
    实时基于规则分析检测流量,输出分析日志,默认unified2格式,分析结果可以通过Sguil,Elasticsearch查看,不保存原始流量
    3.日志解析组件
    解析和正则化Bro,Snort/Suricata生成的日志文件,生成事件,供Elasticsearch
    检索
    (1)Logstash
    是一个开源的服务器端数据处理管道,它同时从多个源中提取数据,对其进行转换,然后将其发送到存储点,由bro生成的log和Snort/Suricata生成的分析结果日志,经过解析和正则化后生成的日志组成,因为使用的是进程通信管道,所以有队列,分为磁盘队列和内存队列,队列中的单位为事件
    4.事件检索组件
    对Logstash生成的事件进行管理和检索。
    (1)Elasticsearch
    摄取和索引日志,输入数据为Logstash,是一个分布式RESTful(一种软件设计风格)搜索和分析引擎,其中Elasticsearch由4个小组件组成:
    a.Curator
    用于定期管理Elasticsearch索引和快照
    b.DomainStats
    通过上下文获取域名的附加信息,例如创建时间,年龄,信誉(确定域是否是Alexa / Cisco Umbrella前100万个站点的成员),domain_stats.py,它被开发用于与SIEM结合使用并且在生产环境中。具体来说,它已与弹性堆栈结合使用,例如Logstash查询,取得了巨大成功。在Production Mode使用Best Practices模式下是不开启的,要自己单独开启,并且需要互联网,需要连接到外网的whois服务器
    c.ElastAlert
    是一个简单的框架,基于规则,用于告警Elasticsearch中数据的异常,还有多种警报机制,例如Slack,Email
    d.FreqServer
    检测DGA和查找随机文件名,脚本名称,进程名称,服务名称,工作站名称,TLS证书主题和颁发者主题等,基于freq.py和freq_server.py,在Production Mode使用Best Practices模式下是不开启的,要自己单独开启。
    5.分析工具
    安全洋葱提供多种可视化事件追溯,分析工具。
    (1)Sguil
    用于查看Snort或Suricata警报,和Bro HTTP事件。更重要的是,Sguil允许您直接从警报“转移”到数据包捕获(通过Wireshark或NetworkMiner)或触发警报的完整会话的记录。本质是mysql数据库
    (2)Squert
    服务于Sguil,它允许查询Sguil数据库并为数据提供多种可视化选项,例如“时间序列表示,加权和逻辑”分组结果集“和地理IP映射等,还尝试通过使用元数据,时间序列表示以及加权和逻辑分组的结果集来为事件提供额外信息
    (3)Kibana
    可视化,可以快速分析和转换so生成的不同的数据类型,最主要的目的是配合Elasticsearch工作,进行高级数据分析
    6.其它分析工具
    (1)CapME
    主要服务于sguil,也是一个web界面,主要功能
    a.查看使用tcpflow呈现的pcap脚本
    b.查看用Bro渲染的pcap脚本(特别有助于处理gzip编码)
    c.下载一个pcap

    四.安全洋葱文件路径
    1./usr/sbin/so-* 该目录下存放的所有组件的启动,关闭服务等
    2./etc/nsm so的配置和数据
    (1) rules 该文件夹包含了Snort/Suricatad等规则
    3./nsm 存放so收集输出的所有数据,子目录如下:
    (1)bro 主要存放bro组件产生的日志
    (2)elasticsearch
    (3)import
    (4)logstash
    (5)sensor_data 传感器收集到的日志
    a.dailylogs主要存放netsniff-ng抓到的完整流量包
    b.snort.unified2.时间戳 Snort/Suricata输出的ids检测结果,但是unified2格式,查看或者获取可以通过sguil,或者mysql中的数据表
    (6)server_data
    5./etc/logstash logstash 的配置目录
    6./etc/elastalert ElastAlert的配置目录
    7./etc/Kibana kibana的配置文件
    8./opt 安全洋葱so组件的源代码
    ——————————-
    作者:姚贤贤
    来源:CSDN
    原文:https://blog.csdn.net/u011311291/article/details/83414776
    版权声明:本文为博主原创文章,转载请附上博文链接!