Securing my wireless network

This content is 19 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Last week I wrote about upgrading my wireless network. It’s been running well since then, so this afternoon I decided to go ahead with stage 3 – configuring wifi protected access (WPA). As I haven’t set up a RADIUS server here, and to be honest, it would be overkill for a small network like mine, I decided to implement WPA-PSK (pre-shared key), as detailed in Steve Lamb’s post (and blogcast) on the subject.

Initially, it all went well, simply setting the access point to use WPA-PSK and defining a passphrase. Within a few minutes, I had entered the passphrase on two of my notebook PCs and all was working well (one using a Compaq WLAN MultiPort W200 and one using an Intel PRO/Wireless 2200BG network connection) but then I hit some real problems. My wife’s PC (the whole reason for us having a wireless network) and my server were refusing to play with the access point displaying the following message when I selected the wireless network and entered the network key:

Wireless configuration

The network password needs to be 40 bits or 104 bits depending on your network configuration.

This can be entered as 5 or 13 ASCII characters or 10 or 26 hexadecimal characters.

This seemed strange to me – there was no mention of any no such restrictions when I set up the WPA-PSK passphrase (the network key). With one machine running Windows XP SP2 and the other running Windows Server 2003 SP1, WPA support shouldn’t have been a problem (I double-checked the server with the D-Link AirPlus DWL-520+ wireless PCI adapter and once I’d manually switched the properties to WPA-PSK using TKIP, I was able to enter the network key and connect as normal).

It seems that for some reason, the D-Link card had defaulted to using WEP, and sure enough, once I set it to use WPA-PSK, the network description changed from security-enabled wireless network to security-enabled wireless network (WPA).

So, three machines working, one to go.

I read in Kathryn Tewson and Steve Riley’s security watch: a guide to wireless security article that WPA is “both more secure and easier to configure than WEP, but most network cards made before mid-2003 won’t support it unless the manufacturer has produced a firmware update”. The problem machine was using a Compaq WL110 Wireless PC Card, which I was given around 2002/3 (when we first put in the 802.11b network) so it sounded plausible that I might need a firmware update. A little more googling turned up the does/can the WL110 support WPA? thread on the HP IT Resource Center which gave me the answer. No, there is no firmware upgrade (card support was dropped before the WPA specification was finalised), but if you download the Agere version of the drivers, and tell Windows XP that the WL110 is a 2Wire Wireless PC Card, WPA is available and it works (even inside the WL210 PCI adapter)!

So, that’s all done – a working, (hopefully) secure, wireless network, all for the price of a new access point.

Upgrading my wireless network

This content is 19 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

As I blogged previously, I experienced problems with my wireless network after I attempted to secure it using wired equivalent privacy (WEP). My 802.11b access point didn’t support WiFi protected access (WPA), so I turned off all the security (except MAC address filtering), thinking that there’s nothing here worth stealing anyway (except my bandwidth, and I don’t mind if my neighbours share my connection from time to time). Then, last week I attended Steve Lamb’s presentation on Wireless security and remote access and one point he made really worried me – what if someone was using my connection for something illegal? How could I prove that it wasn’t me (my ISP’s logs would show the IP address of my ADSL router and my account details)… unfortunately the answer is “with great difficulty”.

Whilst I live on a pleasant housing estate on the edge of a rural market town and I like my neighbours, I don’t know what their Internet interests are, and I didn’t want to run that risk. That meant only one thing – the wireless security must come back on – and ideally using WPA or WPA2.

Stage 1 was to buy a new access point (for not too much money). My budget of £40 (+VAT) meant that choices were somewhat limited. I had considered the Linksys WRT54G and WRT54GC until the friendly people at broadbandstuff highlighted that these devices don’t include a modem – I hadn’t realised that there is a difference between a broadband router (which is for cable) and an ADSL wireless gateway (which includes an ADSL modem). After that, I considered the Linksys WAG54G and it’s replacement, the WAG354G, but both were slightly over my budget and some articles I read suggested that the firewall wouldn’t let me configure my own rules. Thinking about it, I realised that I don’t need a new router – my Solwise SAR 110 has been working well since I stealthed it (I’ve since opened up a few ports and occasionally have to reboot, which I suspect is due to a denial of service attack, but thankfully not too often). After deciding that I only need an access point, I considered models from Linksys, NetGear and D-Link. The Linksys WAP54G looked good, until I read an (admittedly quite old) Toms Networking review that suggested it’s not too great on a mixed 802.11b and 802.11g network. I don’t like the styling on the consumer-focused NetGear equipment, but the business-focused WG102 looked good, had a great specification, but was too expensive for me this time around, so I decided to go for the D-Link DWL-2000AP+ instead, because:

  • It’s cheap (£35.99+VAT).
  • They had stock at RL Supplies (so I could pick one up on my way home).
  • I can’t follow the guideline of going for a one-brand WiFi infrastructure but I already have a D-Link DWL-520+ wireless PCI adapter in my server and using D-Link equipment (supporting AirPlus) would enable 22Mbps running (whilst my mixture of Compaq and HP-branded 802.11b kit would still run at 11Mbps and the Intel card in my Fujitsu-Siemens notebook would run at the full 54Mbps).
  • It supports WPA (although not WPA2).

