Pages

Monday, June 18, 2012

Endian Open Source Firewall : Set Root password to 4) Restore Factory Defaults Console Menu

Endian Firewall Community (EFW) is a "turn-key" linux security distribution that turns every system into a full featured security appliance with Unified Threat Management (UTM) functionality. The software has been designed with "usability in mind" and is very easy to install, use and manage, without losing its flexibility.
The features include a stateful packet inspection firewall, application-level proxies for various protocols (HTTP, FTP, POP3, SMTP) with antivirus support, virus and spam-filtering for email traffic (POP and SMTP), content filtering of Web traffic and a "hassle free" VPN solution (based on OpenVPN).

EFW is a pure Open Source solution: Endian promotes its development, working with the Open Source community to build a complete, secure and stable firewall exclusively from Open Source software.

In server, It Shows
Management URL: https:// IP Address :10433
Green IP : IP Address /24
----------------------------------

0) Shell
1) Reboot
2) Change Root Password
3) Change Admin Password
4) Restore Factory Defaults

Choice :

In this console menu except Reboot and Restore Factory Defaults require root password to execute.  In my opinion Reboot without Root password is not an issue. But Restore Factory Defaults had no security check and any one can do it at any time, it is very critical issue. Because its rewrite every thing which we had done in firewall to work in our environment. To protect or prevent this option from any one to Root user we had to edit the file /usr/sbin/efw-console

Find the class ActionFactoryDefaults(object): section in efw-console and modify into this way.

 class ActionFactoryDefaults(object):
    description = "Restore Factory Defaults"

    @staticmethod
    def run(console):
     if not console.check_root_password():
            return
     else:
         sys.stdout.write("*** WARNING: This will destroy all your current settings ***\n\n")
         if console.getkey("Are you *REALLY* sure that you want to ? [y/N] ", echo=True, newline=True).lower() == "y":
            console.reset_signals()
            sys.stdout.write("\033[H\033[J")
            sys.stdout.write("Restoring Factory Defaults (system will reboot)...\n")
            subprocess.call(["/usr/local/bin/factory-default.sh"], shell=False)

 Note: Indent the lines as show above is very important otherwise you get error.

Save the file and reboot Endian Firewall and check the 4th option. Now it will prompt for Root Password

No comments:

Post a Comment