]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blobdiff - html/cgi-bin/ids.cgi
snort: update to 2.9.5.3.
[people/teissler/ipfire-2.x.git] / html / cgi-bin / ids.cgi
index 4d66d22d76bee20635896603b64031b50c78ef52..4bd0128cb4cf4a5e4ff6e0de3d76e4010e393da2 100644 (file)
@@ -2,7 +2,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2005-2010  IPFire Team                                        #
+# Copyright (C) 2007-2013  IPFire Team  <info@ipfire.org>                     #
 #                                                                             #
 # 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        #
@@ -97,7 +97,7 @@ if (-e "/etc/snort/snort.conf") {
        close(FILE);
        open(FILE, ">/etc/snort/snort.conf") or die 'Unable to write snort config file.';
 
-    my @rules = `cd /etc/snort/rules/ && ls *.rules`;    # With this loop the rule might be display with correct rulepath set
+    my @rules = `cd /etc/snort/rules/ && ls *.rules 2>/dev/null`;    # With this loop the rule might be display with correct rulepath set
        foreach (@rules) {
        chomp $_;
        my $temp = join(";",@snortconfig);
@@ -263,22 +263,22 @@ if (-e "/etc/snort/snort.conf") {
 #######################  End added for snort rules control  #################################
 
 if ($snortsettings{'RULES'} eq 'subscripted') {
-       #$url="http://dl.snort.org/sub-rules/snortrules-snapshot-2.8_s.tar.gz?oink_code=$snortsettings{'OINKCODE'}";
-       $url=" http://www.snort.org/reg-rules/snortrules-snapshot-2860_s.tar.gz/$snortsettings{'OINKCODE'}";
-       #$url="http://www.snort.org/pub-bin/oinkmaster.cgi/$snortsettings{'OINKCODE'}/snortrules-snapshot-2.8_s.tar.gz";
+       $url=" http://www.snort.org/sub-rules/snortrules-snapshot-2953.tar.gz/$snortsettings{'OINKCODE'}";
 } elsif ($snortsettings{'RULES'} eq 'registered') {
-       #$url="http://dl.snort.org/reg-rules/snortrules-snapshot-2.8.tar.gz?oink_code=$snortsettings{'OINKCODE'}";
-       $url=" http://www.snort.org/reg-rules/snortrules-snapshot-2860.tar.gz/$snortsettings{'OINKCODE'}";
-       #$url="http://www.snort.org/pub-bin/oinkmaster.cgi/$snortsettings{'OINKCODE'}/snortrules-snapshot-2.8.tar.gz";
+       $url=" http://www.snort.org/reg-rules/snortrules-snapshot-2950.tar.gz/$snortsettings{'OINKCODE'}";
+} elsif ($snortsettings{'RULES'} eq 'community') {
+       $url=" http://s3.amazonaws.com/snort-org/www/rules/community/community-rules.tar.gz";
 } else {
-       $url="http://www.emergingthreats.net/rules/emerging.rules.tar.gz";
+       $url="http://rules.emergingthreats.net/open/snort-2.9.0/emerging.rules.tar.gz";
 }
 
 if ($snortsettings{'ACTION'} eq $Lang::tr{'save'} && $snortsettings{'ACTION2'} eq "snort" )
 {
        $errormessage = $Lang::tr{'invalid input for oink code'} unless (
            ($snortsettings{'OINKCODE'} =~ /^[a-z0-9]+$/)  ||
-           ($snortsettings{'RULESTYPE'} eq 'nothing' )       );
+           ($snortsettings{'RULES'} eq 'nothing' ) ||
+           ($snortsettings{'RULES'} eq 'emerging' ) ||
+           ($snortsettings{'RULES'} eq 'community' ));
 
        &General::writehash("${General::swroot}/snort/settings", \%snortsettings);
        if ($snortsettings{'ENABLE_SNORT'} eq 'on')
@@ -405,6 +405,7 @@ $checked{'ENABLE_GUARDIAN'}{'on'} = '';
 $checked{'ENABLE_GUARDIAN'}{$snortsettings{'ENABLE_GUARDIAN'}} = "checked='checked'";
 $selected{'RULES'}{'nothing'} = '';
 $selected{'RULES'}{'community'} = '';
+$selected{'RULES'}{'emerging'} = '';
 $selected{'RULES'}{'registered'} = '';
 $selected{'RULES'}{'subscripted'} = '';
 $selected{'RULES'}{$snortsettings{'RULES'}} = "selected='selected'";
@@ -518,6 +519,7 @@ print <<END
 <tr>
        <td><select name='RULES'>
                                <option value='nothing' $selected{'RULES'}{'nothing'} >$Lang::tr{'no'}</option>
+                               <option value='emerging' $selected{'RULES'}{'emerging'} >$Lang::tr{'emerging rules'}</option>
                                <option value='community' $selected{'RULES'}{'community'} >$Lang::tr{'community rules'}</option>
                                <option value='registered' $selected{'RULES'}{'registered'} >$Lang::tr{'registered user rules'}</option>
                                <option value='subscripted' $selected{'RULES'}{'subscripted'} >$Lang::tr{'subscripted user rules'}</option>
@@ -537,10 +539,9 @@ print <<END
        <td width='30%' align='center'><input type='submit' name='ACTION' value='$Lang::tr{'download new ruleset'}' />
 END
 ;
-
-if ( $snortsettings{'ACTION'} eq $Lang::tr{'download new ruleset'} ) {
-       $snortsettings{'INSTALLDATE'} = `/bin/date +'%Y-%m-%d'`;
-       &General::writehash("${General::swroot}/snort/settings", \%snortsettings);
+if ( -e "/var/tmp/snortrules.tar.gz"){
+       my @Info = stat("/var/tmp/snortrules.tar.gz");
+       $snortsettings{'INSTALLDATE'} = localtime($Info[9]);
 }
 print "&nbsp;$Lang::tr{'updates installed'}: $snortsettings{'INSTALLDATE'}</td>";