Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

snort3: bump to 3.5.1.0 #25267

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open

snort3: bump to 3.5.1.0 #25267

wants to merge 2 commits into from

Conversation

Ansuel
Copy link
Member

@Ansuel Ansuel commented Nov 7, 2024

Bump snort3 to 3.5.1.0. Manually refresh the PCRE2 patch to latest
changes.

Signed-off-by: Christian Marangi [email protected]

Bump libdaq3 to 3.0.17 as this new version is required by snort3 latest
versions.

Signed-off-by: Christian Marangi <[email protected]>
@Ansuel
Copy link
Member Author

Ansuel commented Nov 7, 2024

@Neustradamus Since i see you love doing research I'm curious how much people are using downstream patch (and maybe mine) for PCRE2 in package repositories

@graysky2
Copy link
Contributor

graysky2 commented Nov 7, 2024

Had to make two modifications as detailed here. After that, snort seems to be functional.

Recommend merge.

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

@Ansuel
Copy link
Member Author

Ansuel commented Nov 7, 2024

Honestly using pcre2_to_regex doesn't make sense and the compile error should be investigated... Would be good to have repro steps...

@graysky2
Copy link
Contributor

graysky2 commented Nov 7, 2024

@Ansuel - I PM'ed a few of the active snort users in the forums asking them to join the conversation (xxxx and efahl)

Had to make two modifications as detailed here. After that, snort seems to be functional.

To save time looking up that thread, these are the two changes I made to get this working:

  1. In processing the raw rules, I have this step: sed -i 's/pcre:/pcre2:/g' snort.rules
  2. I modified /etc/snort/local.lua as follows:
 detection = { 
        hyperscan_literals = true,
-       pcre_to_regex = true,
+       -- pcre_to_regex = true,
+       pcre2_to_regex = false,
 }

@efahl
Copy link
Contributor

efahl commented Nov 7, 2024

It still seems more appropriate to add wrappers in the API code so that the exported symbol names don't change (and thus the user defined lua-config files would need no modifications). The changes in an underlying library should not propagate into breaking changes in the config files (even if the original implementers of snort made the poor choice of using the underlying library's name in their public API).

@Ansuel
Copy link
Member Author

Ansuel commented Nov 7, 2024

@efahl this might be O.K. for trivial library/program, not for a security intrusion program where something silently changing might produce intrusion not detected.

I feel manual checkup is still needed. But yes needs to se... all the rename from pcre to pcre2 can be skipped but we need to discuss that.

@Neustradamus
Copy link

@Ansuel: Thanks for your PR!

@graysky2 is here :)

A discussion here about pcre vs pcre2:

@graysky2
Copy link
Contributor

graysky2 commented Nov 7, 2024

Upstream is actively working on this and thinking about the user experience (not changing configure files or tweaking rules). I do not know timing thought and since our snort package has not been updated since dropping pcre going back 5 months now, my recommendation is to merge this even though doing so will require users to make a few tweaks.

Bump snort3 to 3.5.1.0. Manually refresh the PCRE2 patch to latest
changes.

Signed-off-by: Christian Marangi <[email protected]>
@Ansuel Ansuel changed the title snort3: bump to 3.5.0.0 snort3: bump to 3.5.1.0 Nov 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants