95 Commits

Author SHA1 Message Date
John Audia
4008028a99 snort3: update to 3.10.0.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.10.0.0

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: x86/64-glibc (Intel N150)

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-11-28 09:45:55 +01:00
John Audia
facfe95365 snort3: update to 3.9.7.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.9.7.0

% snort --version

   ,,_     -*> Snort++ <*-
  o"  )~   Version 3.9.7.0
   ''''    By Martin Roesch & The Snort Team
           http://snort.org/contact#team
           Copyright (C) 2014-2025 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using DAQ version 3.0.22
           Using Vectorscan version 5.4.12 2025-11-02
           Using libpcap version 1.10.5 (with TPACKET_V3)
           Using LuaJIT version 2.1.0-beta3
           Using LZMA version 5.8.1
           Using OpenSSL 3.5.4 30 Sep 2025
           Using PCRE2 version 10.46 2025-08-27
           Using ZLIB version 1.3.1

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: x86/64-glibc

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-11-07 19:36:24 +02:00
John Audia
69117bf2d5 snort3: run as regular user rather than as root
Running as a dedicated user is better from both a security and an
isolation perspective than running as root.

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-10-17 22:31:54 +03:00
John Audia
950e2856e8 snort3: inform user of optional dependencies
Add a comment to the package description to inform users that the build
system will not automatically pick gperftools-runtime and vectorscan-
runtime when building from source.

References to performance benefits of using them:
c1b4e80825
b6b2d1e305

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-10-17 06:49:05 +03:00
John Audia
41e25e864e snort3: update to 3.9.6.0
Release notes: https://github.com/snort3/snort3/releases/tag/3.9.6.0

% snort --version

   ,,_     -*> Snort++ <*-
  o"  )~   Version 3.9.6.0
   ''''    By Martin Roesch & The Snort Team
           http://snort.org/contact#team
           Copyright (C) 2014-2025 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using DAQ version 3.0.21
           Using Vectorscan version 5.4.12 2025-10-06
           Using libpcap version 1.10.5 (with TPACKET_V3)
           Using LuaJIT version 2.1.0-beta3
           Using LZMA version 5.8.1
           Using OpenSSL 3.6.0 1 Oct 2025
           Using PCRE2 version 10.46 2025-08-27
           Using ZLIB version 1.3.1

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: x86/64-glibc

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-10-17 06:49:05 +03:00
John Audia
39f8295457 snort3: fix typo preventing vectorscan detection
Since vectorscan-runtime was dropped in the following commit, need to
replace references to it with just vectorscan in order to compile
snort3 against it: 8a3c7a69e6

Without this change, even having CONFIG_PACKAGE_vectorscan=y in the
.config will result in a failure to compile against it, e.g:

...
Feature options:
    DAQ Modules:    Dynamic
    libatomic:      User-specified
    Hyperscan:      OFF
...

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-10-17 06:49:05 +03:00
Josef Schlehofer
261d1b0948 snort3: update dependencies after package renames
The gperftools and vectorscan packages have been simplified by removing
their -runtime and -headers splits. Update snort3 to use the new package
names.

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2025-10-11 14:53:01 +02:00
Josef Schlehofer
02f78bc30a snort3: enable/disable options based on package availability
This simplifies checks enabling/disabling features, if packages are present
instead of having checks for specific architectures.

TCMALLOC_LIBRARIES is removed as it's auto-detected, unlike vectorscan
which requires explicit HS_INCLUDE_DIRS.

Fixes: 126364e105 ("snort3: refactor architecture-specific dependencies and CMake options")

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2025-10-10 08:17:38 +02:00
John Audia
e4bdefe1c2 snort3: depend on libtirpc only for musl builds
The libtirpc package is only needed when building with musl, as glibc
includes the required RPC functionality. This change makes libtirpc a
conditional dependency and adjusts the build flags accordingly.

Building with x86_64-glibc:
...
Feature options:
    DAQ Modules:    Dynamic
    libatomic:      User-specified
    Hyperscan:      ON
    ICONV:          ON
    Libunwind:      OFF
    LZMA:           ON
    RPC DB:         Built-in
    SafeC:          OFF
    TCMalloc:       ON
    JEMalloc:       OFF
    UUID:           ON
    NUMA:           OFF
    LibML:          OFF
