1
0
mirror of https://github.com/fwbuilder/fwbuilder synced 2026-03-19 09:47:20 +01:00

1163 Commits

Author SHA1 Message Date
Vadim Kurland
41a2ad2dcc * PIXImporter.cpp (fixServiceObjectUsedForBothSrcAndDstPorts):
see #2265 "ASA 8.3 acl import: access-list commands using two
named objects or object-groups", see #2290 "Access lists that
include mix of service objects and inline service definitions are
not properly imported". To import access-list command that matches
both source and destination tcp/udp ports and uses object-group in
either match I should create a new service group with a collection
of TCP or UDP service objects matching all combinations of source
and destination port ranges defined by the rule. This should work
when one or both matches use object-group in combination with
inline port match.
2011-04-07 18:06:18 -07:00
Vadim Kurland
10400f4737 * PIXImporter.cpp (pushPolicyRule): see #2297 Added warning when
importer enounters access-list command that matches tcp or udp
ports with "neq" port operators in both source and
destination. This configuration is not supported by import at this
time.
2011-04-07 14:05:02 -07:00
Vadim Kurland
30ee6d2f12 * PIXImporterNat.cpp (buildSNATRule): see #2319 "Imported nat
rules with multi-line access-lists have only the first entry"
2011-04-07 13:50:01 -07:00
Vadim Kurland
3af17b4404 * PIXImporterRun.cpp (run): see #2167 Implemented import of
"names" and "name" commands in PIX/ASA configs.
2011-04-07 12:53:31 -07:00
Vadim Kurland
3cb9ee856c using path "disk:" on FWSM to place generated config 2011-04-07 12:09:09 -07:00
Vadim Kurland
4d6302a4cc * CompilerDriver_pix_run.cpp (pixNetworkZoneChecks): see SF bug
3213019 "FWSM Network zone and IPv6". Currently we do not support
ipv6 with PIX/ASA and FWSM. If user creates a group to be used as
network zone object and places ipv6 address in it, this address
should be ignored while compiling the policy but this should not
be an error.
2011-04-07 11:05:46 -07:00
Vadim Kurland
c32da04d51 * FirewallInstaller.cpp (executeExternalInstallScript): see SF bug
3212988 "external script makes getopt difficult". User-defined
parameters for the external script moved to the end of the command
line.
2011-04-07 10:41:06 -07:00
Vadim Kurland
e541d4b1a1 updated activation path for FWSM; build 3519 2011-04-07 10:20:20 -07:00
Vadim Kurland
6f79c1d644 * pix.g (static_command_common_last_parameters): see #2314 "Import
of static NAT statements drops netmask value and uses host
instead".  "Netmask" parameter of a "static" command applies to
the real address.
2011-04-05 20:15:02 -07:00
Vadim Kurland
d5f95e0f2a * PIXImporterNat.cpp (buildDNATRule): see #2313 "NAT with
access-list destination address and original service not set".
"Nat" and "static" commands that use access-list should import all
components of the access-list command (source, destination and
service/protocol).
2011-04-05 19:59:13 -07:00
Vadim Kurland
55da233d22 * PIXImporterNat.cpp (buildSNATRule): see #2310 "Imported global /
nat rule has wrong interface defined". Importer mixed up inbound
and outbound interfaces in NAT commands created from combination
of "global" and "nat" PIX/ASA commands.
2011-04-05 19:06:35 -07:00
Vadim Kurland
e6e8455700 * pix.g (nat_new_top_level_command): since import of ASA8.3
"new" nat commands is not implemented yet, importer should issue
a warning when such command is encountered. See #2315
2011-04-05 18:55:53 -07:00
Vadim Kurland
327183c1f2 * FWObject.cpp (insert_before): see #2171 "Undoing delete of rule
ends up with rules being created with duplicate rule
numbers". Also see #2172 "Crash when deleting rule - related to
#2171". When user deleted the last rule in a rule set, then used
Undo to restore it, the program lost track of rules in the rule
set and became unstable.
2011-04-01 19:23:16 -07:00
Vadim Kurland
b21a9b24ab * FWObject.cpp (shallowDuplicate): see #2286 "Crash when closing
file". The GUI crashed if user imported iptables or pix
configuration, then deleted a rule and tried to close project
window.
2011-04-01 18:38:48 -07:00
Vadim Kurland
df7a58eb04 * PIXImporter.cpp (mirrorServiceObjectRecursively): see #2291 The
same service object-group that matches some tcp or udp ports can
be used to match both source and destination ports in an
access-list command. Importer should recognize when such group
is used to match source ports and create mirrored group with
potentially mirrored service objects. This should work when group
includes other groups.

