LOGO

Windows 64-bit Security: Why It's More Secure

June 17, 2013
Windows 64-bit Security: Why It's More Secure

The Shift to 64-bit Windows and Enhanced Security

For several years, the majority of newly manufactured personal computers have been pre-installed with the 64-bit editions of Windows, encompassing both Windows 7 and Windows 8.

The adoption of 64-bit Windows isn't solely driven by the ability to utilize greater amounts of random access memory. A significant benefit lies in the improved security profile compared to its 32-bit counterparts.

Security Advantages of 64-bit Operating Systems

While 64-bit operating systems are not impervious to malicious software, they incorporate a more robust set of security mechanisms.

These enhanced security features aren't exclusive to Windows; 64-bit versions of other operating systems, notably Linux, also benefit.

Users of Linux distributions can realize notable security improvements by transitioning to a 64-bit version of their chosen operating system.

Specifically, 64-bit systems leverage features like Data Execution Prevention (DEP) more effectively, hindering the execution of code from data-only memory regions.

Address Space Layout Randomization (ASLR) is also strengthened in 64-bit environments, making it considerably more difficult for attackers to reliably exploit vulnerabilities.

These advancements contribute to a more resilient computing environment, reducing the risk of successful malware attacks.

Address Space Layout Randomization

ASLR, or Address Space Layout Randomization, is a vital security mechanism. It functions by randomly positioning a program’s data within the system’s memory.

Prior to the implementation of ASLR, the memory locations utilized by a program were often predictable. This predictability significantly simplified the process of launching attacks against the software.

How ASLR Enhances Security

With ASLR in effect, an attacker attempting to exploit a program vulnerability is forced to correctly identify the data’s location in memory. Failure to do so typically leads to program instability and prevents further exploitation attempts.

Essentially, ASLR introduces an element of uncertainty that drastically increases the difficulty of successful attacks.

ASLR Implementation Across Operating Systems

This security enhancement is incorporated into both 32-bit and 64-bit iterations of Windows, as well as other operating systems. However, its effectiveness is substantially greater on 64-bit platforms.

The expanded address space available in a 64-bit system allows for a more comprehensive randomization process, making ASLR considerably more robust against exploitation.

A larger address space means a significantly wider range of possible memory locations, increasing the challenge for potential attackers.

Mandatory Driver Signing in Windows

A key security feature of the 64-bit editions of Windows is the enforcement of mandatory driver signing. This means that every driver loaded onto the system must possess a valid digital signature.

This requirement extends to all driver code, encompassing both kernel-mode device drivers and user-mode drivers, like those used for printers.

The primary purpose of mandatory driver signing is to safeguard the system against malicious software. It effectively blocks unsigned drivers, which are often associated with malware, from executing.

Circumventing this security measure requires sophisticated techniques. Attackers would need to employ a boot-time rootkit or illegally obtain a valid certificate from a legitimate driver developer to sign compromised drivers.

While driver signing could be implemented on 32-bit Windows versions, it is not currently enforced. This decision prioritizes backward compatibility with older 32-bit drivers that may lack digital signatures.

Temporarily disabling driver signing for development purposes on 64-bit Windows necessitates the use of a kernel debugger or a specific boot option. However, it’s important to note that this option is not permanent and will not survive a system restart.

why-the-64-bit-version-of-windows-is-more-secure-1.jpg

Kernel Patch Protection

KPP, frequently referred to as PatchGuard, represents a security mechanism exclusive to the 64-bit iterations of the Windows operating system.

The primary function of PatchGuard is to obstruct software, including kernel-mode drivers, from modifying the Windows kernel.

While technically feasible on 32-bit Windows versions, such kernel patching has consistently been deemed unsupported.

Certain 32-bit antivirus programs have historically leveraged kernel patching as a means of implementing their protective measures.

How PatchGuard Operates

PatchGuard specifically restricts device drivers from altering the kernel's code.

A key example of this protection is preventing rootkits from embedding themselves within the operating system by modifying the Windows kernel.

