网络入侵检测开源项目 Security Onion
作者:FancyPig | 发布时间: | 更新时间:
介绍

Security Onion是一个免费和开放的Linux发行版,用于威胁搜索、企业安全监控和日志管理。
易于使用的设置向导允许你在几分钟内为你的企业建立一支分布式传感器部队
Security Onion包括一个原生的网络界面,其内置的工具可供分析师用于响应警报、威胁狩猎、将证据编入案例、监控网格性能等。
此外,还包括第三方工具,如Elasticsearch、Logstash、Kibana、Suricata、Zeek(以前称为Bro)、Wazuh、NetworkMiner、CyberChef、NetworkMiner等等。
用例
- NIDS 网络入侵检测系统
- HIDS 系统内部入侵检测系统
- 静态分析 支持PCAP、EVTX导入
- SOC 安全运营平台

界面展示






运行脚本安装
CentOS环境
如果没有git,先安装git
sudo yum -y install git
然后下载仓库,运行一键安装脚本
git clone https://github.com/Security-Onion-Solutions/securityonion
cd securityonion
sudo bash so-setup-network
Ubuntu环境
如果没有git,先安装git
sudo apt -y install git curl
然后下载仓库,运行一键安装脚本
git clone https://github.com/Security-Onion-Solutions/securityonion
cd securityonion
sudo bash so-setup-network
安装过程
运行完脚本会弹出古老的图形化界面,在<Yes>上回车

然后继续回车

然后输入AGREE

输入自定义的hostname

继续回车

回车

回车

然后按空格选择网卡,前面会出现*号

选择网卡,回车

初始化网络,回车

选择Direct直连,我们不需要代理,按回车

这里会开始进行预装检测

预装检测完成后,会让我们选择监控流量的网卡,我们依旧是按空格选择网卡

选择监控流量的网卡,回车

根据个人情况选择更新计划,我们这里默认是Automatic,每8个小时一更,继续回车

这里可以输入网段,使用默认的,然后回车

这里需要选择要安装的开源程序,默认全部安装,回车

是否使用默认的IP范围,选择是,回车

然后创建web管理员账户,按需创建

然后输入密码

重复输入密码确认后,继续回车

根据自己网段进行输入

继续回车

程序进入自动升级状态

需要一定的时间

防火墙开放端口
我们需要使用下面的命令
so-allow

然后就好了


常见问题
安装相关问题
如果安装中出现了报错,应该如何排查?
我们可以通过下面命令进行查看
sudo so-status

这里发现了很多标红的,我们逐个进行启动即可,这里举个例子,比方说我们要启动mysql
sudo so-mysql-start
你如果不确认命令,可以输入so-mysql然后按tab自动补齐,如果启动出现了问题会有提示的,我们这里是端口被占用了,因此我们需要去kill掉3306端口的进程,这里解释下,因为我之前服务器装了宝塔面板,因此这里mysql可能会出现冲突!

playbook一直是error,打开页面404?
如果出现这个问题,你可以先尝试重启playbook
so-playbook-restart

我们这里发现是数据表导入出现了问题,这里需要先停止salt服务
so-salt-stop
然后导入数据表
salt-call state.apply playbook.db_init
之后启动salt
so-salt-start
启动playbook
so-playbook-start
这里发现刚才报错的表正常了

然后我们可以查看整个的运行状况
so-status
这里可以看到完全正常了

使用相关问题
如果我想导入pcap进行分析应该如何操作?
我们可以使用下面的命令进行导入
so-pcap-import [pcap]

系统会使用Suricata、Zeek开源规则进行分析,最后生成一个狩猎的页面,我们可以复制到浏览器里进行查看


如果想查看告警则需要在Alerts里,调整好时间

然后每一条告警就可以看到了

如果想详细看某个告警的信息,可以点击Drilldown


如何查看威胁狩猎中的详细pcap包?
在老版本2.0中我们可以看到是左侧有一个很明显的pcap标志

最新版本需要手动左键Actions>Pcap

然后就会自动跳转到Pcap的页面

部分平台如playbook不能使用我们一开始创建的账户登录
你可能会遇到部分平台无法使用我们自定义的账户登录的情况,这时我们可以使用下面的命令去查看默认密码
sudo salt-call pillar.get secrets
譬如,这里我们就可以看到playbook的admin账户的密码
