Skip to content

Commit c2d43e5

Browse files
authored
Merge pull request #13255 from Security-Onion-Solutions/2.4/dev
2.4.80
2 parents dfcf7a4 + 51bb483 commit c2d43e5

File tree

91 files changed

+2461
-198
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

91 files changed

+2461
-198
lines changed

.github/.gitleaks.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -536,7 +536,7 @@ secretGroup = 4
536536

537537
[allowlist]
538538
description = "global allow lists"
539-
regexes = ['''219-09-9999''', '''078-05-1120''', '''(9[0-9]{2}|666)-\d{2}-\d{4}''', '''RPM-GPG-KEY.*''', '''.*:.*StrelkaHexDump.*''', '''.*:.*PLACEHOLDER.*''']
539+
regexes = ['''219-09-9999''', '''078-05-1120''', '''(9[0-9]{2}|666)-\d{2}-\d{4}''', '''RPM-GPG-KEY.*''', '''.*:.*StrelkaHexDump.*''', '''.*:.*PLACEHOLDER.*''', '''ssl_.*password''']
540540
paths = [
541541
'''gitleaks.toml''',
542542
'''(.*?)(jpg|gif|doc|pdf|bin|svg|socket)$''',

DOWNLOAD_AND_VERIFY_ISO.md

+13-11
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
### 2.4.70-20240529 ISO image released on 2024/05/29
1+
### 2.4.80-20240624 ISO image released on 2024/06/25
22

33

44
### Download and Verify
55

6-
2.4.70-20240529 ISO image:
7-
https://download.securityonion.net/file/securityonion/securityonion-2.4.70-20240529.iso
6+
2.4.80-20240624 ISO image:
7+
https://download.securityonion.net/file/securityonion/securityonion-2.4.80-20240624.iso
88

9-
MD5: 8FCCF31C2470D1ABA380AF196B611DEC
10-
SHA1: EE5E8F8C14819E7A1FE423E6920531A97F39600B
11-
SHA256: EF5E781D50D50660F452ADC54FD4911296ECBECED7879FA8E04687337CA89BEC
9+
MD5: 139F9762E926F9CB3C4A9528A3752C31
10+
SHA1: BC6CA2C5F4ABC1A04E83A5CF8FFA6A53B1583CC9
11+
SHA256: 70E90845C84FFA30AD6CF21504634F57C273E7996CA72F7250428DDBAAC5B1BD
1212

1313
Signature for ISO image:
14-
https://github.com/Security-Onion-Solutions/securityonion/raw/2.4/main/sigs/securityonion-2.4.70-20240529.iso.sig
14+
https://github.com/Security-Onion-Solutions/securityonion/raw/2.4/main/sigs/securityonion-2.4.80-20240624.iso.sig
1515

1616
Signing key:
1717
https://raw.githubusercontent.com/Security-Onion-Solutions/securityonion/2.4/main/KEYS
@@ -25,27 +25,29 @@ wget https://raw.githubusercontent.com/Security-Onion-Solutions/securityonion/2.
2525

2626
Download the signature file for the ISO:
2727
```
28-
wget https://github.com/Security-Onion-Solutions/securityonion/raw/2.4/main/sigs/securityonion-2.4.70-20240529.iso.sig
28+
wget https://github.com/Security-Onion-Solutions/securityonion/raw/2.4/main/sigs/securityonion-2.4.80-20240624.iso.sig
2929
```
3030

3131
Download the ISO image:
3232
```
33-
wget https://download.securityonion.net/file/securityonion/securityonion-2.4.70-20240529.iso
33+
wget https://download.securityonion.net/file/securityonion/securityonion-2.4.80-20240624.iso
3434
```
3535

3636
Verify the downloaded ISO image using the signature file:
3737
```
38-
gpg --verify securityonion-2.4.70-20240529.iso.sig securityonion-2.4.70-20240529.iso
38+
gpg --verify securityonion-2.4.80-20240624.iso.sig securityonion-2.4.80-20240624.iso
3939
```
4040

4141
The output should show "Good signature" and the Primary key fingerprint should match what's shown below:
4242
```
43-
gpg: Signature made Wed 29 May 2024 11:40:59 AM EDT using RSA key ID FE507013
43+
gpg: Signature made Mon 24 Jun 2024 02:42:03 PM EDT using RSA key ID FE507013
4444
gpg: Good signature from "Security Onion Solutions, LLC <[email protected]>"
4545
gpg: WARNING: This key is not certified with a trusted signature!
4646
gpg: There is no indication that the signature belongs to the owner.
4747
Primary key fingerprint: C804 A93D 36BE 0C73 3EA1 9644 7C10 60B7 FE50 7013
4848
```
4949

50+
If it fails to verify, try downloading again. If it still fails to verify, try downloading from another computer or another network.
51+
5052
Once you've verified the ISO image, you're ready to proceed to our Installation guide:
5153
https://docs.securityonion.net/en/2.4/installation.html

VERSION

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.4.70
1+
2.4.80

files/firewall/assigned_hostgroups.local.map.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,4 @@ role:
1919
receiver:
2020
standalone:
2121
searchnode:
22-
sensor:
22+
sensor:

pillar/kafka/nodes.sls

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
kafka:
2+
nodes:

pillar/top.sls

+11
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,9 @@ base:
6161
- backup.adv_backup
6262
- minions.{{ grains.id }}
6363
- minions.adv_{{ grains.id }}
64+
- kafka.nodes
65+
- kafka.soc_kafka
66+
- kafka.adv_kafka
6467
- stig.soc_stig
6568

6669
'*_sensor':
@@ -176,6 +179,9 @@ base:
176179
- minions.{{ grains.id }}
177180
- minions.adv_{{ grains.id }}
178181
- stig.soc_stig
182+
- kafka.nodes
183+
- kafka.soc_kafka
184+
- kafka.adv_kafka
179185

180186
'*_heavynode':
181187
- elasticsearch.auth
@@ -220,6 +226,7 @@ base:
220226
- minions.adv_{{ grains.id }}
221227
- stig.soc_stig
222228
- soc.license
229+
- kafka.nodes
223230

224231
'*_receiver':
225232
- logstash.nodes
@@ -232,6 +239,10 @@ base:
232239
- redis.adv_redis
233240
- minions.{{ grains.id }}
234241
- minions.adv_{{ grains.id }}
242+
- kafka.nodes
243+
- kafka.soc_kafka
244+
- kafka.adv_kafka
245+
- soc.license
235246

236247
'*_import':
237248
- secrets

pyci.sh

+9-5
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,16 @@ TARGET_DIR=${1:-.}
1515

1616
PATH=$PATH:/usr/local/bin
1717

18-
if ! which pytest &> /dev/null || ! which flake8 &> /dev/null ; then
19-
echo "Missing dependencies. Consider running the following command:"
20-
echo " python -m pip install flake8 pytest pytest-cov"
18+
if [ ! -d .venv ]; then
19+
python -m venv .venv
20+
fi
21+
22+
source .venv/bin/activate
23+
24+
if ! pip install flake8 pytest pytest-cov pyyaml; then
25+
echo "Unable to install dependencies."
2126
exit 1
2227
fi
2328

24-
pip install pytest pytest-cov
2529
flake8 "$TARGET_DIR" "--config=${HOME_DIR}/pytest.ini"
26-
python3 -m pytest "--cov-config=${HOME_DIR}/pytest.ini" "--cov=$TARGET_DIR" --doctest-modules --cov-report=term --cov-fail-under=100 "$TARGET_DIR"
30+
python3 -m pytest "--cov-config=${HOME_DIR}/pytest.ini" "--cov=$TARGET_DIR" --doctest-modules --cov-report=term --cov-fail-under=100 "$TARGET_DIR"

salt/allowed_states.map.jinja

+10-4
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,8 @@
103103
'utility',
104104
'schedule',
105105
'docker_clean',
106-
'stig'
106+
'stig',
107+
'kafka'
107108
],
108109
'so-managersearch': [
109110
'salt.master',
@@ -125,7 +126,8 @@
125126
'utility',
126127
'schedule',
127128
'docker_clean',
128-
'stig'
129+
'stig',
130+
'kafka'
129131
],
130132
'so-searchnode': [
131133
'ssl',
@@ -159,7 +161,8 @@
159161
'schedule',
160162
'tcpreplay',
161163
'docker_clean',
162-
'stig'
164+
'stig',
165+
'kafka'
163166
],
164167
'so-sensor': [
165168
'ssl',
@@ -190,7 +193,10 @@
190193
'telegraf',
191194
'firewall',
192195
'schedule',
193-
'docker_clean'
196+
'docker_clean',
197+
'kafka',
198+
'elasticsearch.ca',
199+
'stig'
194200
],
195201
'so-desktop': [
196202
'ssl',

salt/ca/files/signing_policies.conf

+14-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
mine_functions:
2-
x509.get_pem_entries: [/etc/pki/ca.crt]
3-
41
x509_signing_policies:
52
filebeat:
63
- minions: '*'
@@ -70,3 +67,17 @@ x509_signing_policies:
7067
- authorityKeyIdentifier: keyid,issuer:always
7168
- days_valid: 820
7269
- copypath: /etc/pki/issued_certs/
70+
kafka:
71+
- minions: '*'
72+
- signing_private_key: /etc/pki/ca.key
73+
- signing_cert: /etc/pki/ca.crt
74+
- C: US
75+
- ST: Utah
76+
- L: Salt Lake City
77+
- basicConstraints: "critical CA:false"
78+
- keyUsage: "digitalSignature, keyEncipherment"
79+
- subjectKeyIdentifier: hash
80+
- authorityKeyIdentifier: keyid,issuer:always
81+
- extendedKeyUsage: "serverAuth, clientAuth"
82+
- days_valid: 820
83+
- copypath: /etc/pki/issued_certs/

salt/common/soup_scripts.sls

+13
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,12 @@ copy_so-yaml_manager_tools_sbin:
5757
- force: True
5858
- preserve: True
5959

60+
copy_so-repo-sync_manager_tools_sbin:
61+
file.copy:
62+
- name: /opt/so/saltstack/default/salt/manager/tools/sbin/so-repo-sync
63+
- source: {{UPDATE_DIR}}/salt/manager/tools/sbin/so-repo-sync
64+
- preserve: True
65+
6066
# This section is used to put the new script in place so that it can be called during soup.
6167
# It is faster than calling the states that normally manage them to put them in place.
6268
copy_so-common_sbin:
@@ -94,6 +100,13 @@ copy_so-yaml_sbin:
94100
- force: True
95101
- preserve: True
96102

103+
copy_so-repo-sync_sbin:
104+
file.copy:
105+
- name: /usr/sbin/so-repo-sync
106+
- source: {{UPDATE_DIR}}/salt/manager/tools/sbin/so-repo-sync
107+
- force: True
108+
- preserve: True
109+
97110
{% else %}
98111
fix_23_soup_sbin:
99112
cmd.run:

salt/common/tools/sbin/so-common

+5
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,11 @@ if ! echo "$PATH" | grep -q "/usr/sbin"; then
3131
export PATH="$PATH:/usr/sbin"
3232
fi
3333

34+
# See if a proxy is set. If so use it.
35+
if [ -f /etc/profile.d/so-proxy.sh ]; then
36+
. /etc/profile.d/so-proxy.sh
37+
fi
38+
3439
# Define a banner to separate sections
3540
banner="========================================================================="
3641

salt/common/tools/sbin/so-image-common

+2-1
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ container_list() {
5050
"so-idh"
5151
"so-idstools"
5252
"so-influxdb"
53+
"so-kafka"
5354
"so-kibana"
5455
"so-kratos"
5556
"so-logstash"
@@ -64,7 +65,7 @@ container_list() {
6465
"so-strelka-manager"
6566
"so-suricata"
6667
"so-telegraf"
67-
"so-zeek"
68+
"so-zeek"
6869
)
6970
else
7071
TRUSTED_CONTAINERS=(

salt/common/tools/sbin/so-tcpreplay renamed to salt/common/tools/sbin_jinja/so-tcpreplay

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
. /usr/sbin/so-common
1111
. /usr/sbin/so-image-common
1212

13-
REPLAYIFACE=${REPLAYIFACE:-$(lookup_pillar interface sensor)}
13+
REPLAYIFACE=${REPLAYIFACE:-"{{salt['pillar.get']('sensor:interface', '')}}"}
1414
REPLAYSPEED=${REPLAYSPEED:-10}
1515

1616
mkdir -p /opt/so/samples

salt/docker/defaults.yaml

+9
Original file line numberDiff line numberDiff line change
@@ -187,3 +187,12 @@ docker:
187187
custom_bind_mounts: []
188188
extra_hosts: []
189189
extra_env: []
190+
'so-kafka':
191+
final_octet: 88
192+
port_bindings:
193+
- 0.0.0.0:9092:9092
194+
- 0.0.0.0:9093:9093
195+
- 0.0.0.0:8778:8778
196+
custom_bind_mounts: []
197+
extra_hosts: []
198+
extra_env: []

salt/docker/init.sls

+16-16
Original file line numberDiff line numberDiff line change
@@ -20,41 +20,41 @@ dockergroup:
2020
dockerheldpackages:
2121
pkg.installed:
2222
- pkgs:
23-
- containerd.io: 1.6.21-1
24-
- docker-ce: 5:24.0.3-1~debian.12~bookworm
25-
- docker-ce-cli: 5:24.0.3-1~debian.12~bookworm
26-
- docker-ce-rootless-extras: 5:24.0.3-1~debian.12~bookworm
23+
- containerd.io: 1.6.33-1
24+
- docker-ce: 5:26.1.4-1~debian.12~bookworm
25+
- docker-ce-cli: 5:26.1.4-1~debian.12~bookworm
26+
- docker-ce-rootless-extras: 5:26.1.4-1~debian.12~bookworm
2727
- hold: True
2828
- update_holds: True
2929
{% elif grains.oscodename == 'jammy' %}
3030
dockerheldpackages:
3131
pkg.installed:
3232
- pkgs:
33-
- containerd.io: 1.6.21-1
34-
- docker-ce: 5:24.0.2-1~ubuntu.22.04~jammy
35-
- docker-ce-cli: 5:24.0.2-1~ubuntu.22.04~jammy
36-
- docker-ce-rootless-extras: 5:24.0.2-1~ubuntu.22.04~jammy
33+
- containerd.io: 1.6.33-1
34+
- docker-ce: 5:26.1.4-1~ubuntu.22.04~jammy
35+
- docker-ce-cli: 5:26.1.4-1~ubuntu.22.04~jammy
36+
- docker-ce-rootless-extras: 5:26.1.4-1~ubuntu.22.04~jammy
3737
- hold: True
3838
- update_holds: True
3939
{% else %}
4040
dockerheldpackages:
4141
pkg.installed:
4242
- pkgs:
43-
- containerd.io: 1.4.9-1
44-
- docker-ce: 5:20.10.8~3-0~ubuntu-focal
45-
- docker-ce-cli: 5:20.10.5~3-0~ubuntu-focal
46-
- docker-ce-rootless-extras: 5:20.10.5~3-0~ubuntu-focal
43+
- containerd.io: 1.6.33-1
44+
- docker-ce: 5:26.1.4-1~ubuntu.20.04~focal
45+
- docker-ce-cli: 5:26.1.4-1~ubuntu.20.04~focal
46+
- docker-ce-rootless-extras: 5:26.1.4-1~ubuntu.20.04~focal
4747
- hold: True
4848
- update_holds: True
4949
{% endif %}
5050
{% else %}
5151
dockerheldpackages:
5252
pkg.installed:
5353
- pkgs:
54-
- containerd.io: 1.6.21-3.1.el9
55-
- docker-ce: 24.0.4-1.el9
56-
- docker-ce-cli: 24.0.4-1.el9
57-
- docker-ce-rootless-extras: 24.0.4-1.el9
54+
- containerd.io: 1.6.33-3.1.el9
55+
- docker-ce: 3:26.1.4-1.el9
56+
- docker-ce-cli: 1:26.1.4-1.el9
57+
- docker-ce-rootless-extras: 26.1.4-1.el9
5858
- hold: True
5959
- update_holds: True
6060
{% endif %}

salt/docker/soc_docker.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -101,3 +101,4 @@ docker:
101101
multiline: True
102102
forcedType: "[]string"
103103
so-zeek: *dockerOptions
104+
so-kafka: *dockerOptions

salt/elasticfleet/enabled.sls

+12-4
Original file line numberDiff line numberDiff line change
@@ -27,28 +27,36 @@ wait_for_elasticsearch_elasticfleet:
2727
so-elastic-fleet-auto-configure-logstash-outputs:
2828
cmd.run:
2929
- name: /usr/sbin/so-elastic-fleet-outputs-update
30-
- retry: True
30+
- retry:
31+
attempts: 4
32+
interval: 30
3133
{% endif %}
3234
3335
# If enabled, automatically update Fleet Server URLs & ES Connection
3436
{% if ELASTICFLEETMERGED.config.server.enable_auto_configuration and grains.role not in ['so-fleet'] %}
3537
so-elastic-fleet-auto-configure-server-urls:
3638
cmd.run:
3739
- name: /usr/sbin/so-elastic-fleet-urls-update
38-
- retry: True
40+
- retry:
41+
attempts: 4
42+
interval: 30
3943
{% endif %}
4044
4145
# Automatically update Fleet Server Elasticsearch URLs & Agent Artifact URLs
4246
{% if grains.role not in ['so-fleet'] %}
4347
so-elastic-fleet-auto-configure-elasticsearch-urls:
4448
cmd.run:
4549
- name: /usr/sbin/so-elastic-fleet-es-url-update
46-
- retry: True
50+
- retry:
51+
attempts: 4
52+
interval: 30
4753
4854
so-elastic-fleet-auto-configure-artifact-urls:
4955
cmd.run:
5056
- name: /usr/sbin/so-elastic-fleet-artifacts-url-update
51-
- retry: True
57+
- retry:
58+
attempts: 4
59+
interval: 30
5260
5361
{% endif %}
5462

0 commit comments

Comments
 (0)