...

Building with aarch64_cortex-a76_musl:
...
Feature options:
    DAQ Modules:    Dynamic
    libatomic:      User-specified
    Hyperscan:      ON
    ICONV:          ON
    Libunwind:      OFF
    LZMA:           ON
    RPC DB:         TIRPC
    SafeC:          OFF
    TCMalloc:       ON
    JEMalloc:       OFF
    UUID:           ON
    NUMA:           OFF
    LibML:          OFF
...

Build system: x86/64
Build-tested: x86/64-glibc, bcm27flogic/xiaomi_redmi-router-ax6000-ubootmod (for musl)
Run-tested: x86/64-glibc

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-10-08 07:47:24 +02:00
Josef Schlehofer
126364e105 snort3: refactor architecture-specific dependencies and CMake options
1. Enabled hyperscan/vectorscan together with adding dependency only for x86_64 and aarch64.
2. Disabled tmalloc (from gperftools package) for powerpc and mips.

By doing this refactor, snort3 is going to be available for more OpenWrt devices
(as it was in the past) as currently it was compiled only for x86_x64 and aarch64 by mistake.

Fixes: 257e2fc38a ("snort3: fix logic in gpertools-runtime depends")

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2025-10-05 12:08:59 +02:00
John Audia
304a18d4b5 snort3: add patch to unambiguously show vectorscan
When snort is run with the --version option, it advertises components'
versions in the output. Add a patch to modify the output to clearly
show vectorscan is in use.

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-09-20 06:52:48 +03:00
John Audia
8d81f0e2ee snort3: replace hyperscan with vectorscan in deps
* Replacement of hyperscan-runtime reference with vectorscan-runtime
* Added support for all aarch64 targets which I believe is exhaustive

For x86 and x86/64, I found that vectorscan is truly a drop-in
replacement for hyperscan as assessed by speedtests with snort3 running
on my Intel N150 PC. CPU load during the test with each condition was
nearly saturating on a single core for both cases on a symmetrical
Gbps line.

Using: https://www.waveform.com/tools/bufferbloat in IPS mode:
  Download speed w/ hyperscan: 950-960 Mbit/s (n=2)
  Download speed w/ vectorscan: 942-960 Mbit/s (n=2)

