More Than a Firewall
There was a recent discussion on my FireWall-1 Wizards mailing list (http://www.phoneboy.com/wizards/), in which an external auditing firm told a company that it needed to tighten up its network securityspecifically, what it allowed outbound from its network (which was pretty much everything). The security manager for this company stated that he felt the auditing firm was overreacting because there was a firewall and the company ran anti-virus, so that was enough.
A firewall is a device that allows multiple networks to communicate with one another according to a defined security policy. They are used when there is a need for networks of varying levels of trust to communicate with one another. For example, a firewall typically exists between a corporate network and a public network such as the Internet. It can also be used inside a private network to limit access to different parts of the network. Wherever there are different levels of trust among the different parts of a network, a firewall can and should be used.
Firewalls and other security devices are simply tools for enforcing a given security policy. A proper security policy defines who can do what where, and under what circumstances. A firewall cannot protect you if it is not given a security policy that protects you. For instance, if a firewall is put in place that is set to "pass all traffic," it is not really protecting you from anything.
Network firewalls are devices that secure a network perimeter. They are only effective with traffic that passes through it. If the traffic goes around it, say, through a dialup modem attached to a workstation on the internal network, a firewall certainly can't enforce any security on the device.
Even if all traffic goes through the firewall, a firewall cannot protect you from everything. Authorized services could potentially be used to perform destructive actions. One need only point out the various email-based attacks or attacks against Microsoft's IIS Web Server to show this. A firewall also cannot protect you from acts of "social engineering" against your users, which can trick users into giving access to sensitive information such as passwords. Firewalls do not protect against all forms of attack against your network. This is due to the fact that firewall vendors are often playing "catch up" with all the different forms of attack present. Firewalls also cannot protect you against any threat to your physical premises, such as a thief walking away with someone's laptop containing sensitive data, cutting a critical network cable, or worse.
The road to a secure network begins with an assessment of what you have, a lay-of-the-land, if you will. This means generating a map showing which logical and physical networks exist, how they are accessed, and how they connect together. Although it's not usually necessary to document individual user workstations, you most certainly should document any Wide Area Network (WAN) and/or Internet connections, dial-up connections, routers, firewalls, and important servers.
Once you know what you have, you should work to minimize the number of entry points into the network. This makes the network much easier to secure. You should also consider any "zones of trust" that exist in the network. For instance, sensitive Human Resources or Accounting functions may need to take place in a separate part of the network, which should be inaccessible to all but authorized users. There may be parts of the network that contain users who cannot be trusted, or they may contain machines of unknown danger, such as a testing or training lab.
The next thing is to craft an overall security policy document, which lays the overall foundation for the way your organization approaches security-related issues without going into technical details. It needs to explain which resources are important, designate who is responsible for those resources, and give some general guidelines for protecting those resources. Furthermore, the policy needs to be clear and concise so that the people it affects can understand it.
You may have heard or seen the adage that security is inversely proportional to convenience. An open network is certainly convenient, but it is by no means secure. A totally inaccessible network is secure, but it isn't convenient. These are extremes, of course. There's usually an acceptable middle ground where the network is useful, yet reasonably secure.
The truth is, each situation is different. A security policy that works well for a college campus may make no sense at all for a bank. However, a general guideline is to allow access to only the machines and services that are necessary, and nothing else. Business requirements will often dictate what will be necessary here. An analysis must be done to determine if allowing a particular service through the firewall presents too great a risk. It's a balancing act because some services, such as Web access, have both benefits (people can access information) and down sides (viruses, vulnerabilities in the Web browser that malicious site owners put up to compromise the host operating system). In a certain large financial institution, access to the Internet with a Web browser is simply not allowed by the firewall because it was deemed "too dangerous" to use. Most other companies have not taken this step because they feel the benefit outweighs the potential risks. The bottom line is that you need to make this call yourself for whatever service you want to permit.
An outbound security policy that allows all traffic to leave the internal network is generally not wise. I once worked with a customer who had address translation that was employed on a customer's firewall where all internal clients appeared on the Internet, as if it were coming from the firewall's external address. The security policy permitted everything from the non-routable network. Meanwhile, a Trojan horse made its way into their network. This Trojan horse was a kind of port scanner that ended up causing problems for the Internet firewall because of the limits to the number of connections it can handle. What we did to combat the Trojan horse was restrict outbound access to specific services. This slowed the Trojan horse down, and we could easily identify which machine(s) were infected with this Trojan horse. Make sure you are specific about whom you allow to do what and where.
One of the most important things you need to do to establish a secure network is to get management buy-in. This may mean spending some time with upper management, explaining to them the importance of network security. Without support from upper management, all attempts to implement proper network security are doomed to fail. Part of the buy-in includes having them make someone responsible for security and ensuring that they have the appropriate authority to do the job.
The last important piece of a security policy: educating everyone affected by it. This means letting people know what the policies are so they know what to expect when connecting to or using the network.
After you have done these steps to implement firewalls and other security devices, congratulations, your network is secure. Or is it? The fact of the matter is that your network will never be 100% secure. Vigilance is required to make sure that your network remains secure because some new threat might compromise your network security. The components that enforce these policies must also be analyzed to make sure they are providing the best security possible. Firewalls and other security devices must be updated regularly to make sure they are less susceptible to denial of service attacks or bugs. The policies themselves must be continually re-examined to make sure they are adequate.
With a good security policy founded in sound practices is in place, you go a long way toward keeping your network secure.