Showing posts with label Free Tools. Show all posts
Showing posts with label Free Tools. Show all posts

Wednesday, 28 May 2014

Titania Free Tools

Nigel Matthews and Max McFarlane (Free Tools Development Team, Titania)


About the Authors

Titania's Free Tools Team have worked hard to build and maintain a number of free tools which have now been released to help assist other auditors and penetration testers with their work.


Since the developers at Titania come from a penetration testing background, over the years they have created a number of tools to assist with their work. Furthermore, some of those tools have been released to help assist other penetration testers with their work. This article takes a look at two of those tools, SSL Scan and Banner Grab, and will also offer an exclusive insight into a number of updates that will be released soon.

Although packages are available on Linux platforms for some of these tools, they are distributed in source code form. This article shows how they can be compiled from the source code and run.

SSL Scan

The purpose of SSL Scan is to determine what encryption ciphers are supported by a particular SSL service. It also obtains a copy of the SSL certificate, determines default ciphers and can send additional service probes to determine if the cipher can actually be used with the service. Some SSL servers will accept negotiation with an encryption cipher, but the service then disallows it.

SSL Scan makes use of the OpenSSL library to create a list of potential ciphers that are then used to test a service.

Compilation

From the SSL Scan page on the Titania website, follow the link to download SSL Scan (the latest version is 1.8.2). You will also need OpenSSL (and the development libraries, if these are separate on your system) and the GNU C++ compiler. You may be able to use Cygwin / MinGW on Windows.

Extract the source code to a directory and then option a command prompt in that directory. You can then compile the source code using the following command:
gcc -lssl -lcrypto -o sslscan sslscan.c

On Apple Mac OS X systems, the procedure is slightly different as you need to use the Ports version of OpenSSL, rather than the restricted version that Apple supply. You can download and install Ports from macports.org. Once installed execute the following command to install the Ports version of OpenSSL:
sudo port install openssl 

Then you can compile SSL Scan using the following command:
gcc -I/opt/local/include -L/opt/local/lib -lssl -lcrypto -o sslscan sslscan.c

Using SSL Scan

Now that SSL Scan is compiled, you can obtain help on the command line options by typing the following command (see Listing 1):
./sslscan --help

Listing 1. ‘sslscan --help’ results

Command:
./sslscan [Options] [host:port | host]



Options:
--targets=<file>             A file containing a list of hosts to
                             check. Hosts can be supplied with
                             ports (i.e. host:port).

--no-failed                  List only accepted ciphers (default
                             is to listing all ciphers).

--ssl2                       Only check SSLv2 ciphers.

--ssl3                       Only check SSLv3 ciphers.

--tls1                       Only check TLSv1 ciphers.

--pk=<file>                  A file containing the private key or
                             a PKCS#12 file containing a private
                             key/certificate pair (as produced by

                             MSIE and Netscape).

--pkpass=<password>          The password for the private key or

                             PKCS#12 file.

--certs=<file>               A file containing PEM/ASN1 formatted
                             client certificates.

--starttls                   If a STARTTLS is required to kick an

                             SMTP service into action.

--http                       Test a HTTP connection.

--bugs                       Enable SSL implementation bug                                          workarounds.

--xml=<file>                 Output results to an XML file.

--version                    Display the program version.

--quiet                      Be quiet

--help                       Display the help text you are now
                             reading.

Example:
./sslscan 127.0.0.1

To use SSL Scan to determine what ciphers a standard HTTPS server operating on port 443 supports (using Google as an example):
./sslscan www.google.com

You will then receive information similar to what you can see in Listing 2.

Listing 2. Testing SSL server www.google.com on port 443

Testing SSL server www.google.com on port 443

Supported Server Cipher(s):
Rejected SSLv2 168 bits  DES-CBC3-MD5
Rejected SSLv2 128 bits  RC2-CBC-MD5
Rejected SSLv2 128 bits  RC4-MD5
Rejected SSLv2 56  bits  DES-CBC-MD5
Rejected SSLv2 40  bits  EXP-RC2-CBC-MD5
Rejected SSLv2 40  bits  EXP-RC4-MD5
Failed SSLv3 256 bits  ECDHE-RSA-AES256-GCM-SHA384
Failed SSLv3 256 bits  ECDHE-ECDSA-AES256-GCM-SHA384
Failed SSLv3 256 bits  ECDHE-RSA-AES256-SHA384
Failed SSLv3 256 bits  ECDHE-ECDSA-AES256-SHA384
Accepted SSLv3 256 bits  ECDHE-RSA-AES256-SHA
Rejected SSLv3 256 bits  ECDHE-ECDSA-AES256-SHA
Rejected SSLv3 256 bits  SRP-DSS-AES-256-CBC-SHA
Rejected SSLv3 257 bits  SRP-RSA-AES-256-CBC-SHA
Failed SSLv3 258 bits  DHE-DSS-AES256-GCM-SHA384
…

