Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Snort Updated to 2.7

    Scheduled Pinned Locked Moved pfSense Packages
    65 Posts 17 Posters 48.1k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      shaddow501
      last edited by

      Hi Guys

      I have started to work with snort version-2.8.0.1, since I didnt like much the 2.7.0.1, i have made a new package based on the snort 2.7.0.1 but with files of the new last version i mention above.
      In the terminal ssh software i just pkg_delete the old version and did pkg_add to my version.

      the new version seem to work so far, but i still not have much information of how stable it is.
      It also require a change in the snort.inc file.

      anyone that wish to try it may contact me

      1 Reply Last reply Reply Quote 0
      • T
        trendchiller
        last edited by

        Perhaps give scott a link if it runs fine ;-)

        1 Reply Last reply Reply Quote 0
        • AhnHELA
          AhnHEL
          last edited by

          Shaddow501, I've been studying the snort.inc file, and trust me I'm not in your league at all in understanding it, nor would I have been able to fix it the way you did previously when the preprocessors were causing Snort to crash.

          But I did notice that some alerts werent properly being set off.  For instance, ICMP pings to my WAN IP werent setting off a Snort Alert even though I have the same ICMP rules enabled as I did with 2.6

          Then I noticed that you had the preprocessor flow enabled in the snort.inc file.  According to this site http://cvs.snort.org/viewcvs.cgi/snort/doc/README.stream5?rev=1.2

          The Stream5 preprocessor is a target-based TCP reassembly module
          for Snort.  It is intended to replace both the stream4 and flow
          preprocessors, and it is capable of tracking sessions for both
          TCP and UDP.  With Stream5, the rule 'flow' and 'flowbits' keywords
          are usable with TCP as well as UDP traffic.

          Since Stream5 replaces stream4, both cannot be used simultaneously.
          Remove the stream4 and flow configurations from snort.conf when the
          stream5 configuration is added.

          I commented out the flow preprocessor and I'm now seeing ICMP ping alerts again.

          AhnHEL (Angel)

          1 Reply Last reply Reply Quote 0
          • S
            shaddow501
            last edited by

            Hi OnHeL

            Well you are right, with the last version of snort 2.8.0.1 i did disable the flow preprocessor, i did compile the 2.8.0.1 that will also support stream4udp packets so it does work with both stream5 and stream4 configuration (but will not work together, you must select if you want to use stram4 or stream5 option)

            With the both versions (2.7.0.1 & 2.8.0.1) i still have a problem after some time  (could be hours and could be minutes) snort exit with this message:
            " (snort), uid 0: exited on signal 11 (core dumped)"  I havent got any clue what could cause it and looking into web (google and such) didnt resolved much information…

            I am curious if it is just me that get this error or some of you do get it as well, if someone have got any clue how to debug it and  see what cause this fault i could have a bit more progress, but as for now i am kinda stuck with lack of information.

            I did try snort with almost all the working methods but again i do get the message and snort stop doing what it should be doing (blocking :))

            anyone?

            1 Reply Last reply Reply Quote 0
            • C
              chazers18
              last edited by

              i have a Similar problem that some of the others are having with Snort

              version of PFsense

              1.2-RC2
              built on Fri Aug 17 17:46:06 EDT 2007

              Some of the goofy errors that i am getting with snort

              Dec 19 07:54:49 SnortStartup[63790]: Ram free BEFORE starting Snort: 73M – Ram free AFTER starting Snort: 73M -- Mode ac-std -- Snort memory usage:
              Dec 19 07:54:43 kernel: xl0: promiscuous mode disabled
              Dec 19 07:54:32 snort[63624]: Daemon parent exiting
              Dec 19 07:54:32 snort[63624]: Daemon parent exiting
              Dec 19 07:54:32 snort[63638]: Daemon initialized, signaled parent pid: 63624
              Dec 19 07:54:32 snort[63638]: Daemon initialized, signaled parent pid: 63624
              Dec 19 07:54:32 snort[63638]: Writing PID "63638" to file "/var/run//snort_xl0.pid"
              Dec 19 07:54:32 snort[63638]: Writing PID "63638" to file "/var/run//snort_xl0.pid"
              Dec 19 07:54:32 snort[63638]: PID path stat checked out ok, PID path set to /var/run/
              Dec 19 07:54:32 snort[63638]: PID path stat checked out ok, PID path set to /var/run/
              Dec 19 07:54:32 kernel: xl0: promiscuous mode enabled
              Dec 19 07:54:32 snort[63624]: Initializing daemon mode
              Dec 19 07:54:32 snort[63624]: Initializing daemon mode
              Dec 19 07:54:32 kernel: xl0: promiscuous mode disabled
              Dec 19 07:54:32 kernel: xl0: promiscuous mode enabled

              also  it does not stop any thing or set off any alerts i am just useing default rules pulled in from snort. let me know what you are all thinking.

              Thanks

              1 Reply Last reply Reply Quote 0
              • AhnHELA
                AhnHEL
                last edited by

                Shaddow501

                http://forum.pfsense.org/index.php/topic,2624.15.html

                In the above thread, PC_Arcade was having that exact problem.  Personally I'm not experiencing this error at all.  Sending you a PM

                Chazers18:

                You're running Snort on your LAN interface, should be your WAN.  Go to Services/Snort/Settings, reselect WAN interface and then hit Save.  Sometimes deleting any currently blocked IPs and making sure the Snort logs are cleared and then going to the Categories tab and hitting Save again will stop this error and give you a successful initialization.  Read this entire thread and you'll see information on setting up Snort to use ac-bnfa mode, this is highly recommended.

                AhnHEL (Angel)

                1 Reply Last reply Reply Quote 0
                • C
                  chazers18
                  last edited by

                  the funny thing is… that is not my lan. well atleast via the GUi i didnt select the lan i did both wans and then just one wan and that is what happpens the premicous starts and then after a while it kicks out.

                  this is a production device and i am gun shy on hacking the xml backup i will give it a shot and let you know what happens.

                  1 Reply Last reply Reply Quote 0
                  • AhnHELA
                    AhnHEL
                    last edited by

                    For some reason, when you select WAN, Snort tries to start on another interface.  Sometimes its necessary to hit Save twice on the Settings tab to make it stick.  Where it says in your logs:

                    Dec 19 07:54:32    snort[63638]: Writing PID "63638" to file "/var/run//snort_xl0.pid"
                    Dec 19 07:54:32    snort[63638]: Writing PID "63638" to file "/var/run//snort_xl0.pid"

                    It shouldnt say snort_xl0.pid.  It should say snort_(WAN interface name).pid

                    As of right now until the package is updated, its going to be necessary to edit /usr/local/pkg/snort.inc and commenting out the following line so Snort can work properly with certain rules.:

                    #Flow and stream
                    preprocessor flow: stats_interval 0 hash 2

                    Comment the above line out with a # before the word "preprocessor"

                    AhnHEL (Angel)

                    1 Reply Last reply Reply Quote 0
                    • M
                      morbus
                      last edited by

                      It shouldnt say snort_xl0.pid.  It should say snort_(WAN interface name).pid

                      That is exactly what it should say (assuming xl0 is your wan interface) I guess chazers18 is using 3com nics or something that uses the xl driver

                      Comment the above line out with a # before the word "preprocessor"

                      I don't see any reason why you can't use stream5 and flow on the same snort. Snort won't normally trigger for every ICMP packet it receives unless you add a rule for that eg```
                      alert icmp any any -> any any (msg:"ICMP test"; sid:1000005;)

                      1 Reply Last reply Reply Quote 0
                      • S
                        shaddow501
                        last edited by

                        Hello morbus

                        Well you are right the snort version 2.7.0.1 will work also with that line and will detect ICMP, also when using stream5.

                        But !!! in snort version 2.8.0.1 that i have created and implemented this package on my pfsense box (currently just testing its reliability) you will nor able to use the flow anymore when you use stream5 so you  will need to disable that line if you want that snort will work " preprocessor flow: stats_interval 0 hash 2"

                        are there others that would like to be testing the snort-2.8.0.1.tbz that i have compiled ?
                        i have compiled it so it will able to use stream4udp, and currently i am checking it with stream4, but i am one tester and i dont know how it will affect on others.

                        also i did some modifications in the last snort.inc file that i have created before…

                        currently the only problem that i have had with it and with the older version is that line " (snort), uid 0: exited on signal 11 (core dumped)"

                        so other didnt report that thay had this error, so maybe it is just my machine that doing something wrong.

                        1 Reply Last reply Reply Quote 0
                        • AhnHELA
                          AhnHEL
                          last edited by

                          @morbus:

                          It shouldnt say snort_xl0.pid.  It should say snort_(WAN interface name).pid

                          That is exactly what it should say (assuming xl0 is your wan interface) I guess chazers18 is using 3com nics or something that uses the xl driver

                          Comment the above line out with a # before the word "preprocessor"

                          I don't see any reason why you can't use stream5 and flow on the same snort. Snort won't normally trigger for every ICMP packet it receives unless you add a rule for that

                          xl0 would be his LAN interface would it not and his WAN would be xl1?  Common bug in Snort not using the correct interface with multiple posts here in pfSense documenting it and his exact error

                          A google search of stream5 gives numerous hits on disabling both stream4 AND flow when using stream5 ever since Stream5 was introduced with 2.7. I'm definitely seeing an improvement in rules detection/alerts (not just ICMP) since disabling flow

                          AhnHEL (Angel)

                          1 Reply Last reply Reply Quote 0
                          • M
                            morbus
                            last edited by

                            xl0 would be his LAN interface would it not and his WAN would be xl1?  Common bug in Snort not using the correct interface with multiple posts here in pfSense documenting it and his exact error

                            The WAN interface is only a name assigned in the webGUI to a network device. You can assign any nic in your system as WAN and you can also run snort on the lan if you wanted to detect threats from that side. I have Snort running on my WAN interface and that is bound to my xl0 interface. If you go to interfaces ->assign you will find you can bind any nic to any name

                            1 Reply Last reply Reply Quote 0
                            • C
                              chazers18
                              last edited by

                              so let me get this straight

                              uninstall snort…

                              any way thats what i did yesterday i dont need it bringing my company down to a halt.

                              so xl0 is the lan interface and yes 3coms are what are in my machine.

                              i will try the install again and see what happens when i kick out some lines of code.

                              did the reinstall and the edit to the files and here is what i get when i fire this pig up
                              Dec 20 08:07:39 snort[15138]: FATAL ERROR: Failed to Lock PID File "/var/run//snort_xl1.pid" for PID "15138"
                              Dec 20 08:07:39 snort[15138]: FATAL ERROR: Failed to Lock PID File "/var/run//snort_xl1.pid" for PID "15138"

                              that is with only one interface started
                              Dec 20 08:09:44 snort[15802]: Child exited unexpectedly
                              Dec 20 08:09:44 snort[15802]: Child exited unexpectedly
                              Dec 20 08:09:43 snort[15865]: FATAL ERROR: Failed to Lock PID File "/var/run//snort_xl2.pid" for PID "15865"
                              Dec 20 08:09:43 snort[15865]: FATAL ERROR: Failed to Lock PID File "/var/run//snort_xl2.pid" for PID "15865"
                              Dec 20 08:09:43 snort[15865]: PID path stat checked out ok, PID path set to /var/run/
                              Dec 20 08:09:43 snort[15865]: PID path stat checked out ok, PID path set to /var/run/

                              this is my other wan when just selected the thing.

                              personally screw snort and the pig…

                              1 Reply Last reply Reply Quote 0
                              • M
                                morbus
                                last edited by

                                so xl0 is the lan interface

                                It depends xl0 is the interface name for the freeBSD part of pf in the webGUI you can assign any interface to any interface name in pf ie xl0 can be LAN, WAN, OPT1 or any other name you want.

                                the same applies to xl1 xl2 xl…...  fxp0 em0, you get the idea

                                In pf you have to have one interface assigned to LAN and one to WAN but after that it is up to you

                                1 Reply Last reply Reply Quote 0
                                • AhnHELA
                                  AhnHEL
                                  last edited by

                                  @shaddow501:

                                  With the both versions (2.7.0.1 & 2.8.0.1) i still have a problem after some time  (could be hours and could be minutes) snort exit with this message:
                                  " (snort), uid 0: exited on signal 11 (core dumped)"  I havent got any clue what could cause it and looking into web (google and such) didnt resolved much information…

                                  Just to keep everyone posted, Shaddow501 has gotten this problem resolved and has a stable, running Snort 2.8 on his system as well as mine.  Seems Sullrich is understandably very busy putting the finishing touches on the 1.2 Release so he cant assist in the package creation which to a FreeBSD noob is extremely daunting.  Any other takers out there who are familiar in packaging?

                                  AhnHEL (Angel)

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    shaddow501
                                    last edited by

                                    Hello

                                    As OnHel said
                                    we both have snort version 2.8.0.1 working stable and the new version have fixed some errors.

                                    I have added 2 files snort.inc that also works with 2.8.0.1 and 2.7.0.1 versions.

                                    and also added snort.xml that also give the users option to select ac-bnfa mode in snort.
                                    i must say though that the ac-bnfa option in the snort.xml file i got from OnHel.

                                    have a nice day.

                                    snort.inc.txt
                                    snort.xml.txt

                                    1 Reply Last reply Reply Quote 0
                                    • D
                                      David_W
                                      last edited by

                                      onhel was asking for help. What sort of help do you need?

                                      If you have got Snort 2.8.0.1 building correctly as a FreeBSD port - that is, you've updated the security/snort port to 2.8.0.1 and have managed to build a FreeBSD package that works correctly - you should seriously consider submitting a FreeBSD PR to bring the port up to date.

                                      To give you an idea of what this looks like, the PR with the 2.7.0.1 update is here. You can submit PRs on the web - you don't have to use the send-pr tool.

                                      David

                                      1 Reply Last reply Reply Quote 0
                                      • AhnHELA
                                        AhnHEL
                                        last edited by

                                        We dont have a package at all, which is what we need done.  The 2.7 package was modified by Shaddow501 to use 2.8 files.  While this isnt the obvious upgrade method, it allowed the testing of 2.8 to see what changes in the config file were necessary.  There are some serious flaws with the snort.inc file that comes with the pfSense 2.7 package.  These flaws have been worked out and as of now is very stable.  All we need is someone who is fluent in FreeBSD and package creation to properly package the 2.8 port and then use the snort.inc file that Shaddow501 has tweaked.

                                        AhnHEL (Angel)

                                        1 Reply Last reply Reply Quote 0
                                        • H
                                          Hilozer
                                          last edited by

                                          I installed RC4 and reinstalled snort using the latest package (2.7.0.1_3). I checked the rule download code and it is still pulling the wrong rule versions. Please see, http://forum.pfsense.org/index.php/topic,6873.0.html. In short, the code is set to download the CURRENT rule set, which it should not do. The CURRENT rule set should only be used if the snort version is also current. The pfSense package should always be hardcoded to pull the version of the rules that match the version of snort contained in the package.

                                          Jim L.

                                          1 Reply Last reply Reply Quote 0
                                          • M
                                            mbedyn
                                            last edited by

                                            hello. I have tried everything to force snort deamon to run properly. Tried diffrent working modes, posted .inc files
                                            .. finaly it's starts, and working for couple of hours.. and I got logs like this```

                                            Jan 26 20:15:11 192.168.3.1 snort[6993]: S5: Pruned 5 sessions from cache. 7 ssns for memcap: 8374482/8388608
                                            Jan 26 20:15:12 192.168.3.1 snort[6993]: S5: Pruned 1 sessions from cache. 1 ssns for memcap: 8392276/8388608
                                            Jan 26 20:15:12 192.168.3.1 snort[6993]: S5: Pruned 1 sessions from cache. 1 ssns for memcap: 8392276/8388608
                                            Jan 26 20:15:12 192.168.3.1 snort[6993]: S5: Pruned 1 sessions from cache. 1 ssns for memcap: 8418898/8388608
                                            Jan 26 20:15:12 192.168.3.1 snort[6993]: S5: Pruned 1 sessions from cache. 1 ssns for memcap: 8418898/8388608
                                            Jan 26 20:15:12 192.168.3.1 snort[6993]: S5: Pruned 1 sessions from cache. 1 ssns for memcap: 64/8388608
                                            Jan 26 20:15:12 192.168.3.1 snort[6993]: S5: Pruned 1 sessions from cache. 1 ssns for memcap: 64/8388608

                                            before snort crash…
                                            or difrerent behavior, it's hang causing 100% processor utilisation... like on attached pictures.. with no logs at all.. After that I have to kill the porcess snort by myself..
                                            
                                            Second question I have.. where I can find rule responsible to this snort log.. Please notice that, I keep scan.rules unchecked..
                                            

                                            [ ** ] [ 122:22:0 ] (portscan) UDP Filtered Decoy Portscan [ ** ] 
                                            [ Priority: 3 ] 
                                            01/28-14:26:06.788632 194.204.152.21 -> 83.19.104.98
                                            PROTO:255 TTL:0 TOS:0x0 ID:0 IpLen:20 DgmLen:168 DF

                                            
                                            Any suggestions ?
                                            
                                            ![snort.jpg](/public/_imported_attachments_/1/snort.jpg)
                                            ![snort.jpg_thumb](/public/_imported_attachments_/1/snort.jpg_thumb)
                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.