mirror of
https://github.com/Security-Onion-Solutions/securityonion.git
synced 2025-12-06 17:22:49 +01:00
Merge branch 'dev' into feature/logscan
This commit is contained in:
2
HOTFIX
2
HOTFIX
@@ -1 +1 @@
|
|||||||
ECSFIX HEAVYNODE_SSL_LOGSTASH_REDIS_PIPELINES
|
ECSFIX HEAVYNODE_SSL_LOGSTASH_REDIS_PIPELINES FBPIPELINE
|
||||||
|
|||||||
@@ -1,18 +1,18 @@
|
|||||||
### 2.3.60-ECSFIX ISO image built on 2021/07/02
|
### 2.3.60-FBPIPELINE ISO image built on 2021/07/13
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### Download and Verify
|
### Download and Verify
|
||||||
|
|
||||||
2.3.60-ECSFIX ISO image:
|
2.3.60-FBPIPELINE ISO image:
|
||||||
https://download.securityonion.net/file/securityonion/securityonion-2.3.60-ECSFIX.iso
|
https://download.securityonion.net/file/securityonion/securityonion-2.3.60-FBPIPELINE.iso
|
||||||
|
|
||||||
MD5: BCD2C449BD3B65D96A0D1E479C0414F9
|
MD5: 2EA2B337289D0CFF0C7488E8E88FE7BE
|
||||||
SHA1: 18FB8F33C19980992B291E5A7EC23D5E13853933
|
SHA1: 7C22F16AD395E079F4C5345093AF26C105E36D4C
|
||||||
SHA256: AD3B750E7FC4CA0D58946D8FEB703AE9B01508E314967566B06CFE5D8A8086E9
|
SHA256: 3B685BBD19711229C5FCD5D254BA5024AF0C36A3E379790B5E83037CE2668724
|
||||||
|
|
||||||
Signature for ISO image:
|
Signature for ISO image:
|
||||||
https://github.com/Security-Onion-Solutions/securityonion/raw/master/sigs/securityonion-2.3.60-ECSFIX.iso.sig
|
https://github.com/Security-Onion-Solutions/securityonion/raw/master/sigs/securityonion-2.3.60-FBPIPELINE.iso.sig
|
||||||
|
|
||||||
Signing key:
|
Signing key:
|
||||||
https://raw.githubusercontent.com/Security-Onion-Solutions/securityonion/master/KEYS
|
https://raw.githubusercontent.com/Security-Onion-Solutions/securityonion/master/KEYS
|
||||||
@@ -26,22 +26,22 @@ wget https://raw.githubusercontent.com/Security-Onion-Solutions/securityonion/ma
|
|||||||
|
|
||||||
Download the signature file for the ISO:
|
Download the signature file for the ISO:
|
||||||
```
|
```
|
||||||
wget https://github.com/Security-Onion-Solutions/securityonion/raw/master/sigs/securityonion-2.3.60-ECSFIX.iso.sig
|
wget https://github.com/Security-Onion-Solutions/securityonion/raw/master/sigs/securityonion-2.3.60-FBPIPELINE.iso.sig
|
||||||
```
|
```
|
||||||
|
|
||||||
Download the ISO image:
|
Download the ISO image:
|
||||||
```
|
```
|
||||||
wget https://download.securityonion.net/file/securityonion/securityonion-2.3.60-ECSFIX.iso
|
wget https://download.securityonion.net/file/securityonion/securityonion-2.3.60-FBPIPELINE.iso
|
||||||
```
|
```
|
||||||
|
|
||||||
Verify the downloaded ISO image using the signature file:
|
Verify the downloaded ISO image using the signature file:
|
||||||
```
|
```
|
||||||
gpg --verify securityonion-2.3.60-ECSFIX.iso.sig securityonion-2.3.60-ECSFIX.iso
|
gpg --verify securityonion-2.3.60-FBPIPELINE.iso.sig securityonion-2.3.60-FBPIPELINE.iso
|
||||||
```
|
```
|
||||||
|
|
||||||
The output should show "Good signature" and the Primary key fingerprint should match what's shown below:
|
The output should show "Good signature" and the Primary key fingerprint should match what's shown below:
|
||||||
```
|
```
|
||||||
gpg: Signature made Fri 02 Jul 2021 10:15:04 AM EDT using RSA key ID FE507013
|
gpg: Signature made Tue 13 Jul 2021 04:12:08 PM EDT using RSA key ID FE507013
|
||||||
gpg: Good signature from "Security Onion Solutions, LLC <info@securityonionsolutions.com>"
|
gpg: Good signature from "Security Onion Solutions, LLC <info@securityonionsolutions.com>"
|
||||||
gpg: WARNING: This key is not certified with a trusted signature!
|
gpg: WARNING: This key is not certified with a trusted signature!
|
||||||
gpg: There is no indication that the signature belongs to the owner.
|
gpg: There is no indication that the signature belongs to the owner.
|
||||||
|
|||||||
@@ -1,64 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Copyright 2014,2015,2016,2017,2018,2019,2020,2021 Security Onion Solutions, LLC
|
|
||||||
#
|
|
||||||
# This program is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation, either version 3 of the License, or
|
|
||||||
# (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
. /usr/sbin/so-common
|
|
||||||
|
|
||||||
UPDATE_DIR=/tmp/sohotfixapply
|
|
||||||
|
|
||||||
if [ -z "$1" ]; then
|
|
||||||
echo "No tarball given. Please provide the filename so I can run the hotfix"
|
|
||||||
echo "so-airgap-hotfixapply /path/to/sohotfix.tar"
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
if [ ! -f "$1" ]; then
|
|
||||||
echo "Unable to find $1. Make sure your path is correct and retry."
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
echo "Determining if we need to apply this hotfix"
|
|
||||||
rm -rf $UPDATE_DIR
|
|
||||||
mkdir -p $UPDATE_DIR
|
|
||||||
tar xvf $1 -C $UPDATE_DIR
|
|
||||||
|
|
||||||
# Compare some versions
|
|
||||||
NEWVERSION=$(cat $UPDATE_DIR/VERSION)
|
|
||||||
HOTFIXVERSION=$(cat $UPDATE_DIR/HOTFIX)
|
|
||||||
CURRENTHOTFIX=$(cat /etc/sohotfix)
|
|
||||||
INSTALLEDVERSION=$(cat /etc/soversion)
|
|
||||||
|
|
||||||
if [ "$INSTALLEDVERSION" == "$NEWVERSION" ]; then
|
|
||||||
echo "Checking to see if there are hotfixes needed"
|
|
||||||
if [ "$HOTFIXVERSION" == "$CURRENTHOTFIX" ]; then
|
|
||||||
echo "You are already running the latest version of Security Onion."
|
|
||||||
rm -rf $UPDATE_DIR
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
echo "We need to apply a hotfix"
|
|
||||||
copy_new_files
|
|
||||||
echo $HOTFIXVERSION > /etc/sohotfix
|
|
||||||
salt-call state.highstate -l info queue=True
|
|
||||||
echo "The Hotfix $HOTFIXVERSION has been applied"
|
|
||||||
# Clean up
|
|
||||||
rm -rf $UPDATE_DIR
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "This hotfix is not compatible with your current version. Download the latest ISO and run soup"
|
|
||||||
rm -rf $UPDATE_DIR
|
|
||||||
fi
|
|
||||||
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Copyright 2014,2015,2016,2017,2018,2019,2020,2021 Security Onion Solutions, LLC
|
|
||||||
#
|
|
||||||
# This program is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation, either version 3 of the License, or
|
|
||||||
# (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
# Get the latest code
|
|
||||||
rm -rf /tmp/sohotfix
|
|
||||||
mkdir -p /tmp/sohotfix
|
|
||||||
cd /tmp/sohotfix
|
|
||||||
git clone https://github.com/Security-Onion-Solutions/securityonion
|
|
||||||
if [ ! -d "/tmp/sohotfix/securityonion" ]; then
|
|
||||||
echo "I was unable to get the latest code. Check your internet and try again."
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
echo "Looks like we have the code lets create the tarball."
|
|
||||||
cd /tmp/sohotfix/securityonion
|
|
||||||
tar cvf /tmp/sohotfix/sohotfix.tar HOTFIX VERSION salt pillar
|
|
||||||
echo ""
|
|
||||||
echo "Copy /tmp/sohotfix/sohotfix.tar to portable media and then copy it to your airgap manager."
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
@@ -35,6 +35,7 @@ def showUsage(options, args):
|
|||||||
print('')
|
print('')
|
||||||
print(' General commands:')
|
print(' General commands:')
|
||||||
print(' help - Prints this usage information.')
|
print(' help - Prints this usage information.')
|
||||||
|
print(' apply - Apply the firewall state.')
|
||||||
print('')
|
print('')
|
||||||
print(' Host commands:')
|
print(' Host commands:')
|
||||||
print(' listhostgroups - Lists the known host groups.')
|
print(' listhostgroups - Lists the known host groups.')
|
||||||
@@ -66,7 +67,7 @@ def checkDefaultPortsOption(options):
|
|||||||
|
|
||||||
def checkApplyOption(options):
|
def checkApplyOption(options):
|
||||||
if "--apply" in options:
|
if "--apply" in options:
|
||||||
return apply()
|
return apply(None, None)
|
||||||
|
|
||||||
def loadYaml(filename):
|
def loadYaml(filename):
|
||||||
file = open(filename, "r")
|
file = open(filename, "r")
|
||||||
@@ -328,7 +329,7 @@ def removehost(options, args):
|
|||||||
code = checkApplyOption(options)
|
code = checkApplyOption(options)
|
||||||
return code
|
return code
|
||||||
|
|
||||||
def apply():
|
def apply(options, args):
|
||||||
proc = subprocess.run(['salt-call', 'state.apply', 'firewall', 'queue=True'])
|
proc = subprocess.run(['salt-call', 'state.apply', 'firewall', 'queue=True'])
|
||||||
return proc.returncode
|
return proc.returncode
|
||||||
|
|
||||||
@@ -356,7 +357,8 @@ def main():
|
|||||||
"addport": addport,
|
"addport": addport,
|
||||||
"removeport": removeport,
|
"removeport": removeport,
|
||||||
"addhostgroup": addhostgroup,
|
"addhostgroup": addhostgroup,
|
||||||
"addportgroup": addportgroup
|
"addportgroup": addportgroup,
|
||||||
|
"apply": apply
|
||||||
}
|
}
|
||||||
|
|
||||||
code=1
|
code=1
|
||||||
|
|||||||
@@ -33,6 +33,7 @@
|
|||||||
{ "rename": { "field": "data.win.eventdata.user", "target_field": "user.name", "ignore_missing": true } },
|
{ "rename": { "field": "data.win.eventdata.user", "target_field": "user.name", "ignore_missing": true } },
|
||||||
{ "rename": { "field": "data.win.system", "target_field": "winlog", "ignore_missing": true } },
|
{ "rename": { "field": "data.win.system", "target_field": "winlog", "ignore_missing": true } },
|
||||||
{ "rename": { "field": "data.win.eventdata", "target_field": "winlog.event_data", "ignore_missing": true } },
|
{ "rename": { "field": "data.win.eventdata", "target_field": "winlog.event_data", "ignore_missing": true } },
|
||||||
|
{ "rename": { "field": "data", "target_field": "wazuh.data", "ignore_missing": true } },
|
||||||
{ "rename": { "field": "winlog.eventID", "target_field": "winlog.event_id", "ignore_missing": true } },
|
{ "rename": { "field": "winlog.eventID", "target_field": "winlog.event_id", "ignore_missing": true } },
|
||||||
{ "rename": { "field": "predecoder.program_name", "target_field": "process.name", "ignore_missing": true } },
|
{ "rename": { "field": "predecoder.program_name", "target_field": "process.name", "ignore_missing": true } },
|
||||||
{ "rename": { "field": "decoder.name", "target_field": "event.dataset", "ignore_missing": true } },
|
{ "rename": { "field": "decoder.name", "target_field": "event.dataset", "ignore_missing": true } },
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
{ "rename": { "field": "scan.hash", "target_field": "hash", "ignore_missing": true } },
|
{ "rename": { "field": "scan.hash", "target_field": "hash", "ignore_missing": true } },
|
||||||
{ "rename": { "field": "scan.exiftool", "target_field": "exiftool", "ignore_missing": true } },
|
{ "rename": { "field": "scan.exiftool", "target_field": "exiftool", "ignore_missing": true } },
|
||||||
{ "grok": { "if": "ctx.request?.attributes?.filename != null", "field": "request.attributes.filename", "patterns": ["-%{WORD:log.id.fuid}-"], "ignore_failure": true } },
|
{ "grok": { "if": "ctx.request?.attributes?.filename != null", "field": "request.attributes.filename", "patterns": ["-%{WORD:log.id.fuid}-"], "ignore_failure": true } },
|
||||||
|
{ "gsub": { "if": "ctx.request?.attributes?.filename != null", "field": "request.attributes.filename", "pattern": "\/nsm\/strelka\/staging", "replacement": "\/nsm\/strelka\/processed" } },
|
||||||
{ "foreach":
|
{ "foreach":
|
||||||
{
|
{
|
||||||
"if": "ctx.exiftool?.keys !=null",
|
"if": "ctx.exiftool?.keys !=null",
|
||||||
|
|||||||
@@ -65,7 +65,8 @@
|
|||||||
{
|
{
|
||||||
"port": {
|
"port": {
|
||||||
"path_match": "*.port",
|
"path_match": "*.port",
|
||||||
"mapping": {
|
"path_unmatch": "*.data.port",
|
||||||
|
"mapping": {
|
||||||
"type": "integer",
|
"type": "integer",
|
||||||
"fields" : {
|
"fields" : {
|
||||||
"keyword" : {
|
"keyword" : {
|
||||||
@@ -680,6 +681,10 @@
|
|||||||
"redis":{
|
"redis":{
|
||||||
"type":"object",
|
"type":"object",
|
||||||
"dynamic": true
|
"dynamic": true
|
||||||
|
},
|
||||||
|
"wazuh":{
|
||||||
|
"type":"object",
|
||||||
|
"dynamic": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
{%- set ES_USER = salt['pillar.get']('elasticsearch:auth:users:so_elastic_user:user', '') %}
|
{%- set ES_USER = salt['pillar.get']('elasticsearch:auth:users:so_elastic_user:user', '') %}
|
||||||
{%- set ES_PASS = salt['pillar.get']('elasticsearch:auth:users:so_elastic_user:pass', '') %}
|
{%- set ES_PASS = salt['pillar.get']('elasticsearch:auth:users:so_elastic_user:pass', '') %}
|
||||||
output {
|
output {
|
||||||
if [metadata][pipeline] {
|
if "filebeat" in [metadata][pipeline] {
|
||||||
elasticsearch {
|
elasticsearch {
|
||||||
id => "filebeat_modules_metadata_pipeline"
|
id => "filebeat_modules_metadata_pipeline"
|
||||||
pipeline => "%{[metadata][pipeline]}"
|
pipeline => "%{[metadata][pipeline]}"
|
||||||
|
|||||||
BIN
sigs/securityonion-2.3.60-FBPIPELINE.iso.sig
Normal file
BIN
sigs/securityonion-2.3.60-FBPIPELINE.iso.sig
Normal file
Binary file not shown.
Reference in New Issue
Block a user