SSL Scan can be integrated in to third-party products by using the XML output option. The XML results can then be easily imported and managed by your own custom applications. To do this you can use the following command:
./sslscan --xml=scan-results.xml www.google.com

Banner Grab

When performing a penetration assessment, obtaining network service banners can often provide useful information. This information is not always accurately processed and reported by vulnerability scanners. Information leakage from a network service banner can have the potential to lead an attacker toward software vulnerabilities. For example, SSH service banners will often include both software and version details.

Titania developed Banner Grab to go and get the service banner information for you. In addition to standard service banners, Banner Grab has the ability to send specially formatted triggers for different types of service in order to obtain as much information as possible. By default Banner Grab will send triggers when a common port is used that has a trigger defined.

Compilation

From the Banner Grab page on the Titania website, follow the link to download Banner Grab (the latest version is 3.6). If you want to compile Banner Grab with SSL support then you will need to download OpenSSL (and the development libraries, if these are separate on your system). You will also need the GNU C++ compiler. You may be able to use Cygwin / MinGW on Windows.

Extract the source code to a directory and then option a command prompt in that directory. You can then compile the source code using the following command:
gcc –lssl –lcrypto –o bannergrab bannergrab.c

If you want to build Banner Grab without SSL support you can use the following:
gcc –DNOSSL –o bannergrab bannergrab.c

Using Banner Grab

Once compiled you can get help on Banner Grab by typing the following command:
./bannergrab --help

The result should be similar to what you can see in Listing 3.

Listing 3. ‘./bannergrab --help’ results

Command:
./bannergrab [Options] host port

Options:
--udp                        Connect to a port using UDP.                                          The default is to use TCP.

--no-triggers                Collect only the connection banner,                                    no triggers and no SSL.

--trigger=<trigger>          Specify the trigger to use. Specify
                             DEFAULT to use the default trigger.

--no-ssl                     Prevent SSL connection creation.

--no-hex                     Output containing non-printable
                             characters are converted to hex.                                      This option prevents the                                              conversion.

--conn-time=<secs>           Connection timeout (default is 5s).

--read-time=<secs>           Read timeout (default is 3s).

--verbose                    Show additional program details such                                  as any errors.

--show-triggers              Show the supported triggers.

--version                    Show the program version.

--help                       Display the help text you are                                          reading now.

Example:

./bannergrab 127.0.0.1 80

To get a simple banner from an SSH server you could type the following:
./bannergrab 192.168.0.22 22

On my test SSH service the result was:
SSH-2.0-OpenSSH_5.3

As you can see the SSH service returned not only the SSH protocol but the SSH service software and version. This is very useful information for an attacker attempting to identify software vulnerabilities to exploit.

I mentioned earlier about Banner Grab sending triggers to a service to identify additional information. In the next example I will use Banner Grab to get service information from a SNMP service. The command was:
./bannergrab --udp 192.168.0.12 161

See the results in Listing 4.

Listing 4. ‘./bannergrab --udp 192.168.0.12 161’ results



When the information returned from a service includes non-printable characters, Banner Grab returns the information in a HEX value format with the printable characters to the right. As you can see from the returned information it appears to be a HP device and has community strings of “public” and “private” supported.

Future Developments

There are a number of exciting updates coming through the Titania Free Tool Development Team at the moment. SSL Scan and Banner Grab tools described in this article are being updated, together with graphical versions of the tools. The Banner Grab tool now also includes a port scanning tool to identify the live ports on a device prior to performing the banner grabbing.

The Free Tool Team has also been updating our other tools such as IP Calculator, which now includes IPv6 support and provides much more address details. Plus there will be pre-compiled binary packages available for Windows, Linux and Mac systems making them all much easier to use. For more information on our full portfolio of free tools, visit our website.

Monday, 8 October 2012

IP Calc- Free GUI IP Calculator

IP Calc is a simple GUI IP Calculator. You enter an IP address with a netmask or CIDR and IP Calc will show the network address, broadcast address and other details. This tool has been replaced by the Nipper IPCalc tool which supports Qt 4, this tool was developed with Qt 3.

To Download for free to to www.titania-security.com/labs/ipcalc


Requirements

IP Calc has the following requirements:
IP Calc has not been tested with Windows, though it should work without modification.


Building

To build IP Calc, extract the source code from the archive. Change into the source directory and execute the following commands:

qmake
make

Changes