D-Link DWL-2000AP+AirPlus G+

Stage 2 was to migrate from the old to the new access point. This was remarkably painless (D-Link DWL-2000AP+ firmware version 2.11 6 April 2005):

  1. Note the details of the old access point configuration before switching it off.
  2. Set the IP address on a client PC (wired connection) to use the 192.168.0.0/24 subnet.
  3. Browse to http://192.168.0.50/ and log on with the username admin and a blank password.
  4. Run the setup wizard from the access point Home/Wizard page to set the admin password, SSID and channel (I left this at 6 as I already know that my neighbours are using 1 and 11) and encryption level (none at this stage). Restart the access point when prompted.
  5. From the Home/LAN settings page, change the IP address of the access point to something suitable on the correct subnet (this will automatically change the settings for the DHCP server on the access point, but this is disabled by default in any case) and restart the access point when prompted. At this point you can reset the client PC to use the original IP settings (DHCP in my case).
  6. From the Advanced/Filters page, enter the MAC addresses for any devices which need to connect to the access point and select the option to only allow the defined addresses to connect. Annoyingly, the access point needs to restart after each address is added, but it does have a handy clone feature to read the MAC address of each connected device and add it to the list of allowed addresses. If the MAC addresses are unfamiliar, use the client PC to ping known devices and then read the ARP cache (arp -a) to match MAC address to IP address.
  7. From the Home/Wireless page, change the access point name (from the default of DWL-2000AP+ to something which matches your naming standards). I used the name I had assigned to the existing access point, and which was already in my DNS. Restart the access point when prompted.
  8. Finally, from the Tools/System page, save all settings to the local hard drive (default filename is config.bin).

Stage 3 is to configure WPA; however I want to leave the network running unsecured for a while longer, just to check that the mix of 11, 22 and 54Mbps 802.11b and 802.11g clients is working well. Once I’m happy with that, I’ll lock down the network. In the meantime, check out Steve Lamb’s post (and blogcast) on the subject.

Wireless security and secure remote access

This content is 19 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Last night, I attended Steve Lamb‘s Microsoft TechNet UK briefing on wireless security and secure remote access. I won’t repeat the entire content here, because Steve has an article in the November/December issue of Microsoft TechNet magazine, entitled improve your web security with encryption and firewall technologies, which, when combined with Kathryn Tewson and Steve Riley’s security watch: a guide to wireless security article, just about covers the content of the event. Having said that, there were a few more snippets that came out during the presentation, which I’ve plagiarised (and extended) in the rest of this post…

Wireless Security

Anyone who needs to secure a Wireless network at home should check out Steve Lamb’s blogcast on securing a wireless router and Windows XP and, although I’ve already linked it above, I’ll repeat that Kathryn Tewson and Steve Riley’s security watch: a guide to wireless security article is also worth a read. Further information is also available on the Microsoft website.

Some additional notes that I took during Steve’s presentation were that:

  • Wireless network keys can be stored on a USB token.
  • Wired equivalent privacy (WEP) is often considered insecure but consider the name – the equivalency part indicates that it offers the same level of security as a wired network. Yes, it can be broken into, but so can a wired network with public access to the building). Wi-Fi Protected Access (WPA) (or preferably WPA2) is better and dynamic WEP is a half-way house, but whatever security is employed, the wireless network still needs to be easy to use.
  • There are sites on the ‘net that will show you how to break a wireless (or other) connection (if you think it’s irresponsible of me to link that site, you could also find it using a search engine, so I figure that it’s better that the methods are well known, than only being known by the bad guys).
  • Contrary to popular belief, there is no point in securing the SSID for a network as it is transmitted unencrypted (even on a network secured with WPA or WPA2). Ditto for media access control (MAC) addresses, which are easily spoofed.
  • Even WPA doesn’t do anything to prevent a denial of service (DoS) attack and WPA2 (802.11i) doesn’t stop all DoS attacks.
  • 802.1x is port-based authentication and applies equally to both wired and wireless networks. It does have weaknesses, including that it will only authenticate the initial connection. In a wireless configuration, man-in-the-middle (MitM) attacks can be guarded against by requiring the WAP to identify itself using certificates (using a group policy object).
  • WEP requires Windows XP. WPA requires Windows XP SP1, WPA2 requires Windows XP SP2 and a hotfix (see Microsoft knowledge base article 893357).
  • The Windows 2000 Internet authentication service (IAS) can be used as the RADIUS server component in a secure wireless deployment; however Windows Server 2003 supports auto-enrolment (which when used for computer and user certificates will make life much easier).
  • Windows XP will (by default) allow access to its nearest access point, even if it is not secure.