Using: https://www.speedtest.net in IPS mode:
  Download speed w/ hyperscan: 996-1002 Mbit/s (n=2)
  Download speed w/ vectorscan: 993-988 Mbit/s (n=2)

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: x86/64-glibc (Intel N150 based box running snort3)

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-09-20 06:52:48 +03:00
John Audia
0d643c23dd snort3: remove hyperscan specific patch
Drop 100-remove-HAVE_HS_COMPILE_LIT-to-work-around-upstream-b.patch as
it was only needed to fix the build against hyperscan. Vectorscan
builds fine without it.

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-09-20 06:52:48 +03:00
John Audia
2bbca5dfa0 snort3: replace complex sed calls with patch
Simplification of Makefile: replace complex sed calls with a patch to
improve readability. This commit also renames an existing patch.

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-09-10 23:16:38 +03:00
John Audia
87d0da8aa2 snort3: clean-up Makefile
Simplification of Makefile: remove line splits to increase readability.

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-09-10 23:16:38 +03:00
John Audia
8914929466 snort3: switch from git proto to tarballs
Use upstream tarballs for source rather than using git. If we ever need
to build from git we can cherry pick and make a patch. This gives a
cleaner Makefile and faster build.

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-09-10 23:16:38 +03:00
John Audia
a75e0a6db9 snort3: update to 3.9.5.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.9.5.0

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: x86/64-glibc

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-09-07 23:15:29 +03:00
John Audia
257e2fc38a snort3: fix logic in gpertools-runtime depends
The logic in e57cc9898a was flawed causing
gperftools-runtime to fail to get detected when building resulting in:
...
ninja: Entering directory `/scratch/union/build_dir/target-x86_64_glibc/snort3-3.9.1.0'
ninja: error: '/scratch/union/staging_dir/target-x86_64_glibc/usr/lib/libtcmalloc.so', needed by 'src/snort', missing and no known rule to make it
make[2]: *** [Makefile:161: /scratch/union/build_dir/target-x86_64_glibc/snort3-3.9.1.0/.built] Error 1

It was missed due testing in build root that already had gperftools-runtime
built only discovered when building from a clean build root.

This commit fixes this flaw.

Test:
cat <<EOF > .config
CONFIG_TARGET_x86=y
CONFIG_TARGET_x86_64=y
CONFIG_TARGET_x86_64_DEVICE_generic=y
CONFIG_PACKAGE_snort3=y
EOF

make defconfig
grep gperftools-run .config
CONFIG_PACKAGE_gperftools-runtime=y

cat <<EOF > .config
CONFIG_TARGET_qoriq=y
CONFIG_TARGET_qoriq_generic=y
CONFIG_TARGET_qoriq_generic_DEVICE_watchguard_firebox-m300=y
CONFIG_PACKAGE_snort3=y
EOF

make defconfig
grep gperftools-run .config

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-09-07 20:02:06 +03:00
John Audia
f8ace6e398 snort3: update to 3.9.3.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.9.3.0

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: x86/64-glibc (Intel N150 based box)

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-08-22 12:52:09 +03:00
John Audia
e57cc9898a snort3: remove gperftools dep for mips* and powerpc
Add conditional to disable gperftools-runtime depends for powerpc and mips due to inability
to compile introduced with 7345b73c30

Co-authored-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Signed-off-by: John Audia <therealgraysky@proton.me>
2025-07-18 12:29:11 +02:00
John Audia
8ddf8ac209 snort3: update to 3.9.1.0
hangelog: https://github.com/snort3/snort3/releases/tag/3.9.1.0

% # snort --version

   ,,_     -*> Snort++ <*-
  o"  )~   Version 3.9.1.0
   ''''    By Martin Roesch & The Snort Team
           http://snort.org/contact#team
           Copyright (C) 2014-2025 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using DAQ version 3.0.20
           Using Hyperscan version 5.4.2 2025-06-30
           Using libpcap version 1.10.5 (with TPACKET_V3)
           Using LuaJIT version 2.1.0-beta3
           Using LZMA version 5.6.2
           Using OpenSSL 3.5.0 8 Apr 2025
           Using PCRE2 version 10.42 2022-12-11
           Using ZLIB version 1.3.1

Build system: x86/64
Build-tested: x86/64
Run-tested: x86/64

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-07-07 11:22:39 +03:00
John Audia
097a97daeb snort3: update to 3.8.1.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.8.1.0

   ,,_     -*> Snort++ <*-
  o"  )~   Version 3.8.1.0
   ''''    By Martin Roesch & The Snort Team
           http://snort.org/contact#team
           Copyright (C) 2014-2025 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using DAQ version 3.0.19
           Using Hyperscan version 5.4.2 2025-05-27
           Using libpcap version 1.10.5 (with TPACKET_V3)
           Using LuaJIT version 2.1.0-beta3
           Using LZMA version 5.6.2
           Using OpenSSL 3.5.0 8 Apr 2025
           Using PCRE2 version 10.42 2022-12-11
           Using ZLIB version 1.3.1

Build system: x86/64
Build-tested: x86/64
Run-tested: x86/64

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-06-02 13:45:34 +02:00
Josef Schlehofer
bd7aa2ac44 snort3: drop upstreamed patch
This patch is wrongly rebased and applied twice as
the same change might be possible and it does not break anything.
Since that, the patch is still being refreshed and included in
this repository.

No need as the patch is already included in the snort3 repository:
70b811ca11

Drop it once for all. :-)

Fixes: 65f6fee7c0 ("snort3: update to 3.1.84.0")
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2025-06-02 13:24:39 +02:00
John Audia
aa89d293db snort3: update to 3.7.1.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.7.1.0

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-03-20 21:26:59 +02:00
John Audia
a695cad9e8 snort3: update to 3.7.0.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.7.0.0

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-03-16 10:10:26 +01:00
John Audia
efe5c7cd29 snort3: update to 3.6.3.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.6.3.0

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-02-09 21:37:14 +08:00
John Audia
21c63a67e3 snort3: update to 3.6.2.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.6.2.0

% snort --version

   ,,_     -*> Snort++ <*-
  o"  )~   Version 3.6.2.0
   ''''    By Martin Roesch & The Snort Team
           http://snort.org/contact#team
           Copyright (C) 2014-2024 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using DAQ version 3.0.18
           Using Hyperscan version 5.4.2 2025-01-28
           Using libpcap version 1.10.5 (with TPACKET_V3)
           Using LuaJIT version 2.1.0-beta3
           Using LZMA version 5.6.2
           Using OpenSSL 3.0.15 3 Sep 2024
           Using PCRE2 version 10.42 2022-12-11
           Using ZLIB version 1.3.1

Signed-off-by: John Audia <therealgraysky@proton.me>
2025-01-30 19:19:00 +02:00
Eric Fahlgren
a636371c5e snort3: improve date filtering in report
- Take advantage of bug fix in jsonfilter to get rid of array hack, should
   improve memory footprint quite a bit

 - Implement substring matching in dates so you can collect data for a specific
   day, hour or run bin reports for histograms

 - Report title now contains specified date range, footer percentages

Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
2024-06-25 10:03:07 -07:00
John Audia
7345b73c30 snort3: build against gperftools for more than x86
Other targets should be able to build against gperftools and
realize speed and efficiency gains.

Build system: x86/64
Build-tested: bcm27xx/bcm2712
Run-tested: bcm27xx/bcm2712

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-05-16 15:35:55 -07:00
Eric Fahlgren
c8b13adaa0 snort3: fix bug with unset variable
- Parameter not set in two places:
    /usr/bin/snort-mgr: eval: line 125: options: parameter not set

Reported-by: @klingon888
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
2024-04-27 12:28:14 +02:00
Christian Marangi
a314f26e99 snort3: add patch and move to PCRE2
Add experimental patch and move package to PCRE2 as PCRE is EOL and
won't receive any security updates anymore.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-04-27 12:27:02 +02:00
Rosen Penev
47d91a4c09 snort3: use local tarballs
Avoids having a bad tarball name with just the version.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-04-23 18:59:19 -07:00
John Audia
65f6fee7c0 snort3: update to 3.1.84.0
1. Update to latest version
2. Remove redundant section in Makefile

Changelog: https://github.com/snort3/snort3/releases/tag/3.1.84.0

   ,,_     -*> Snort++ <*-
  o"  )~   Version 3.1.84.0
   ''''    By Martin Roesch & The Snort Team
           http://snort.org/contact#team
           Copyright (C) 2014-2024 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using DAQ version 3.0.14
           Using LuaJIT version 2.1.0-beta3
           Using OpenSSL 3.0.13 30 Jan 2024
           Using libpcap version 1.10.4 (with TPACKET_V3)
           Using PCRE version 8.45 2021-06-15
           Using ZLIB version 1.3.1
           Using Hyperscan version 5.4.2 2024-04-10
           Using LZMA version 5.4.6

Build system: x86/64
Build-tested: x86/64/AMD Cezanne
Run-tested: x86/64/AMD Cezanne

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-04-13 14:06:47 -07:00
Eric Fahlgren
4ce2d741c6 snort3: fix issue caused by ucode semantics change
A recent change in the ucode interpeter caused a failure when using
the 'in' operator.
be767ae197

Reported in a forum post by @graysky2.
https://forum.openwrt.org/t/194218/28

Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
2024-04-13 13:22:40 +08:00
Hauke Mehrtens
50dffb7424 snort3: Fix compilation with GCC 13
This fixes a compile problem with GCC 13.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-03-24 10:15:42 +01:00
John Audia
fdebb16619 snort3: update to 3.1.82.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.1.82.0

Removed patches/010-gcc13.patch

   ,,_     -*> Snort++ <*-
  o"  )~   Version 3.1.82.0
   ''''    By Martin Roesch & The Snort Team
           http://snort.org/contact#team
           Copyright (C) 2014-2024 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using DAQ version 3.0.14
           Using LuaJIT version 2.1.0-beta3
           Using OpenSSL 3.0.13 30 Jan 2024
           Using libpcap version 1.10.4 (with TPACKET_V3)
           Using PCRE version 8.45 2021-06-15
           Using ZLIB version 1.3.1
           Using Hyperscan version 5.4.2 2024-03-06
           Using LZMA version 5.4.6

Build system: x86/64
Build-tested: x86/64/AMD Cezanne
Run-tested: x86/64/AMD Cezanne

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-03-19 13:42:01 +01:00
John Audia
4295bd7f45 snort3: build against gperftools-runtime
Should provide increases in snort3 performance thanks to thread-
caching malloc provided by gperftools.  Avg CPU usage is down.
Another user reported higher throughput achieved with snort3
compiled with this on samba transfers on system with CPU-limited
snort3 performance.[1]

1. https://forum.openwrt.org/t/some-help-with-a-makefile-gperftools/165656/22

Build system: x86/64
Build-tested: x86/64/AMD Cezanne
Run-tested: x86/64/AMD Cezanne

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-02-24 20:17:51 -08:00
John Audia
a7b5bfbfb7 snort3: update to 3.1.81.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.1.81.0

   ,,_     -*> Snort++ <*-
  o"  )~   Version 3.1.81.0
   ''''    By Martin Roesch & The Snort Team
           http://snort.org/contact#team
           Copyright (C) 2014-2024 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using DAQ version 3.0.14
           Using LuaJIT version 2.1.0-beta3
           Using OpenSSL 3.0.13 30 Jan 2024
           Using libpcap version 1.10.4 (with TPACKET_V3)
           Using PCRE version 8.45 2021-06-15
           Using ZLIB version 1.3.1
           Using Hyperscan version 5.4.2 2024-02-16
           Using LZMA version 5.4.6

Build system: x86/64
Build-tested: x86/64/AMD Cezanne
Run-tested: x86/64/AMD Cezanne

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-02-24 12:14:43 -08:00
John Audia
a7f820077f snort3: build against hyperscan
Increases snort's IPS fast pattern matching by 2x (compared to
the ac_full engine) and 3x (compared to ac_bfna).  This is most
noticeable for users of large rules sets and when doing deep flow
inspection.

For more see: https://blog.snort.org/2020/09/snort-3-hyperscan-.html

Build system: x86/64
Build-tested: x86/64/AMD Cezanne
Run-tested: x86/64/AMD Cezanne

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-02-20 13:50:22 +08:00
Eric Fahlgren
db58c9cd81 snort3: clean up ucode usage
- Add missing 'ucode' package dependency
 - Proto-ify the ConfigItem objects
 - Fix indentation and tab usage

Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
2024-02-14 12:53:28 +08:00
Eric Fahlgren
b94c6dd37d snort3: improve script reliability
- Enable missing variable checking by default
 - Explicitly check variables are defined in all 'rm' commands

Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
2024-02-07 14:01:11 -08:00
Eric Fahlgren
203e9413e2 snort3: finish up several incomplete capabilities
Reporting
 - Use json alert data for 10x speed improvement in report generation
 - Include both gid and sid, plus packet direction in report output
 - Add by-date incident filtering
 - Add verbose mode which displays actual rules triggered and their source
 - Attempt to look up host names from IPs in verbose mode
 - Clean up display of port number involved in incidents

Rules
 - Complete downloader for subscription rules using oinkcode (only tested
   with snort.org's "free" tier subscription)
 - Auto-detect multiple rules files and include them in lua 'ips.rules'
 - Add '--backup' option to copy out current rules before installing new
 - Add '--persistent' option to 'snort-rules', storing in persistent location

CLI interface
 - Completely rework command line option parsing in all user scripts
 - Allow options and commands to be in any order on command line
 - Add long-form names for all options ('--help' for '-h' and so on)
 - Detect errors properly in options, enhance help pages

Bug fixes
 - Use 'mkdir -p' on all directory creation
 - Use proper tmp directory from 'snort.snort.temp_dir' everywhere

Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
2024-02-04 16:21:11 -08:00
John Audia
0b2728b2f2 snort3: update to 3.1.78.0
Upstream bump

   ,,_     -*> Snort++ <*-
  o"  )~   Version 3.1.78.0
   ''''    By Martin Roesch & The Snort Team
           http://snort.org/contact#team
           Copyright (C) 2014-2024 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using DAQ version 3.0.14
           Using LuaJIT version 2.1.0-beta3
           Using OpenSSL 3.0.12 24 Oct 2023
           Using libpcap version 1.10.4 (with TPACKET_V3)
           Using PCRE version 8.45 2021-06-15
           Using ZLIB version 1.3
           Using Hyperscan version 5.4.2 2024-01-15
           Using LZMA version 5.4.4

Build system: x86/64
Build-tested: x86/64/AMD Cezanne
Run-tested: x86/64/AMD Cezanne

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-01-19 14:40:54 +01:00
Eric Fahlgren
e05835deac snort3: add missing action-override option
Allow use of rules as-defined, and don't override their actions.  This
is generally the best way to use the ruleset, and overriding their
actions should only be undertaken when you fully understand how it
affects their use.

Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
2024-01-02 15:29:50 -08:00
John Audia
224a3816d8 snort3: compile with lzma support
This PR adds the ability of snort to process rules that target
swf and pdf files requiring lzma decompression to look for
malicious payloads therein.  This change only increases the size
of the snort3 executable by a fraction of a KB and the added
dependency of liblzma (based on currently offered 5.4.4-1) is
only a 169 KB shared object.  Based on CPU requirements of snort,
x86 users likely represent the majority user-base and space their
rootfs is not an issue as it may be for lower-powered SoCs.

Size of snort3-3.1.76.0-2: 7354403 bytes
Size of snort3-3.1.76.0-3: 7354435 bytes

Build system: x86/64
Build-tested: x86/64/AMD Cezanne
Run-tested: x86/64/AMD Cezanne

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-01-02 15:29:11 -08:00
John Audia
5cdf7d5883 snort3: update to 3.1.77.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.1.77.0

   ,,_     -*> Snort++ <*-
  o"  )~   Version 3.1.77.0
   ''''    By Martin Roesch & The Snort Team
           http://snort.org/contact#team
           Copyright (C) 2014-2023 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using DAQ version 3.0.13
           Using LuaJIT version 2.1.0-beta3
           Using OpenSSL 3.0.12 24 Oct 2023
           Using libpcap version 1.10.4 (with TPACKET_V3)
           Using PCRE version 8.45 2021-06-15
           Using ZLIB version 1.3
           Using Hyperscan version 5.4.2 2023-12-20

Build system: x86/64
Build-tested: x86/64/AMD Cezanne
Run-tested: x86/64/AMD Cezanne

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-12-23 15:06:44 +02:00
Eric Fahlgren
0d2dac8792 snort3: add missing config include and general cleanup
- Delete legacy configuration files homenet.lua and local.lua
- Add snort config 'include' to allow user customizations in the lua
- Enhance 'check' to test generated nftables file
- Suppress inclusion of rules file when doing silent config check
- Suppress warnings on configuration check unless '-v'erbose
- Replace text logging with json logging to reduce footprint and make reports easier
- Fix some typos in the snort.uc template
- Fix up some error messages suggesting solutions

Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
2023-12-16 22:08:49 +08:00
John Audia
a2e6d4910b snort3: add myself as a co-maintainer
Michael invited me to co-maintain[1].

1. https://github.com/openwrt/packages/pull/22830#issuecomment-1848997029

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-12-13 14:14:05 +08:00
John Audia
71b10bc689 snort3: update to 3.1.76.0
Changelog: https://github.com/snort3/snort3/releases/tag/3.1.76.0

   ,,_     -*> Snort++ <*-
  o"  )~   Version 3.1.76.0
   ''''    By Martin Roesch & The Snort Team
           http://snort.org/contact#team
           Copyright (C) 2014-2023 Cisco and/or its affiliates. All rights reserved.
           Copyright (C) 1998-2013 Sourcefire, Inc., et al.
           Using DAQ version 3.0.13
           Using LuaJIT version 2.1.0-beta3
           Using OpenSSL 3.0.12 24 Oct 2023
           Using libpcap version 1.10.4 (with TPACKET_V3)
           Using PCRE version 8.45 2021-06-15
           Using ZLIB version 1.3
           Using Hyperscan version 5.4.2 2023-12-03

Build system: x86/64
Build-tested: x86/64/AMD Cezanne
Run-tested: x86/64/AMD Cezanne

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-12-08 18:53:47 +08:00
Eric Fahlgren
f21dffc2a3 snort3: complete rework
- Add many options to config file.
  - Move rules and generated snort.lua to /tmp.
  - Add script for downloading rules.
  - Add preliminary reporting capabilites.

Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
2023-12-03 13:53:58 -08:00