VERSION : 0.2
DATE    : 03/09/2005
AUTHOR  : Fizz
DETAILS : Added Documentation
          Fixed IP Address Input Validation
    Improved Spacing in the Results Pane
          Added Client IP Address Range

VERSION : 0.1
DATE    : 31/08/2005
AUTHOR  : Fizz
DETAILS : Initial Version

License

IPCalc is covered by GPL version 2. 

To download for free to to www.titania-security.com/labs/ipcalc

Monday, 1 October 2012

McAfee Firewall Backup Script- Free Tool to Restore Firewall Configuration

McAfee / Secure Computing Firewall (Sidewinder) Backup Script (MFBS) enables you to quickly create a script that can be used to restore your firewall configuration. Older SecureOS versions enabled you to backup the configuration to an XML file, however recent versions create encrypted archives. This prevents you from manually modifying, scripting changes or any other analysis.

To download this free tool go to www.titania-security.com/labs/mfbs


Requirements

All you need is the ability to copy files to and from your firewall, plus the ability to run scripts. There are multiple ways that you can do this, but you could use the edit file facility in the management software.


Running

Download and transfer the script to your firewall and then logon to the command line interface. You can execute the script using the following commands:
  • srole (to perform administration tasks)
  • ./mcafee-backup-v1.3.script (to execute the script)
You then simply transfer the "firewall.config" file to a secure location, this is your backup. It is worth noting that the system will replace some passwords during this, so you may want to edit those specific lines.


License

Copyright Titania Ltd 2009. You are free to copy and distribute this script. If you make modifications to the script, these must be sent back to Titania for integration and potentially made available within future publicly available releases.

To download this tool for free go to www.titania-security.com/labs/mfbs

Monday, 24 September 2012

Nipper IP Calc- Free IP Calculator Tool

Nipper IPCalc is an easy to use IP calculator and replaces the previous Qt 3-based IPCalc tool. Nipper IP Calc enables you to specify IP address information in standard and hexidecimal forms and network addresses can be entered using CIDR, standard or hexidecimal forms.

For details of how to download the free tool go to www.titania-security.com/labs/nipperipcalc


Requirements

Nipper IPCalc requires the GNU C++ compiler*, CMake and, Qt libraries version 4 or greater.
Under Windows you can use the MinGW C++ compiler.


Building

To build Nipper IPCalc, first extract the archive and change into the source directory. Then execute the following commands:
mkdir build
cd build
cmake ../
make

Running

Simply run "nipper-ipcalc", enter your IP address information and then click the "Calculate" button.


Changes

Version: 1.0.0
Date   : 29/11/2009
Author : Titania Ltd
Changes: The following are a list of changes
         since the previous version:

           > Initial Qt 4 version of Nipper IPCalc

License

Nipper IPCalc is covered by GPL version 2.

For details of how to download the free tool go to www.titania-security.com/labs/nipperipcalc

Monday, 3 September 2012

SSLScan- Free SSL-based Tool

SSLScan determines what ciphers are supported on SSL-based services, such as HTTPS. Furthermore, SSLScan will determine the prefered ciphers of the SSL service.

For details about how to download this free tool go to www.titania-security.com/labs/sslscan


Requirements

SSLScan requires the GNU C compiler and the OpenSSL library. Both of these are usually installed by default on a number of Linux distributions. Although this program has not been tested on other platforms it should work if the requirements have been met.


Building

To build SSLScan, first extract the archive and change into the source directory. Then execute the following command:
gcc -lssl -o sslscan sslscan.c
On Apple Mac OS X you will need to install the ports version of OpenSSL as the version that comes with your Mac is missing a few things. So if you don't already have ports installed, download it from www.macports.org. You can install the latest OpenSSL using the following command:
sudo port install openssl
SSL Scan can then be built using the following command:
gcc -I/opt/local/include -L/opt/local/lib -lssl -lcrypto -o sslscan sslscan.c

Running

In its simplist form, SSLScan can be run with only one parameter, just specify the host to test. SSLScan will default to port 443 if a port is not specified.

The command line arguements for SSLScan are:
Command:
  sslscan [Options] [host:port | host]

Options:
  --targets=           A file containing a list of hosts to
                       check.  Hosts can  be supplied  with
                       ports (i.e. host:port).
  --no-failed          List only accepted ciphers  (default
                       is to listing all ciphers).
  --ssl2               Only check SSLv2 ciphers.
  --ssl3               Only check SSLv3 ciphers.
  --tls1               Only check TLSv1 ciphers.
  --pk=                A file containing the private key or
                       a PKCS#12  file containing a private
                       key/certificate pair (as produced by
                       MSIE and Netscape).
  --pkpass=            The password for the private  key or
                       PKCS#12 file.
  --certs=             A file containing PEM/ASN1 formatted
                       client certificates.
  --starttls           If a STARTTLS is required to kick an
                       SMTP service into action.
  --http               Test a HTTP connection.
  --bugs               Enable SSL implementation  bug work-
                       arounds.
  --xml=               Output results to an XML file.
  --version            Display the program version.
  --help               Display the  help text  you are  now

