Reg Review We evaluated the security features of Windows XP SP2 on a test machine, following a clean install of XP Pro with no configuration changes and no third-party software or drivers installed. We installed XP with the NTFS file system, choosing all of the factory defaults, then patched it with each recommended security update including SP-1 (required), before installing SP2.
While we found that there are indeed a few minor improvements worthy of acknowledgment, in particular, some rather low-level improvements that don't show to the admin or user, overall, SP2 did little to improve our system's practical security, leaving too many services and networking components enabled, bungling permissions, leaving IE and OE vulnerable to malicious scripts, and installing a packet filter that lacks a capacity for egress filtering.
The new Security Center utility with its frequent Security Alert popups will certainly give users the impression that SP2 is a security-oriented package, as Microsoft's PR boilerplate promises. However, The Security Center does little beyond warning users that the firewall is disabled, that automatic updating is disabled, or that antivirus software has not been installed. It may look impressive, but the SP2 package fails to provide several of the most important, basic modifications required to run Windows safely on an Internet-connected machine.
Microsoft has long enabled a number of services related to networking by default, most of which are unnecessary, even dangerous, on Internet-connected machines, and all of which a competent admin should know well enough to enable as necessary. Turning them on by default is a minor inconvenience to admins, who need to disable what they don't need (but usually know how to go about it), and a major source of trouble for home users, who can't be expected to know what services they do and don't need, or how to harden their systems by disabling superfluous ones.
SP2 does disable a few Windows services related to networking that have not previously been disabled by default, which certainly is an improvement. Unfortunately, too many services remain. And home users are given short shrift.
According to netstat, our machine had the following services listening on the Internet by default:
- DCE endpoint resolution (epmap), port 135. This is basically the UNIX/BSD/Linux portmap daemon, and unnecessary on home machines.
- NetBIOS name service, port 137. This is the WINS (Windows Internet Naming Service) server for a NetBIOS network, and unnecessary on home machines.
- NetBIOS datagram service, port 138. This is used by the SMB (Server Message Block) browser service, and is unnecessary on home machines.
- Microsoft-ds (Server Message Block), port 445. SMB can run directly over TCP/IP, without NetBT by using this service, which is unnecessary on home machines.
- NetBIOS Session, port 139. This is used for Windows File and Printer Sharing, unnecessary on most home machines, and extremely dangerous on any machine connected to the Internet unless the owner knows how to run it securely.
- Error Reporting is on by default. However, there is no reason why a machine should phone home every time it encounters an error. This is better left disabled.
- Automatic Update is off by default. Microsoft would very much like everyone to enable it, and now urges users to do so every time Windows Update is run manually; but it is never a good idea to let a third party decide what software should be installed on your machine, or when. This service should remain off, and users should update Windows manually, though regularly, paying attention to the various update options and their relevance to one's system.
Looking alphabetically at the Services dialog, we encountered the following settings (Note: "manual" means that the service will be started if invoked by a user, an application, or another service, while "automatic" means that it will be started at boot time whether it's needed or not).
ClipBook (used to store information, cut / paste, and share it among computers) disabled. About time.
DCOM Server Process Launcher, automatic. The process launcher implies that DCOM is enabled, as indeed it is (more below).
DHCP Client, automatic. Unnecessary on most home machines. Should be disabled by default.
DNS Client, automatic. Unnecessary on most home machines. Should be disabled by default.
NetMeeting Remote Desktop Sharing, manual. Unnecessary on most home machines. Should be disabled by default.
Network DDE, disabled. About time.
Network DDE DSDM, disabled. About time.
Remote Access Connection Manager, manual. Unnecessary on most home machines. Should be disabled by default.
Remote Desktop Help Session Manager, manual. Unnecessary on most home machines. Should be disabled by default.
Remote Procedure Call (RPC), automatic. This is one of Microsoft's greatest security holes. RPC enables one machine to execute code remotely on another. On UBIX/BSD/Linux, it can be disabled safely. On Windows, it cannot be disabled, as MS has made a plethora of necessary services dependent on it. It's a huge security hole that simply cannot be avoided. It must be blocked by a firewall.
Remote Registry, automatic (allows remote users to make Registry changes). Unnecessary and dangerous on most home machines. Should be disabled by default, and enabled only as needed.
Routing and Remote Access, disabled. About time.
Secondary Logon, automatic (enables starting processes under alternate credentials). Unnecessary on most home machines. Should be disabled by default.
SSDP Discovery Service (UPnP discovery), manual. Unnecessary on most home machines. Should be disabled by default.
TCP/IP NetBIOS Helper, automatic (enables support for NetBIOS over TCP/IP (NetBT) service and NetBIOS name resolution). Unnecessary on most home machines. Should be disabled by default.
Telnet, manual. Unnecessary on most home machines and company workstations. Extremely insecure. Should be disabled by default. Those foolish enough to use it can enable it.
Universal Plug and Play Device Host, manual. Unnecessary on most home machines. Should be disabled by default.
WebClient, automatic (enables Windows-based programs to create, access, and modify Internet-based files). Unnecessary on most home machines. Should be disabled by default.
Additionally, DCOM (Distributed COM) is enabled by default. It is unnecessary on most home machines, and should be disabled unless needed. It's the component that the Blaster worm exploited to get at RPC.