test cases in asa8.3-acl.test
2011-04-01 16:24:33 -07:00
Vadim Kurland
8a7ef98a4a fixes #2307 "GUI switches
to another file after editor panel is closed"
2011-04-01 11:28:30 -07:00
Vadim Kurland
f04dc03fc6 see #2164 added import of http commands, import should not abort on "service" commands 2011-03-31 17:58:59 -07:00
Vadim Kurland
6808fb5693 see #2302 logging errors instead of aborting 2011-03-31 15:05:17 -07:00
Vadim Kurland
05c24a4719 * PIXImporterNat.cpp (buildSNATRule): import of PIX/ASA "global"
and "nat" commands works.
2011-03-31 12:09:35 -07:00
Vadim Kurland
2e7377bbf6 * PIXImporterNat.cpp (buildDNATRule): import of PIX/ASA "static"
commands works for the most part. Needs more testing.
2011-03-30 19:30:52 -07:00
Vadim Kurland
568e9c9912 * ObjectManipulator.cpp (getDeleteMenuState): see #2226 fixed GUI
crash that happened when user tried to delete or cut an object
from locked library.
2011-03-28 17:47:13 -07:00
Vadim Kurland
e4b711d178 * RuleOptionsDialog.cpp (loadFWObject): see #2230 the GUI should
allow limit-burst values of up to 10000
2011-03-28 17:39:35 -07:00
Vadim Kurland
3f8323a755 * import/PIXImporter.cpp (addLogging): see #2279 Support for import
of ASA access-list lines with log levels and intervals
2011-03-27 19:10:34 -07:00
Vadim Kurland
1e0958384a * parsers/pix.g (tcp_udp_port_spec): see #2284 fixed import of
tcp/udp port ranges using mix of port numbers and port names
2011-03-27 18:03:43 -07:00
Vadim Kurland
99c845d0a8 * getServByName.cpp (getPortByName): see #2268 Making sure all tcp
and udp port names are recognized on import; also since PIX/ASA
converts udp port numbersin "show run" output to the same names
as if they were tcp, using the same name mapping table.
2011-03-27 17:44:57 -07:00
Vadim Kurland
efb6398190 * Importer.cpp (pushRule): fixes #2280 Rules created from PIX
config import showed an icon that indicated non-default
combination of rule options, yet all rule options looked normal
when opened in the editor.
2011-03-25 23:29:27 -07:00
Vadim Kurland
60d0c4e308 * parsers/pix.g (icmp_top_level_command): see #2164 Implemented
import of "ssh", "telnet" and "icmp" PIX/ASA commands. These
commands are imported as regular rules in the main Policy ruleset.
2011-03-25 19:31:06 -07:00
Vadim Kurland
5bfcc226cb * PIXImporter.cpp (finalize): see #2277 "Create policy objects for
ASA access-lists that are not applied in an access-group". Policy
rule set will be created and populated with rules found in the
corresponding access-list even if this access-list is not applied
to an interface with access-group command.
2011-03-25 16:02:15 -07:00
Vadim Kurland
b89afcc87a * parsers/pix.g (tcp_udp_rule_extended): see #2273 Improvements in
the parser for PIX/ASA configs to make it recognize object-group
and named object names used to define source port, destination
address or destination port in "access-list ... tcp|udp" rules,
including ambiguous situation when an object-group appears after
source address specification because this group can define either
source port or destination address.
2011-03-25 15:34:29 -07:00
Vadim Kurland
f2864f061c see #2263 do not generate object-group service statements with references to named objects 2011-03-24 18:03:13 -07:00
Vadim Kurland
3f0f6a2aa4 * IOSImporter.cpp (createTCPUDPServicePair): see #2267 added
support for import of object-group and service-object statements
of type "tcp-udp" (these get imported as service group object with
two tcp and udp service objects).
2011-03-24 17:04:16 -07:00
Vadim Kurland
c533b74e8e * getServByName.cpp (getPortByName): see #2268 updated list of
named tcp and udp ports recognized by the importer for Cisco ASA.
It is still unclear what port does the name "cifs" correspond to.
2011-03-24 12:48:04 -07:00
Vadim Kurland
72370646a6 checking in updated unit tests after changes in handling port ranges for IOS and changes for better deduplication of networks and address ranges in importer 2011-03-23 23:54:55 -07:00
Vadim Kurland
ee35e66818 fixed SF bug 3238026: build
failure on systems without net-snmp development libraries.
2011-03-23 16:33:54 -07:00
Vadim Kurland
48179df4d4 first attempt at access-list import for pix/asa. not done yet 2011-03-22 20:31:16 -07:00
Vadim Kurland
2ebad6b511 * parsers/pix.g (port_object): see #2234 added support for import
of "obejct-group service name tcp|udp" constructs in ASA 8.3 with
subsequent "port-object" statements.
2011-03-22 17:41:42 -07:00
Vadim Kurland
0e3bf10cb9 see #2252 compilers for iosacl and pix automatically increment/decrement port range boundaries to make tcp/udp port ranges defined in tcp/udp service objects inclusive 2011-03-21 12:56:37 -07:00
Vadim Kurland
da2deee052 * ImportFirewallConfigurationWizard.cpp (accept): see #2253
"importer should not creates objects while still in the middle of
the wizard". Importer wizard creates new objects in the object
tree only when user clicks Finish and abandons results if they
click Cancel.
2011-03-20 13:11:26 -07:00
Vadim Kurland
8fee475805 * IOSImporter.cpp (createTCPUDPNeqObject): see #2248 implemented
import of Cisco IOS and PIX/ASA service configurations using port
operation "neq". Since object model in fwbuilder does not provide
direct support for "port not equal to" expression, this
configuration is conveted into two tcp or udp service objects with
port range extending below and above specified port and these two
service objects are then placed in a group.
2011-03-19 20:54:08 -07:00
Vadim Kurland
b158752a99 see #2240 changelog record 2011-03-19 18:26:59 -07:00
Vadim Kurland
ff2b5eee62 * IPTImporter.cpp (pushPolicyRule): change in the importer
behavior: configuration import is aborted with an appropriate
error message in the log when program enounters protocol or
service name that it does not recognize and can not convert to
protocol or port number. We used to replace port number with some
placeholder (usually 0) and mark rule as "bad" by coloring it red
and adding comment.
2011-03-19 18:23:36 -07:00
Vadim Kurland
f3f08d170d see #2239 added var firewall_name to installer configlets that define commands installer runs on the machine to activate policy 2011-03-17 12:36:52 -07:00
Vadim Kurland
0e71443165 updated changelog record 2011-03-16 17:09:35 -07:00
Vadim Kurland
027b629b42 updated changelog record 2011-03-16 17:07:06 -07:00
Vadim Kurland
6a56bcb794 updated changelog record 2011-03-16 17:04:43 -07:00
Vadim Kurland
26f9f171d0 see #1548 "Object
de-duplication during import process". Also SourceForge bug
2980566 "Import from hostsfile may cause duplicate Objects" and
3030072 "remove duplicates during any import". Now the program can
optionally re-use existing objects from both Standard Objects and
user-defined libraries when it imports existing firewall
configuration. This works for any firewall platform for which we
support policy import.
2011-03-16 16:59:29 -07:00
Vadim Kurland
b7d1170d70 see #2223 support for import of PIX/ASA named objects 2011-03-14 19:43:18 -07:00
Vadim Kurland
0aa3eac4d4 * Compiler.cpp (expandGroupsInRuleElement): sorting objects in the
rule element by name after group is expanded, this helps ensure
stable ordering of objects in generated configuration.

* Compiler.cpp (replaceClusterInterfaceInItfRE::processNext):
sorting objects in rule element after cluster interfaces have been
replaced, this helps ensure stable ordering of objects in generated
configuration.

* FWObject.h (FWObjectNameCmpPredicate): moved this class from
gui-specific module to libfwbuilder as it is universally useful.
It can compare FWObject objects by name and can optionally can
follow references; it can be used with std::sort() to sort lists
of FWObject pointers or directly sort rule elements.
2011-03-12 19:50:24 -08:00
Vadim Kurland
5893edb768 see #2212 changelog record 2011-03-12 16:41:11 -08:00
Vadim Kurland
c9f8e8bf3e see #2209 changelog record 2011-03-11 12:30:29 -08:00