Very importantly – if (like I did), you think that your wireless network (e.g. at home) doesn’t need to be secured because there’s no data of value to be had and anyway, you have bandwidth to spare which you don’t mind your neighbours using, consider the implications of someone using your wireless network to access the Internet and perform illegal activities, which your ISP can trace back to you via your IP address. Having thought about that, I’ll be buying a new wireless access point very soon.

Secure Remote Access

Microsoft are positioning virtual private networking (VPN) technology as no longer the best solution for providing corporate remote access and I tend to agree. The idea of giving an untrusted computer an IP address from the internal network fills me with fear (unless some quarantining is in place). VPNs “blur” the network edge and anyway, do remote users need full network access? I’ve often accidentally printed a document in the office whilst working at home and then had to ask a colleague to retrieve and dispose of it for me (wasting paper, printer resources and somebody else’s time). Some solutions will use VLAN technology to limit the network access for VPN users – there are other methods too, especially when considering that 90% of VPN users only really want to read their e-mail. For example, Outlook Web Access, whilst having improved it’s interface capabilities dramatically with each new release, is still not really a great solution for access from outside the corporate firewall (it’s good for allowing users to access mail without setting up a MAPI profile, but is heavily reliant on ActiveX controls, which may not be allowed in an Internet cafe, and is also a risk if the remote client has a keylogger installed) – full client Outlook using HTTPS over RPC on a notebook/tablet PC is a far better option – totally transparent from an end user perspective (although still a problem if access is required if an e-mail links back to internal resources to retrieve a document).

Steve Lamb’s TechNet magazine article (and my previous post on securing the network using Microsoft ISA Server 2004) elaborate on the need for application layer firewalling rather than blindly allowing HTTP and HTTPS traffic through the firewalls. Other measures employed include pre-authentication and URL scanning.

SSL VPNs are another method of providing remote access (even though they are not really VPNs, but are actually just remote desktops in a browser). Windows Terminal Services can provide basic SSL VPN functionality, which can also be extended with products from Citrix.