Should an attempt to patch the kernel be identified, Windows will initiate an immediate system shutdown, typically manifesting as a blue screen error or an unexpected reboot.

Compatibility Considerations

Implementation of this protection on 32-bit Windows is possible.

However, it has not been enacted, likely to maintain compatibility with older 32-bit software that relies on direct kernel access.

Continued support for legacy applications remains a significant factor in this decision.

PatchGuard ensures the integrity of the core operating system components.

Data Execution Prevention

Data Execution Prevention (DEP) is a security feature implemented by operating systems. It functions by designating specific memory regions as non-executable through the use of an "NX bit" setting.

Essentially, memory areas intended solely for data storage are prevented from being utilized for code execution.

Consider a scenario without DEP. An attacker might exploit a buffer overflow vulnerability to inject malicious code into an application’s memory space. This injected code could then be run.

However, with DEP enabled, even if an attacker successfully writes code into the application’s memory, that region is flagged as non-executable. Consequently, the code cannot be executed, effectively thwarting the attack.

Hardware-based DEP is a standard feature in 64-bit operating systems. While also available on 32-bit Windows versions with compatible CPUs, the default configurations differ.

DEP is consistently enabled for 64-bit programs, whereas it remains disabled by default for 32-bit programs to maintain compatibility with older software.

The Windows DEP configuration interface can be somewhat confusing. As clarified in Microsoft’s official documentation, DEP is perpetually active for all 64-bit processes:

"System DEP configuration settings are applicable only to 32-bit applications and processes running on both 32-bit and 64-bit Windows versions. On 64-bit Windows, hardware-enforced DEP is always applied to 64-bit processes and kernel memory spaces, and there are no system settings to disable this functionality."

why-the-64-bit-version-of-windows-is-more-secure-2.jpgWOW64: A Compatibility Layer for 32-bit Applications

Modern 64-bit iterations of the Windows operating system maintain the ability to execute 32-bit Windows software. This functionality is achieved through a dedicated compatibility layer called WOW64, which stands for Windows 32-bit on Windows 64-bit.

This compatibility infrastructure introduces certain limitations for 32-bit applications. Consequently, these restrictions can hinder the proper operation of 32-bit malware.

Kernel Mode Restrictions

A significant security feature is the prevention of 32-bit malware from operating in kernel mode. Only 64-bit programs are permitted to function at this level within a 64-bit operating system.

This restriction effectively mitigates the risk posed by older 32-bit malicious software, preventing its execution and potential harm.

For instance, a compromised audio CD containing the Sony rootkit would be unable to install itself on a 64-bit Windows system.

Discontinuation of 16-bit Program Support

Furthermore, 64-bit Windows versions no longer support legacy 16-bit programs.

Beyond blocking the execution of outdated 16-bit viruses, this change compels organizations to update their aging 16-bit applications, addressing potential vulnerabilities and ensuring they receive necessary security patches.

Protection Against Legacy Threats

Considering the prevalence of 64-bit Windows installations, contemporary malware is generally designed to function within this environment.

However, the inherent incompatibility offered by WOW64 provides a degree of protection against older, existing malware still circulating.

Choosing the Right Windows Version

Unless specific requirements dictate otherwise – such as reliance on antiquated 16-bit software, compatibility with older hardware utilizing solely 32-bit drivers, or the use of a computer equipped with an older 32-bit processor – opting for the 64-bit version of Windows is generally recommended.

If uncertainty exists regarding your Windows version, and you are operating a modern computer running Windows 7 or 8, it is highly probable that you are utilizing the 64-bit edition.

Enhanced Security, Not Absolute Immunity

It's important to acknowledge that no security measure is entirely impenetrable. A 64-bit Windows system remains susceptible to malware attacks.

Nevertheless, 64-bit versions of Windows demonstrably offer a heightened level of security compared to their 32-bit counterparts.

#Windows 64-bit#security#64-bit architecture#Windows security#operating system security#computer security