Third Party

Jabra has developed an XML parser for SSLScan which can be downloaded from http://search.cpan.org/~jabra/.


Changes

Version: 1.8.2
Date   : 19/06/2009
Author : Ian Ventura-Whiting (Fizz)
Changes: The following are a list of changes
         since the previous version:
            > Fixed output with HTML disabled
            > Fixed XML critical

Version: 1.8.1
Date   : 25/05/2009
Author : Ian Ventura-Whiting (Fizz)
Changes: The following are a list of changes
         since the previous version:
            > Fixed some compiler warnings.

Version: 1.8.0
Date   : 19/05/2009
Author : Ian Ventura-Whiting (Fizz)
Thanks : John Nichols
Changes: The following are a list of changes
         since the previous version:
            > Added SSL implementation workaround
              option.
            > Added HTTP connection testing.
            > Fixed Certification validation XML
              output. 
Version: 1.7.1
Date   : 20/04/2008
Author : Ian Ventura-Whiting (Fizz)
Thanks : Mark Lowe
Changes: The following are a list of changes
         since the previous version:
            > Added HELO for SMTP checks
            > Increased read buffer size
Version: 1.7
Date   : 18/04/2008
Author : Ian Ventura-Whiting (Fizz)
Changes: The following are a list of changes
         since the previous version:
            > Added STARTTLS SMTP capability
            > Fixed XML output format bug
Version: 1.6
Date   : 30/12/2007
Author : Ian Ventura-Whiting (Fizz)
Changes: The following are a list of changes
         since the previous version:
            > Added man page.
            > Improved certificate checking
            > Added Makefile
Version: 1.5
Date   : 25/09/2007
Author : Ian Ventura-Whiting (Fizz)
Changes: The following are a list of changes
         since the previous version:
            > Update to the license to make it
              BINARY compatible with OpenSSL. Its
              then easier for the packagers.
Version: 1.4
Date   : 03/09/2007
Author : Ian Ventura-Whiting (Fizz)
Changes: The following are a list of changes
         since the previous version:
            > Added Server Certificate ouput.
            > Added support for client certs.
            > Added support for private keys
              and password.
            > Added support for PKCS#12.
            > Fixed xml output.
Version: 1.3
Date   : 06/08/2007
Author : Ian Ventura-Whiting (Fizz)
Changes: The following are a list of changes
         since the previous version:
            > Added XML file output option.
            > Improved help text.
            > Added program URL.
Version: 1.2
Date   : 16/07/2007
Author : Ian Ventura-Whiting (Fizz)
Changes: The following are a list of changes
         since the previous version:
            > Removed unused variable
            > Other minor changes.
Version: 1.1
Date   : 13/07/2007
Author : Ian Ventura-Whiting (Fizz)
Changes: The following are a list of changes
         since the previous version:
            > Correction in banner text
            > Host:Port now directly from the
              command-line.
Version: 1.0
Date   : 13/07/2007
Author : Ian Ventura-Whiting (Fizz)
Notes  : Initial version of sslscan

License

SSLScan is covered by GPL version 3 with the following exclusion:
In addition, as a special exception, the copyright holders give
permission to link the code of portions of this program with the
OpenSSL library under certain conditions as described in each
individual source file, and distribute linked combinations
including the two.
You must obey the GNU General Public License in all respects
for all of the code used other than OpenSSL.  If you modify
file(s) with this exception, you may extend this exception to your
version of the file(s), but you are not obligated to do so.  If you
do not wish to do so, delete this exception statement from your
version.  If you delete this exception statement from all source
files in the program, then also delete it here.

For detailed information about how to download this free tool go to www.titania-security.com/labs/sslscan

Thursday, 30 August 2012

Network Security Auditing Tool- Free Trial Available

Nipper Studio Network Security Auditing Tool
Free trial at www.titania-security.com

Nipper Studio is a security auditing software that allows its users to produce detailed security reports on the vulnerabilities in their network devices (switches, routers, firewalls etc.) Nipper Studio works from the inside out by analysing the actual devices configurations, giving you a much more detailed report than a vulnerability scanner could produce. Furthermore the software never touches the network so Nipper Studio can be used in high security environments. A report at the level of a manual penetration tester is generated within seconds and displays:

  • Severity of the threat
  • Ease of resolution
  • Potential solutions to resolve the issue
