| 1 | fwsnort-0.9.0 (03/22/2007): |
|---|
| 2 | - Added support for multiple content matches since this is supported by |
|---|
| 3 | iptables. This made a 10% increase in the fwsnort translation rate - |
|---|
| 4 | about 60% of all Snort-2.3.3 rules can be translated now. |
|---|
| 5 | - Added emulation for distance and within from previous content match |
|---|
| 6 | based on --from and --to (string match extension) and the length of |
|---|
| 7 | the previous pattern. |
|---|
| 8 | - Added the ability to include the Snort "msg", "classtype", "reference", |
|---|
| 9 | "priority", and "rev" fields in each iptables rule with the comment |
|---|
| 10 | match. This can be disabled with a new command line argument |
|---|
| 11 | --no-ipt-comments. The fwsnort version is also included within this |
|---|
| 12 | string. |
|---|
| 13 | - Added the ability to include the iptables rule number for each rule in |
|---|
| 14 | the fwsnort chains. This is useful to easily know which iptables rule |
|---|
| 15 | is being triggered by network traffic (so it can be disabled if |
|---|
| 16 | necessary). This can be disabled with --no-ipt-rule-nums. |
|---|
| 17 | - Added the --include-regex and --exclude-regex command line arguments. |
|---|
| 18 | These arguments allow rules to be included/excluded based on a regular |
|---|
| 19 | expression supplied on the command line. |
|---|
| 20 | - Updated to include the original Snort rule as a comment within the |
|---|
| 21 | fwsnort.sh script without having to use --verbose. |
|---|
| 22 | - Bugfix to force install of IPTables::Parse since it had been updated in |
|---|
| 23 | the fwsnort-0.8.2 release. |
|---|
| 24 | - Changed the IGNORE_ADDR variable to WHITELIST since this name better |
|---|
| 25 | describes the actual function of this var. Updated to allow multiple |
|---|
| 26 | WHITELIST lines. |
|---|
| 27 | - Added the BLACKLIST variable to allow a true blacklist to be |
|---|
| 28 | instantiated with either the DROP or REJECT targets. The syntax for the |
|---|
| 29 | BLACKLIST variable is "BLACKLIST <ip or network> <target>", where |
|---|
| 30 | "target" is either "DROP" or "REJECT". |
|---|
| 31 | - Added -F and -L command line arguments to flush and list iptables rules. |
|---|
| 32 | This is similar to the iptables command line args of the same names. |
|---|
| 33 | - Bugfix to ensure that traffic directed into the INPUT or coming from the |
|---|
| 34 | OUTPUT chains is treated as going toward or originating from the |
|---|
| 35 | HOME_NET. After all the HOME_NET variable may contain an internal |
|---|
| 36 | network but omit the IP assigned to an external interface on the |
|---|
| 37 | firewall. |
|---|
| 38 | - Added "--log-ip-options" and "--log-tcp-options" to fwsnort LOG rules by |
|---|
| 39 | default (in the generated fwsnort.sh script). This can be disabled with |
|---|
| 40 | --no-log-ip-opts and --no-log-tcp-opts arguments on the fwsnort command |
|---|
| 41 | line. |
|---|
| 42 | - Added the ability to include --log-tcp-sequence to LOG rules in |
|---|
| 43 | fwsnort.sh with a new argument --ipt-log-tcp-seq on the fwsnort command |
|---|
| 44 | line. |
|---|
| 45 | - Updated to handle negative string matches with "--string ! <string>". |
|---|
| 46 | - Updated to output all unsupported options of the /var/log/fwsnort.log |
|---|
| 47 | file to assist in the development of addition keyword emulation. |
|---|
| 48 | |
|---|
| 49 | fwsnort-0.8.2 (02/17/2007): |
|---|
| 50 | - Updated to newer IPTables::Parse module that uses the array of hash |
|---|
| 51 | references method of returning iptables policy data. |
|---|
| 52 | - Added --Dump-ipt and --Dump-snort rules to allow iptables policy and |
|---|
| 53 | Snort rules to be dumped to STDOUT. |
|---|
| 54 | - Added bleeding-all.rules file from http://www.bleedingsnort.com/ |
|---|
| 55 | - Added patches/bm_goodshift_fix.patch patch file that fixes an |
|---|
| 56 | initialization bug in the Boyer-Moore text search implementation in the |
|---|
| 57 | kernel (linux-2.6.x/lib/ts_bm.c) which caused slightly repetitive |
|---|
| 58 | patterns to only match at specific offsets with the string match |
|---|
| 59 | extension. |
|---|
| 60 | - Bugfix to ensure that a depth cannot be less that an offset (these |
|---|
| 61 | translate to the --to and --from command line arguments to iptables). |
|---|
| 62 | - Bugfix to escape '$' chars in iptables search strings. |
|---|
| 63 | - Added cd_rpmbuilder to make it easy to automatically build RPM files of |
|---|
| 64 | fwsnort. |
|---|
| 65 | - Added support for the iptables OUTPUT chain. |
|---|
| 66 | - Added the ChangeLog.svn file so that all of the changed files and |
|---|
| 67 | corresponding svn commit messages can be viewed (this file is built from |
|---|
| 68 | release to release). |
|---|
| 69 | |
|---|
| 70 | fwsnort-0.8.1 (11/11/2005): |
|---|
| 71 | - Updated to use the string match extension "--algo bm" argument if |
|---|
| 72 | fwsnort is being run on a 2.6.14 (or greater) kernel. |
|---|
| 73 | - Updated to handle the Snort "offset" and "depth" keywords via the |
|---|
| 74 | --from and --to options to the string match extension in the 2.6.14 |
|---|
| 75 | kernel. |
|---|
| 76 | - Created RPM package of fwsnort. |
|---|
| 77 | - Minor man page updates. |
|---|
| 78 | |
|---|
| 79 | fwsnort-0.8.0 (07/11/2005): |
|---|
| 80 | - Completely re-structured fwsnort w.r.t. how it creates Netfilter |
|---|
| 81 | chains. There are no longer any per-interface chains (this |
|---|
| 82 | greatly simplifies the Netfilter chains). |
|---|
| 83 | - Added three new chains "FWSNORT_INPUT_ESTAB", "FWSNORT_OUTPUT_ESTAB" |
|---|
| 84 | and "FWSNORT_FORWARD_ESTAB" to which tcp connections in the |
|---|
| 85 | ESTABLISHED state are jumped. This allows fwsnort to use the |
|---|
| 86 | Netfilter tcp connection tracking mechanism to ignore Stick and Snot |
|---|
| 87 | style attacks (similar to the flow:established Snort rule option). |
|---|
| 88 | - Added true variable resolution (i.e. HTTP_SERVERS -> HOME_NET -> any) |
|---|
| 89 | for the Snort rule header. This directly emulates the behavior of |
|---|
| 90 | the Snort IDS. |
|---|
| 91 | - Added IP protocol support in the translation of the Snort rule |
|---|
| 92 | header. The Snort rule translation rate is now at about 53% for |
|---|
| 93 | Snort-2.3. |
|---|
| 94 | - Bugfix for ipopts Snort option (several arguments are not supported |
|---|
| 95 | by the ipv4options extension). |
|---|
| 96 | - Better tests for Netfiler TTL, TOS, and ipv4options matches. |
|---|
| 97 | - Replaced IGNORE_IP and IGNORE_NET keywords with single IGNORE_ADDR |
|---|
| 98 | keywork in fwsnort.conf. |
|---|
| 99 | - Updated to correctly handle ICMP type and code rules (itype and |
|---|
| 100 | icode Snort options) via the "--icmp-types type/code" convention. |
|---|
| 101 | - Added support for emulating the dsize Snort option through the use |
|---|
| 102 | of the Netfilter length match. |
|---|
| 103 | - Changed --type argument to --include-types and added list support |
|---|
| 104 | so it accepts things like "chat,ddos". Also added --exclude-types |
|---|
| 105 | command line argument. |
|---|
| 106 | - Added support for multiple sid's (as a comma separated list) in |
|---|
| 107 | --snort-sids argument. Also added --exclude-sids argument to remove |
|---|
| 108 | a list of sids from translation. |
|---|
| 109 | - Added support for the replace Snort option (originally from the |
|---|
| 110 | Snort_inline project). The requires the replace string patch. |
|---|
| 111 | - Added support for restricting jump rules to a list of interfaces |
|---|
| 112 | via the --restrict-intf argument. |
|---|
| 113 | - Added kernel patch to extend the maximum packet length that the |
|---|
| 114 | string match extension will attempt to search from 1024 bytes to |
|---|
| 115 | 2048 bytes (requires a kernel re-compile of course). |
|---|
| 116 | - Added DRP and REJ strings to logging prefix if --ipt-drop or |
|---|
| 117 | --ipt-reject is specified. |
|---|
| 118 | - Added snortspoof.pl, which is a simple perl script that emulates |
|---|
| 119 | the Stick and Snot tools. |
|---|
| 120 | |
|---|
| 121 | fwsnort-0.7.0 (06/05/2005): |
|---|
| 122 | - Added support for the Snort pass action by using the ACCEPT target. |
|---|
| 123 | - Added support for the Snort log action by using the ULOG target |
|---|
| 124 | (which can then log the packet via the pcap writer). |
|---|
| 125 | - Added support for all fwsnort alerts to be logged via the ULOG |
|---|
| 126 | target instead of the LOG target. |
|---|
| 127 | - Added support for the "resp" keyword to allow it to drive the |
|---|
| 128 | Netfilter argument to the REJECT target. |
|---|
| 129 | - Added "pcre" to the unsupported list... this knocks the fwsnort |
|---|
| 130 | translation rate down to about 50% for Snort-2.3 rules (pcre is |
|---|
| 131 | heavily utilized). |
|---|
| 132 | - Added "priority" and "rev" to comment lines. |
|---|
| 133 | |
|---|
| 134 | fwsnort-0.6.5 (03/20/2005): |
|---|
| 135 | - Updated to not attempt to download Snort rules from snort.org |
|---|
| 136 | because the rules are no longer available for automatic downloads |
|---|
| 137 | - Changed the install.pl script and the --update-rules mode for |
|---|
| 138 | fwsnort to download the latest signature set from |
|---|
| 139 | http://www.bleedingsnort.com/. |
|---|
| 140 | (Snort.org is now offering pay-service around their rule sets). |
|---|
| 141 | - Added signature test for the "flowbits" keyword. |
|---|
| 142 | |
|---|
| 143 | fwsnort-0.6.4 (12/18/2004): |
|---|
| 144 | - Updated to Snort-2.3 rules. FWSnort can convert a total of 1710 |
|---|
| 145 | out of 2559 total Snort-2.3 rules. |
|---|
| 146 | - Updated to new Snort rules download link for --update-rules mode: |
|---|
| 147 | http://www.snort.org/dl/rules/snortrules-snapshot-CURRENT.tar.gz |
|---|
| 148 | - Updated to standard [+], [-], and [*] prefixes for info, warning |
|---|
| 149 | and die logging messages. |
|---|
| 150 | - Added --replace-string patches. |
|---|
| 151 | |
|---|
| 152 | fwsnort-0.6.3 (04/04/2004): |
|---|
| 153 | - Added ignore functionality for both IPs and networks |
|---|
| 154 | - Split --ipt-block into --ipt-drop and --ipt-reject to add DROP |
|---|
| 155 | or REJECT rules respectively. |
|---|
| 156 | - Added --add-deleted option to allow rules in the "deleted.rules" |
|---|
| 157 | file to be added. |
|---|
| 158 | |
|---|
| 159 | fwsnort-0.6.2 (03/19/2004): |
|---|
| 160 | - Added --internal-net and --dmz-net options so that internal and |
|---|
| 161 | dmz networks can be manually specified without having to parse |
|---|
| 162 | the output of ifconfig. This is most useful for running fwsnort |
|---|
| 163 | on a linux system that is acting as a bridge where no ip addresses |
|---|
| 164 | are assigned to the interfaces. |
|---|
| 165 | - Bugfix for missing icmp-port-unreachable rejects for UDP packets. |
|---|
| 166 | |
|---|
| 167 | fwsnort-0.6.1 (02/01/2004): |
|---|
| 168 | - Bugfix for not adding dmz interface rules to INPUT chain. |
|---|
| 169 | - Bugfix for not getting the DMZ interface network. |
|---|
| 170 | |
|---|
| 171 | fwsnort-0.6 (01/04/2004): |
|---|
| 172 | - Speed increase and disk access decrease by writing iptables |
|---|
| 173 | commands to the iptables script only after all lines have been |
|---|
| 174 | generated. |
|---|
| 175 | - Bugfix for DMZ interface. |
|---|
| 176 | - Bugfix for multiple ip_proto fields. |
|---|
| 177 | - Removed the ip protocol as an allowed protocol for translation. |
|---|
| 178 | - Bugfix for negated port numbers. |
|---|
| 179 | - Removed "<-" rule direction since not even snort supports this. |
|---|
| 180 | - Fixed snort rule updates from snort.org. |
|---|
| 181 | |
|---|
| 182 | fwsnort-0.5 (12/21/2003): |
|---|
| 183 | - Added "-j REJECT --reject-with tcp-reset" for tcp sessions |
|---|
| 184 | if the --ipt-block option is specified. |
|---|
| 185 | - Added ability to download latest snort rules from snort.org. |
|---|
| 186 | - Added --no-ipt-jumps. |
|---|
| 187 | - Added better checking for iptables build characteristics such |
|---|
| 188 | as the LOG target and wether or not the ipv4options extension |
|---|
| 189 | is compiled in. |
|---|
| 190 | - Added config preservation code from psad in install.pl. |
|---|