Operating over the remote desktop protocol (RDP), which is based on the International Telecommunications Union (ITU) T.120 protocol family and is therefore independent of network and transport protocols, these solutions use compression and caching to reduce bandwidth requirements and support network load balancing. Windows Server 2003 brings a number of terminal services enhancements (over Windows 2000) including:

  • Connection to the console session (in remote administration mode).
  • Control of RDP options via group policy.
  • WMI provider for scripted terminal services configuration.
  • ADSI provider for access to per-user terminal services profiles.
  • Improvements to the terminal server manager MMC snap-in (reduced automatic server enumeration).
  • Ability to limit users to a single session.
  • Improved security:
    • Remote Desktop Users security group (which can be used in place of the Everyone group to fine tune access control.
    • 128-bit RC4 encryption.

Securing terminal services comes back to the well-known principle of defence in depth:

  • A physically secure terminal services server.
  • A secure operating system configuration.
  • A secure terminal services configuration.
  • Network path security.
  • Using the registry to fine-tune control over terminal server sessions (probably overkill, but using group policy to control access is a similar principle).

Using the remote desktop web connection ActiveX control, terminal services can be provided across the web (and optionally secured using HTTPS). The initial client contact is to http(s)://servername/tsweb/ and the ActiveX control is downloaded over HTTP (TCP port 80) or HTTPS (TCP port 443). Once the browser has the ActiveX control installed, the user can connect to the terminal server over TCP port 3389.

If full VPN access is still required (and hopefully the methods above will avoid the requirement for this), then VPN server placement must be carefully considered. Running an encrypted PPTP or L2TP+IPSec VPN connection through a standard packet filtering firewall effectively bypasses the firewall as the VPN port will be open on internal and external firewalls and the traffic inside the connection will not be inspected.

Most network administrators will be alarmed if you propose the installation of ISA Server as the corporate firewall even though ISA Server 2004 has now achieved common criteria evaluation assurance level 4+. ISA Server 2004 is a perfectly good firewall (assuming that the underlying Windows platform is also well-managed), but it will probably be easier to justify to network administrators by using ISA as an additional server in the DMZ, or as the inner firewall (between the DMZ and the internal network). This way, the encrypted connection can be terminated at the ISA server and the firewall can inspect the inbound traffic.

Finally, if a VPN connection must be used to extend the corporate network to remote clients, then network quarantine controls should also be put in place. Full network access protection (NAP) is expected with the next version of Windows Server (codenamed Longhorn) but even now, Windows Server 2003 SP1 routing and remote access service (RRAS) allows for the provision of network access quarantine control for remote clients. The current Microsoft implementation involves using the connection manager administration kit (CMAK) to construct a custom RRAS client which includes a number of post-connection actions. Until these are passed, then vendor-specific options remain in place which prevent the remote VPN client from accessing the network. Unfortunately it is also possible for a technically able user to spoof the message which allows the vendor-specific attributes to be removed, but in reality this is a small risk. Microsoft’s NAP and Cisco’s network access control (NAC) will make this far more effective, extending the scope of control to include wired and wireless clients (as well as VPN clients).

Trying to resolve wireless LAN connectivity issues

This content is 19 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Somewhat ironically, as I scraped the ice off my car window early this morning, I was prompted to blog about the issues which the summer heat had caused on my wireless (802.11b) network earlier this year. In truth, like many planned posts to this blog, it’s something I’ve been meaning to write about for a while now…

It all started when I tried to make two changes at the same time on my wireless access point (I should know better). After having problems setting up WEP (I got it working, but Windows XP kept on dropping out and re-connecting to the network every few minutes), I tried a firmware upgrade (in the hope that would fix things, or even allow WPA). The firmware upgrade didn’t help and the drop-outs continued, especially with one PC in another room (about 10 metres away but with a few wood/plasterboard walls in between).

At about the same time, we had new next door neighbours on one side, and our neighbour on the other side put a wireless network in his house.

Added to that it seemed that the remote PC would fail to connect whenever the weather was hot…

A lack of WiFi security using WEP/WPA is something I can live with (in the short term – I do use MAC address filtering, but if anyone was that bothered they could monitor traffic, capture a valid address and spoof it), so I set about investigating the other issues, including why hot weather would affect WiFi connectivity! Reading around on the ‘net unearthed a load of advice (but nothing specific about the weather), including the following (mostly from PC World magazine’s article on wireless networks that do more, Netgear’s advice on improving wireless range by tuning equipment, HP’s prevent wireless interference article and Microsoft’s 10 tips for improving your wireless network):

  • Picking the best location. Distance, and the objects in between a computer and a wireless access point (WAP) will all affect performance, as will the height above the floor, distance from a wall and proximity to metal objects (including CDs/DVDs!). The fact that my WAP needs to be connected to both power and wired network meant that I couldn’t put it in the middle of the house, but I did manage to move it along the wall so it was a little bit closer to the remote PC.
  • Change channels. the 2.4GHz spectrum used by 802.11b is particularly susceptible to interference from items such as microwave ovens, 2.4GHz cordless telephones, power lines, Bluetooth devices, light fixtures and of course other 802.11b networks. Whilst the 802.11b band is divided into 11 channels, each 22MHz wide, they overlap one another and only channels 1, 6, and 11 are totally separate. I wondered if the new networks in the neighbourhood were interfering with ours and after installing Network Stumbler (which I found from the Tech FAQ 802.11 software tools page), I found that one neighbour’s WPA-protected router was using channel 1 and that the other side were using channel 11, so I picked channel 6. I’m not sure how 802.11g is affected (both my neighbours were using 802.11g), but one article I read suggested that 802.11a is less likely to experience interference.
  • Boost the signal. I’ve yet to try out the Pringles can antenna idea (or the alternatives from hackaday and Shawn Morton) but 802.11b networks can be boosted by either purchasing an additional antenna, or by just making sure that it is upright (802.11a networks already operate at the maximum permitted signal strength). Other measures include omnidirectional antennas but a new WAP would have been cheaper (and would let me move up to 802.11a/g).
  • There’s also a whole load of discussion about the correct Windows XP wireless configuration. None of that really helped (and it was all working fine until it got hot outside and I upgraded the WAP firmware) but there are two interesting threads at Overclockers and ARS Technica.
  • Think about what else might be interfering with the signal – even something as innocuous as a stack of CDs, as explained by Don Jones’ cleaning up wireless clutter article.

I still haven’t found out if the weather really does affect WiFi connectivity (I guess it could as extreme weather does affect TV and radio reception) but it seems strange we’ve not had a problem in previous years. If anyone has any ideas I’d be glad to hear them.

RTFM…

This content is 19 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

I haven’t really come across Fujitsu PCs and servers since I left ICL in 2000; but now I’m back on board at Fujitsu Services (same company – different name), not surprisingly, my new work laptop is a Fujitsu Siemens Lifebook S7010D. It seems like a really good notebook PC (although I find the absence of quick launch function keys in order to make room for a PIN-entry security pad a little strange – I would have preferred an integrated fingerprint reader like those offered on selected IBM ThinkPads).

When I brought the laptop home and the onboard wireless LAN card didn’t detect any of the four wireless networks within range of my home office, I naturally assumed it was broken (based on previous experience with a Dell Latitude D600); but then I had a similar problem with Bluetooth communications so I did the unthinkable (for any self-respecting IT infrastructure consultant) – I called the IT helpdesk.

In what must have qualified for my most embarrassing helpdesk call ever, I found out that there is a switch on the front of the PC to enable/disable the wireless LAN and Bluetooth module. Once enabled, everything sprung into life. Doh!

Maybe next time I’ll RTFM.

Securing the network using Microsoft ISA Server 2004

This content is 20 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Several months ago, I attended a Microsoft TechNet UK event where the topic was ISA Server 2004 network design/troubleshooting and inside application layer firewalling and filtering. It’s taken me a while to get around to writing up the notes, but finally, here they are, with some additional information that I found in other some similar presentations added for good measure.

The need for network security

The Internet is built on internetworking protocol (IP) version 4 – which was not designed with security in mind. In the early days of the Internet, security clearance was required for access – i.e. physical access was restricted – so there was no requirement for protocol security. At that time (at the height of the cold war), resistance to nuclear attack was more important than protecting traffic and everyone on the network was trusted. The same networking technologies used to create the Internet (the TCP/IP protocol suite) are now used for internal networks and for TCP/IP, security was an afterthought.

Security should never be seen as a separate element of a solution – it should all pervasive. At the heart of the process should be a strategy of defence in depth – not just securing the perimeter or deploying some access controls internally, but placing security throughout the network so there are several layers to thwart malware or a hacker. Ideally, an administrator’s security strategy toolbox should include:

  • Perimeter defences (packet filtering, stateful packet inspection, intrusion detection).
  • Network defences (VLAN access control lists, internal firewall, auditing, intrusion detection).
  • Host defences (server hardening, host intrusion detection, IPSec filtering, auditing, active directory).
  • Application defences (anti-virus, content scanning, URL switching source, secure IIS, secure Exchange).
  • Data and resource defences (ACLs, EFS, anti-virus, active directory).

Each layer of defence should be designed on the assumption that all prior layers have failed.

With users becoming ever more mobile, defining the edge of the network is becoming ever more difficult. Firewalls are no panacea, but properly configured firewalls and border routers are the cornerstone of perimeter security. The Internet and mobility have increased security risks, with virtual private networks (VPNs) softening the perimeter and wireless networks further eroding the traditional concept of the network perimeter.

A firewall alone is not enough

Some administrators take the view that “we’ve got a firewall, so everything is fine”, but standard (layer 3/4) firewalls check only basic packet information and treat the data segment of the packet as a black box. This is analogous to looking at the number and destination displayed on the front of a bus, but not being concerned with the passengers on board. Performance is often cited as a the reason for not implementing application layer (layer 7) firewalls, which inspect the data segment (e.g. for mail attachment checking, HTTP syntax, DNS syntax, correct SSL termination, URL blocking and redirection, RPC awareness, LDAP, SQL, etc.). However, Microsoft claim to have tested Internet Security and Acceleration (ISA) Server 2004 up to 1.9Gbps throughput on a single server with application filters in place (at a time when most corporates are dealing with 2-10Mbps).

Consider the standard security pitch, which has two elements:

  1. The sky is falling (i.e. we’re all doomed).
  2. Our product will fix it (i.e. buy our product).

In truth, no system is 100% effective and the firewall needs to be supplemented with countermeasures at various depths (intrusion detection systems, etc.). If there was a 100% secure system it would be incredibly expensive – in addition, threats and vulnerabilities are constantly evolving, which leaves systems vulnerable until a new attack is known and a new signature created and distributed. Heuristical systems must be supplemented with behavioural systems, and some intelligence.

Just because 100% security is not achievable, it doesn’t mean that it is any less worthwhile as a goal. We still lock our car doors and install immobilisers, even though a good car thief can defeat them eventually. The point is that we stop the casual attacker, buying time. Taking another analogy, bank safes are sold on how long it will take a safe cracker to break them.

Whatever solution is implemented, a firewall cannot protect against:

  • Malicious traffic passed on open ports and not inspected at the application layer by the firewall.
  • Any traffic that passes through an encrypted tunnel or session.
  • Attacks on a network that has already been penetrated from within.
  • Traffic that appears legitimate.
  • Users and administrators who intentionally or accidentally install viruses or other malware.Administrators who use weak passwords.

HTTP is the universal firewall bypass and avoidance protocol

In the late 1990s, as business use of the Internet exploded, we became to rely ever more on HTTP, which has earned itself a nickname – UFBAP – the universal firewall bypass and avoidance protocol.

Firewall administrators are obsessed with port blocking and so all non-essential firewall ports are closed; but we generally assume that HTTP is good and so TCP port 80 (the default port for HTTP) is left open. Because it’s so difficult to get an administrator to open a port, developers avoid such restrictions by writing applications that tunnel over port 80. We even have a name for it (web services) and some of our corporate applications make use of it (e.g. RPC over HTTP for Outlook connecting to Exchange Server 2003).

This tunnelling approach is risky. When someone encapsulates one form of data inside another packet, we tend to allow it, without worrying about what the real purpose of the traffic is. There are even websites which exploit this (e.g. HTTP-Tunnel), allowing blocked traffic such terminal server traffic using the remote desktop protocol (RDP) to be sent to the required server via TCP port 80, for a few dollars a month.

In short, organisations, tend to be more concerned with blocking undesirable sites (by destination) than checking that the content is valid (by deep inspection).

Using web services such as RPC over HTTP to access Exchange Server 2003 is not always bad – 90% of VPN users just want to get to their e-mail and so offering an HTTP-based solution can eliminate many of the VPNs that are vulnerable network entry points – what is required is to examine the data inside the HTTP tunnel and only allowing it to be used under certain scenarios. Taking the Exchange Server 2003 example further, without using RPC over HTTP, the following ports may need to be opened for access:

  • TCP 25: SMTP.
  • TCP/UDP 53: DNS.
  • TCP 80: HTTP.
  • TCP/UDP 88: Kerberos.
  • TCP 110: POP3.
  • TCP 135: RPC endpoint mapper.
  • TCP 143: IMAP4.
  • TCP/UDP 389: LDAP (to directory service).
  • TCP 691: Link state algorithm routing protocol.
  • TCP 1024+: RPC service ports (unless DC and Exchange restricted).
  • TCP 3268: LDAP (to global catalog).

Using HTTP over RPC, this is reduced to one port – TCP 80.

Application layer filtering

Inspection at the application layer still has some limitations and the real issue is understanding the purpose of the traffic to be filtered and blocking non-consistent traffic.

Microsoft ISA Server 2004 is typically deployed in one of three scenarios:

  • Inbound access control and VPN server.
  • Outbound access control and filtration (together with URL-based real time lists from third parties).
  • Distributed caching (proxy server), leading to reduced bandwidth usage.

As part of its access control capabilities, ISA Server has a number of application filters included:

  • HTTP (syntax analysis and signature blocking).
  • OWA (forms based authentication).
  • SMTP (command and message filtering).
  • RPC (interface blocking).
  • FTP (read only support).
  • DNS (intrusion detection).
  • POP3 (intrusion detection).
  • H.323 (allows H.323 traffic).
  • MMS (enabled Microsoft media streaming).

All of these filters validate protocols for RFC compliance and enable network address translation (NAT) traversal. In addition, ISA Server can work with third party filters to avoid the need for a proliferation of dedicated appliance servers (and even for appliance consolidation). Examples of third-party filter add-ons include:

  • Instant messaging (Akonix).
  • SOCKS5 (CornerPost Software).
  • SOAP/raw XML (Forum Systems).
  • Antivirus (McAfee, GFI, Panda).
  • URL Filtering (SurfControl, Futuresoft, FilterLogix, Cerberian, Wavecrest).
  • Intrusion detection (ISS, GFI).

But appliance firewalls are more secure – aren’t they?

Contrary to popular belief, appliance firewalls are not necessarily more secure – just more convenient – for those who prefer to use appliances, ISA Server is available in an appliance server format and such an appliance may well be cheaper than an equivalent server, plus Windows Server 2003 and ISA Server 2004 licenses.

Whilst looking at the security of the solution itself, ISA Server has been tested against the common certification criteria at level EAL4+ (for 9 streams). Totally rewritten since ISA Server 2000, Microsoft claim that ISA Server 2004 uses a code base which is 400% more efficient. It may run on a Windows platform, but Windows Server 2003 can (and should) also be hardened, and a well-configured ISA Server can be extremely secure.

Some firewall challenges: remote procedure calls (RPCs)

RPC CommunicationsRPCs present their own challenge to a standard (layer 3/4) firewall in terms of the sheer number of potentially available ports:

  1. On service startup, the RPC server grabs random high port numbers and maintains a table, mapping UUIDs to port numbers.
  2. Clients know the UUID of the required service and connect to the server’s port mapper using TCP port 135, requesting the number of the port associated with the UUID.
  3. The server looks up the port number of the given UUID.
  4. The server responds with the port number, closing the TCP connection on port 135.
  5. From this point on the client accesses the application using the allocated port number.

Due to the number of potential ports, this is not feasible using a traditional firewall (it would require 64512 high ports plus 135 to be open); however, a layer 7 firewall could utilise an RPC filter to learn the protocol and use its features to improved security, such that the firewall would only allow access to specific UUIDs (e.g. domain controller replication, or Exchange/Outlook RPC communications) denying access to all other RPC requests. Instead of tunnelling within HTTP (prevented by an HTTP syntax check), native RPC access can be provided across the firewall.

Some firewall challenges: secure sockets layer (SSL)

Protecting HTTPS - traditional firewallHackers will always attack the low-hanging fruit (i.e. easy targets) and as such, SSL attacks are generally too complex, but as our systems become more secure (i.e. we remove the low-hanging fruit), SSL attacks will become more likely.

HTTPS (which uses SSL) prompts a user for authentication and any user on the Internet can access the authentication prompt. SSL tunnels through traditional firewalls because it is encrypted, in turn, allowing viruses and worms to pass through undetected and infect internal servers.

Using ISA Server 2004 with an HTTP filter, authentication can be delegated. In this way, ISA Server pre-authenticates users, eliminating multiple authentication dialogs and only allowing valid traffic through. This means that the SSL connection is from the client to the firewall only, and that ISA Server can decrypt and inspect SSL traffic. Onward traffic to the internal server can be re-encrypted using SSL, or sent as clear HTTP. In this way, URLScan for ISA Server can stop web attacks at the network edge, even over an encrypted inbound SSL connection.

Protecting HTTPS - web publishingPre-authentication means that without a valid layer 7 password, there is no access to any internal systems (potential attackers drop from the entire Internet to just the number of people with credentials for the network). ISA Server 2000 can also perform this using RSA securID for HTTP (although not for RPC over HTTP with securID) and cookie pre-authentication for Outlook Web Access 2003 is also available.

Some firewall challenges: protecting HTTP(S)

Protecting HTTP (and HTTPS) requires an understanding the protocol – how it works, what its rules are and what to expect. Inbound HTTPS termination is easy (as the certificate is controlled by the organisation whose network is being protected). For outbound HTTPS and HTTP, administrators need to learn how to filter port 80/443. It may be worth considering whether global access is really required, or whether there are a set of specific sites that are required for use by the business.

ISA Server allows web publishing of HTTP (as well as other protocols such as SMTP). Web publishing protects servers through two main defences:

  • Worms rarely work by FQDN – tending to favour IP or network range. Publishing by FQDN prevents any traffic from getting in unless it asks for the exact URL and not just http://81.171.168.73:80.
  • Using HTTP filter verbs (signature strings and method blocking) to eliminate whole classes of attack at the protocol level.

Some examples of protecting a web server using web publishing and HTTP filtration are:

  • Limit header length, query and URL length.
  • Verify normalisation – http://81.171.168.73/../../etc is not allowed.
  • Allow only specified methods (GET, HEAD, POST, etc.).
  • Block specified extensions (.EXE, .BAT, .CMD, .COM, .HTW, .IDA, .IDQ, .HTR, .IDC, .SHTM, .SHTML, .STM, .PRINTER, .INI, .LOG, .POL, .DAT, etc.)
  • Block content containing URL requests with certain signatures (.., ./, \, :, % and &)
  • Change/remove headers to provide disinformation – putting ISA Server in front of an Apache server is a great way to prevent UNIX attacks by making hackers think they are attacking a Windows server.
  • Block applications based on the header.

Some headers to look for include:

  • Request headers:
    • MSN Messenger: HTTP header=User-Agent; Signature=MSN Messenger
    • Windows Messenger: HTTP header=User-Agent; Signature=MSMSGS
    • AOL Messenger (and Gecko browsers): HTTP header=User-Agent; Signature=Gecko/
    • Yahoo Messenger: HTTP header=Host; Signature=msg.yahoo.com
    • Kazaa: HTTP header=P2P-Agent; Signature=Kazaa, Kazaaclient
    • Kazaa: HTTP header=User-Agent; Signature=Kazaa Client
    • Kazaa: HTTP header=X-Kazaa-Network; Signature=KaZaA
    • Gnutella: HTTP header=User-Agent; Signature=Gnutella
    • Gnutella: HTTP header=User-Agent; Signature=Gnucleus
    • Edonkey: HTTP header=User-Agent; Signature=e2dk
  • Response header:
    • Morpheus: HTTP header=Server; Signature=Morpheus

Some firewall challenges: protecting DNS

Whilst some DNS protection is available by filtering TCP/UDP ports 53, ISA Server filters can examine traffic for DNS host name overflows, length overflows, zone transfer from privileged ports (1-1023), zone transfer from high ports (1024 and above).

Some firewall challenges: protecting SMTP

When it comes to mail protection, anti-spam and anti-virus vendors cover SMTP relays but ISA server filters can examine protocol usage, i.e.:

  • Checking that TCP port 25 traffic really is SMTP.
  • Checking for a buffer overflow to the RCPT: command.
  • Blocking someone using the VRFY command.
  • Stripping an attachment or block a user.

Using such a solution adds to the defence in depth strategy, using the firewall to add another layer of defence to the mail system.

Some firewall challenges: encapsulated traffic

Encapsulated traffic can cause some concerns for a network administrator as IPSec (AH and ESP), PPTP, etc. cannot be scanned at the ISA Server if they are published or otherwise allowed through. Tunnelling traffic will be logged, but not scanned as ISA cannot look inside the tunnel unless it is terminating the VPN. The administrator is faced with a choice – open more ports and uses application filters – or tunnel traffic without inspection. NAT also has some implications.

ISA Server can, however, perform intra-tunnel VPN inspection, so VPN traffic can be inspected at the application layer. VPN client traffic is treated as a dedicated network so destinations can be controlled, along with the use of application filter rules.

VPN clients must be hardened. If not, then hackers can attack clients and ride the VPN into the corporate network. Client based intrusion detection systems and firewalls can help but the ideal solution is VPN quarantine (e.g. Windows Server 2003 network access quarantine control) as the most common entry to the network for malware is from mobile devices either VPNing into the network, or returning to the network after being infected whilst away from the network (perhaps connected to other networks, including the Internet).

Alternatives to a VPN that should be considered are:

  • E-mail: RPC over HTTP, or Outlook Web Access (OWA). POP3 and IMAP4 should be avoided as they are not fully featured.
  • Web-enabled extranet applications: SSL.
  • Other applications: RPC filtration with ISA Server.

Don’t forget the internal network

Internal network defences are another factor to be considered. Networks are generally one large TCP/IP space, segmented by firewalls to the Internet. Trust is implicit throughout the organisation but this cannot be relied upon and network segmentation is critical (cf. a bank, where entering a branch does not gain access to the vault). Internal users are dangerous too.

  • The windows firewall in Windows XP SP2 (internet connection firewall in Windows Server 2003 and earlier versions of Windows XP) is a vital tool in preventing network-based attacks, by blocking unsolicited inbound traffic. Ports can be opened for services running on the computer, and enterprise administration facilitated through group policy. Microsoft recommend that use of the Windows Firewall is combined with network access quarantine control; however it does not have any egress filters (i.e. controls over outbound traffic).
  • Virtual LANs (VLANs) can be used to isolate like services from one another. Switch ACLs are used to control traffic flow between VLANs at layer 3. Layer 2 VLANS may be used where no routing is desired. By using internal firewalls, port level access can be controlled to internal VLANs.
  • IPSec is a method of securing internal IP traffic, mutually authenticating end points. It is used to ensure encrypted and authenticated communications at the IP layer, providing a transport layer security that is independent of applications or application layer protocols. It prevents against spoofing, tampering in the wire and information disclosure. Mutual device authentication can be provided using certificates, kerberos (or pre-shared key – but this is only recommended for testing scenarios). Authentication headers (AH) should be used to provide packet integrity, but this does not encrypt, allowing for network intrusion detection. Encapsulation security payload (ESP) provides packet integrity and confidentiality, but its encryption prevents packet inspection. Consequently, careful planning is required to determine which traffic should be secured.

One use of IPSec is to allow domain replication to pass through firewalls, creating an IPSec policy on each domain controller to secure traffic to its replication partners. ESP 3DES should be used for encryption and the firewall should be configured to allow UDP port 500 for internet key exchange (IKE) and IP protocol 50 for ESP.

Potential issues around wireless network security are well publicised. The two most common security configurations each have their own limitations:

  • Wired equivalency privacy (WEP), relies on static WEP keys which are not dynamically changed and are therefore vulnerable to attack. There is no standard method for provisioning static WEP keys to clients and the principle of static keys does not scale well, with a compromised key exposing everyone.
  • MAC address filtering, is also limited by the potential for an attacker to spoof an allowed MAC address.

Possible solutions include password-based layer 2 authentication (IEEE 802.1x with PEAP/MS CHAP v2) and certificate-based layer 2 authentication (IEEE 802.1x EAP-TLS). Other options include:

  • VPN connectivity using L2TP/IPSec (preferred) or PPTP. This does not allow for roaming but is useful when accessing public wireless hot spots; however there is no computer authentication, or processing of computer group policy settings.
  • IPSec, but this has some interoperability issues.
Security type Security level Ease of deployment Ease of integration
Static WEP Low High High
IEEE 802.1x (PEAP) High Medium High
IEEE 802.1x (TLS) High Low High
VPN (L2TP/IPSec) High Medium Low
IPSec High Low Low

Summary

In summary, firewalls are placed in different locations for different reasons. These must be understood and filtered accordingly. Core functionality can be extended with protocol filters to cover a specific scenario but no one device is a silver bullet. Solutions are more important than devices and firewall configuration is more than a networking decision – it also requires application awareness.

Links

Microsoft ISA Server
ISA Server Community
ISAserver.org
Zebedee (a simple, secure TCP and UDP tunnel program)