(you can use either the CVSSv2 rating system or the established Nipper Studio Rating System and export results into various formats)
Nipper Studio also produces a mitigation report that provides the information to help organisations fix their network vulnerabilities with the smallest impact on their operations. When the fixes are made Nipper Studio can generate a comparison report that displays what changes have been made and how successful this has been in securing their networks.

Customizable settings include:
1. The ability to theme your report throughout with your own company branding;
2. Choose policy settings that are relevant to your organization and construct profiles that remember these settings;
3. Wholly or partly exclude sections and findings in the report. You can also hide sensitive information from the report;
4. Add your own notes to the report;
Nipper Studio is multi-platform and supports an extensive amount of devices, for a full supported device list go to www.titania-security.com/nipperstudio/devices 
For a free evaluation of the software go to www.titania-security.com

Friday, 24 August 2012

New Compliance Auditing Tool- Free Trial Available

Titania’s new compliance auditing tool, Paws Studio, is now available! After a period of in house and beta testing our professional auditor for workstations and servers can be evaluated for free.

With Paws Studio you can:

1.Perform compliance audits through either remote network auditing or manual access to the audit data in secure environments 

2.Produce advanced and easy to action reports with comprehensive summaries


3.Audit against pre-defined policies such as PCI, NSA, STIG, SANS and NERC


4.Define your own customised policy to suit your organisation

PLUS… Paws Studio is fully scriptable so can be written into your current processes.

For more information and for a free trial follow this link: https://www.titania.com/pawsstudio

Tuesday, 7 August 2012

Banner Grab- Free Connection, Trigger Based and Basic Information Connection Tool

Banner Grab is a tool that performs connection, trigger-based and basic information collection from network services. The program has two modes of operation; simple connection banner grabbing and the default mode, which attempts to collect additional information using triggers and simple service queries.
Unlike a number of other banner grabbing tools, Banner Grab supports SSL and can perform banner grabbing on SSL-based services.

More information and the most up to date download version can be found via a link on the Titania website under 'Resources' or follow the link https://www.titania.com/freetools?tool=bannergrab and scroll down.


Requirements

Banner Grab requires the GNU C compiler and the OpenSSL library. Both of these are usually installed by default on a number of Linux distributions. Although this program has not been tested on other platforms it should work if the requirements have been met.


Building

To build Banner Grab, first extract the archive and change into the source directory. Then execute the following command:
gcc -lssl -o bannergrab bannergrab.c
On Mac OS-X you can use the following command:
gcc -lssl -lcrypto -o bannergrab bannergrab.c
If for some reason you need to compile it without SSL support, it can be done with the following command:
gcc -DNOSSL -o bannergrab bannergrab.c

Running

Banner Grab can be run, in its simplist form, by specifying the host and port as parameters.

The command line arguements for Banner Grab are:
Command:
  bannergrab [Options] host port

Options:
  --udp                Connect  to  a  port  using  UDP.   The
                       default is to use TCP.
  --no-triggers        Collect only the connection banner,
                       no triggers and no SSL.
  --trigger=  Specify  the  trigger  to use.  Specify
                       DEFAULT to use the default trigger.
  --no-ssl             Prevent SSL connection creation.
  --no-hex             Output containing non-printable
                       characters are converted to hex. This
                       option prevents the conversion.
  --conn-time=   Connection timeout (default is 5s).
  --read-time=   Read timeout (default is 3s).
  --verbose            Show additional program details
                       such as any errors.
  --show-triggers      Show the supported triggers.
  --version            Show the program version.
  --help               Display the help text you are
                       reading now.

Triggers

For those of you that do not want to go through the code here is a brief description of what Banner Grabs actions will be when connecting to a port. This is of course dependant on the user not simply disabling the triggers.
Banner Grab will look at the port number that has been specified and try to match it to a trigger/set of triggers. It does NOT probe the service to determine this. If a trigger is found for that port then it will use that, otherwise it will use the default one.
The triggers for the service will be sent one after another and the response captured. It is as simple as that.
The triggers do the following:
   FTP
     * Asks for help.
     * Attempts to login anonymously.
     * Quits.

   SMTP
     * Says Hello.
     * Asks for help.
     * Attempts to VRFY postmaster.
     * Attempts to VRFY bannergrab123.
     * Attempts to EXPN postmaster.
     * Quits.

   Telnet
     * Sends two carridge returns.

   Finger
     * Attempts to enumerate a few users.

   HTTP(S)
     * Asks for OPTIONS.

   POP2/3
     * Quits.

   NNTP
     * Asks for HELP.
     * Lists the newsgroups.
     * Quits.

   FW1 Admin
     * Attempts to list IPs.

   FW1 Auth
     * Sends two carridge returns.

   LDAP(S)
     * Performs an Anonymous bind.
     * Gets a list of base Distinguished
       Names (DN).

   MSSQL
     * Attempts a login using BannerGrab
       user.

   MySQL
     * Waits longer for a MySQL response.

   Discard/Echo
     * Send echo.

   Chargen/Daytime/QOTD/SSH/VMWare/Printer
     * Send nothing.

   NTP
     * Queries time
     * Queries read list
     * Queries peers

   SNMP
     * Sends "public" community string
     * Sends "private" community string

   NetBIOS Name Service
     * Name query

   ALL OTHERS (Default)
     * Send OPTIONS and ask for HELP.

Licence

SSLScan is covered by the GPL version 3 licence with the following exclusion:
In addition, as a special exception, the copyright holders give
permission to link the code of portions of this program with the
OpenSSL library under certain conditions as described in each
individual source file, and distribute linked combinations
including the two.
You must obey the GNU General Public License in all respects
for all of the code used other than OpenSSL.  If you modify
file(s) with this exception, you may extend this exception to your
version of the file(s), but you are not obligated to do so.  If you
do not wish to do so, delete this exception statement from your
version.  If you delete this exception statement from all source
files in the program, then also delete it here.
You can get a copy of the GPLv3 license from www.titania-security.com

For legacy downloads and the latest download please go to the 'Resources' on the Titania website or follow the link https://www.titania.com/freetools?tool=bannergrab

Monday, 30 July 2012

Retrieving 3Com SuperStack 3 Configuration Files


We would recommend using HTTPS rather than HTTP for transferring your devices configuration as the latter provides no encryption. The procedure for getting the configuration from the device using HTTP(S) is as follows:
  1. Using your favorite web browser, connect to the HTTP(S) service provided by your 3Com SuperStack 3 firewall for remote management. You can do this by entering "https://" (recommended) or "http://" followed by your devices IP address.
  2. Logon using your administration username and password. 3Com SuperStack 3 firewalls default to using "admin" for the username and "password" for the password.
  3. Select from the menu on the right; "Tools".
  4. Select the "Configuration" tab at the top.
  5. Click the "Export" button and follow the instructions to save the device configuration to a file.

Monday, 23 July 2012

Getting the Config files from Check Point Based Firewalls

This configuration guide specifically focuses on Check Point firewall devices and those devices that run Check Point software such as Nokia IP and Crossbeam devices (collectively known as Check Point from this point on).

Check Point software can run on a variety of different operating systems and platforms. Nipper Studio requires a number of different configuration files from Check Point devices in order to perform the audit and these files can change between different configurations. This procedure will outline how to identify the configuration files that are required and how you can transfer them to your computer for processing with Nipper Studio. Ultimately you will end up with a directory containing Check Point configuration files that you can use.

Identifying the Configuration Files

Before continuing it is important to note that not all of these files may be on your system. On some deployments the information needed is stored in files with a different name. The sub-sections following this will show you how to search for those files depending on the firewall operating system / firmware.
The key files that you should look for are (names are case-sensitive on some systems and not all files will be present):
  • objects.C
  • objects.C_41
  • objects_5_0.C
  • rules.C
  • rulebases.fws
  • rulebases_5_0.fws
The files that you are looking for will probably be stored in a directory called "conf" or "database".

NOTE: If your device contains directories called "conf" and "database" with a number of the files listed above, you should select the "database" directory. Choosing the wrong directory will usually lead to Nipper Studio reporting that you have no firewall rules.
NOTE: The file list above does not represent a full list of the files used by Nipper Studio, you will need to get copy the entire configuration directory.

IPSO And Other UNIX Check Point Systems

On IPSO and other UNIX type systems you will most likely need to use a command line interface to search for configuration files. The command line interface posibilities are SSH, Telnet (not-recommended) or using a direct console connection. Mac OS X and GNU/Linux systems will already have tools to connect to those services ("ssh" and "telnet"), for Windows users you will probably need to download a tool such as PuTTY.

Once you are logged into your Check Point device you can search for files using the "find" command. For example you can search your entire system for the "objects.C" file using the following command:
     find / -name objects.C
The results will be 0 or more locations of that file on your system. So if you get no results, try the next file from the list above. On one of our test systems we get the following result from the command:
     /var/opt/CPsuite-R62/fw1/conf/objects.C
From that we can see that we will need the "/var/opt/CPsuite-R62/fw1/conf" directory from the system. If we were to change to the directory (using the "cd" command) and list the contents (using the "ls" command) we can see that some of the other files are present in the same directory.
     bash# cd /var/opt/CPsuite-R62/fw1/conf                                             
     bash# ls -l conf                                                                   
     total 21056                                                                        
     -rw-r-----  1 root  wheel     7168 Dec 22  1998 CPMILinksMgr.db.private            
     drwx------  3 root  wheel      512 Dec 22  1998 ConversionCache                    
     -rw-r--r--  1 root  wheel     1309 Oct  2 20:56 InoDistLocal.ini                   
     -rwxr-xr-x  1 root  wheel      169 Oct  2 20:56 InternalCA.C                       
     -rwxr-xr-x  1 root  wheel     1759 Oct  2 20:56 MVS_Default.W                      
     -rw-rw----  1 root  wheel     2904 Dec 22  1998 SDS_objects.c                      
     ...
     -rw-r--r--  1 root  wheel    57549 Oct  2 20:57 objects.C                          
     -rwxr-xr-x  1 root  wheel    36876 Oct  2 20:56 objects.C_41                       
     -rw-rw----  1 root  wheel   594000 Dec 22  1998 objects_5_0.C                      
     ...
     -rw-rw----  1 root  wheel       21 Dec 22  1998 rulebases_5_0.fws                     
     ...
It will probably be easiest to transfer the configuration to your system as a single file rather than as a large number of individual files. So we would recommend using the "tar" tool which should be available on your system. The "tar" command to create an archive stored as "/tmp/my-config.tar" has the following format:
     tar -cvf /tmp/my-config.tar <directory>
To make it easier to navigate to the configuration directory latter, we will change to the directory below the conf directory first. Then on our system we could use the commands:
     cd /var/opt/CPsuite-R62/fw1/
     tar -cvf /tmp/my-config.tar conf
The method of transfer will depend on what you have available. Standard systems will support SCP and FTP. You may also be able to make use of a USB pen device. To secure copy the file to a device that offers FTP you could use the following commands:
     ftp 
     ftp> bin                                                                                  
     ftp> hash                                                                                 
     ftp> put /tmp/my-config.tar
     ftp> quit
To Secure CoPy (SCP) the file to a SSH service with Secure Copy enabled, you could use the following command:
     scp /tmp/my-config.tar <username>@<ip-address>:<file-destination>
If you have SCP capabilities from your computer you could use the following to connect from your computer to the firewall:
     scp <firewall-username>@<firewall-ip>:/tmp/my-config.tar <filename>
If your firewall has a USB port you may be able to use that in order to transfer your configuration. These procedures may vary slightly depending on the UNIX varient:
  1. Insert the USB storage device into the USB port of the firewall.
  2. Wait a few seconds and use the "df" command to see if it has been automatically detected and mounted.
  3. If it has not been mounted, use "dmesg" to view the system messages to see what /dev/<devicename> it has been assigned. Then mount the device using the "mount /dev/devicename /mnt" command.
  4. Copy the file to the mounted USB device using a command such as "cp /tmp/my-config.tar /mnt/".
  5. Unmount the USB device, for example using the command "umount /mnt"
Windows Check Point Systems

On Check Point-based Windows systems you can use the Windows search facility in order to find the files. You can do this by right clicking on a disk or directory in Windows Explorer and selecting the "search" option. On some versions the search facility is shown at the top of the Windows Explorer window.

NOTE: The installation of Smart Dashboard and other Check Point tools may have included demo configuration files (accessed using the demo mode tick box in the interface). This may be picked up by your search and probably stored in a "PROGRAM\textbackslash cpml\_dir\textbackslash conf" directory. If you have several installations then you will probably have several copies of the demo files.
It will probably be easiest to transfer the configuration to your system as a single file rather than as a large number of individual files. You can do this under Windows using the compress folder facility. Using the right mouse button on the folder, select the "Send To" and then "Compressed (zipped) Folder" option. This will create the compressed folder containing the configuration files in the same directory.
Depending on your system setup the archived configuration file could be transferred to your system using a USB pen, FTP or using a network share.

Using The Configuration With Nipper Studio

Before you can use the configuration with Nipper Studio you will have to extract it from the archive file. The configuration can then be selected in Nipper Studio using the "Add Directory" option in the "New Report" wizard.


Monday, 9 July 2012

Retrieving Config Files from Cisco CatOS-Based Catalyst Switches


For this procedure you will need to use the Command Line Interface (CLI) of your Cisco device using an SSH client (such as OpenSSH or Putty), Telnet or through the console port. We would recommend using either SSH (for remote connections) or using a direct connection to the console port. Telnet provides no encryption of the communications and therefore your authentication credentials and configuration would be vulnerable if a malicious user were to monitor your connection.
  1. Connect to the Cisco using your favorite SSH client, Telnet or a direct console connection.
  2. Logon using your administration authentication credentials.
  3. Enter \data{enable} and type in your enable password.
  4. Execute the following CLI command and capture the output (possibly using the cut and paste facility):
    show config all
  5. Save the captured output to a file and remove any visible page lines (i.e. --More--).

Monday, 2 July 2012

Retrieving Config Files From Cisco IOS-Based Routers, Switches And APs



There are multiple different methods of extracting the configuration from your Cisco IOS-based router, switch or wireless access point. This guide outlines just two of those methods.

Using HTTP(S)

We would recommend using HTTPS rather than HTTP for transferring your devices configuration as the latter provides no encryption. The procedure for getting the configuration from the device using HTTP(S) is as follows:
  1. Using your favorite web browser, connect to the HTTP(S) service provided by your Cisco device for remote management. You can do this by entering "https://" (recommended) or "http://" followed by your devices IP address.
  2. Logon using your administration username and password.
  3. Click on the link to level 15 of the web console.
  4. Click on the "show" link.
  5. Click on the "running-config" link.
  6. Finally click on the "CR" link.
  7. Copy and paste the configuration into a file to use with Nipper Studio.

Using SSH, Telnet Or The Console

For this procedure you will be using the Command Line Interface (CLI) of your Cisco device using an SSH client (such as OpenSSH or Putty), Telnet or through the console port. We would recommend using either SSH (for remote connections) or using a direct connection to the console port. Telnet provides no encryption of the communications and therefore your authentication credentials and configuration would be vulnerable if a malicious user were to monitor your connection.
  1. Connect to the Cisco using your favorite SSH client, Telnet or a direct console connection.
  2. Logon using your administration authentication credentials.
  3. Enter \data{enable} and type in your enable password.
  4. Execute the following CLI command and capture the output (possibly using the cut and paste facility):
    show run
  5. Save the captured output to a file and remove any visible page lines (i.e. --More--).

Monday, 25 June 2012

Retrieving Config Files From Cyberguard / Secure Computing Firewalls (SecureOS 6)


The configuration can easily be obtained from SecureOS 6 firewalls, but it is not directly usable in the form extracted from the firewall. This section details how to obtain the configuration from a SecureOS 6 firewall.
To obtain the XML configuration file usable by Nipper Studio, follow the procedure below:
  1. Log into the web-based administration interface on your SecureOS 6 devices.
  2. Click on the "Control" option from the menu bar.
  3. Click on the "Firewall" menu and select the "Save Configuration" option. This will save the configuration into a .jar file on your system.
  4. You will need to extract the .jar file which is an archive similar to a .zip file. The 7-zip tool (http://www.7-zip.org) under Windows can be used to extract the files. Similar tools exist on other platforms.
  5. Inside the .jar file is a "Config.tar" file, another file archive. This too can be extracted using the 7-zip tool under Windows or a tar command.
  6. Inside the .tar file is the "FwConfig.xml" configuration file to use with Nipper Studio.

Monday, 18 June 2012

Retrieving the Config File from Fortinet Fortigate Devices



There are multiple different methods of extracting the configuration from from your Fortinet Fortigate devices, this guide outlines two of those methods.

Using HTTP(S)


We would recommend using HTTPS rather than HTTP for transferring your devices configuration as the latter provides no encryption. The procedure for getting the configuration from the device using HTTP(S) is as follows:
  1. Using your favorite web browser, connect to the HTTP(S) service provided by your Fortinet Fortigate device for remote management. You can do this by entering "https://" (recommended) or "http://" followed by your devices IP address.
  2. Logon using your administration username and password.
  3. Select the "Systems" tab, then the "Maintenance" option.
  4. Click the "Backup" button to save the configuration to your computer


Using SSH, Telnet Or The Console

For this procedure you will be using the Command Line Interface (CLI) of your Fortinet Fortigate device using an SSH client (such as OpenSSH or Putty), Telnet or through the console port. We would recommend using either SSH (for remote connections) or using a direct connection to the console port. Telnet provides no encryption of the communications and therefore your authentication credentials and configuration would be vulnerable if a malicious user were to monitor your connection.
  1. Connect to the Fortinet Fortigate using your favorite SSH client, Telnet or a direct console connection.
  2. Logon using your administration authentication credentials.
  3. Execute the following CLI command and capture the output (possibly using the cut and paste facility):
  4. show full-configuration
  5. Save the captured output to a file and remove any visible page lines (i.e. --More--).