Windows 95 vs Windows NT 3.51 Security Permissions
In the mid-1990s, Microsoft maintained two separate operating system tracks that handled local security in fundamentally opposite ways. This article explores how Windows 95 managed local user accounts and file permissions compared to Windows NT 3.51, contrasting Windows 95’s consumer-oriented, aesthetic profile system with Windows NT 3.51’s enterprise-grade, kernel-enforced access controls.
Windows 95: Convenience Without Access Control
Windows 95 was designed for home and small-office personal computers where hardware resources were limited and ease of use took priority over security. Consequently, Windows 95 lacked a true local security subsystem.
- Optional and Bypassable Logon: Windows 95 introduced a logon dialog, but it was purely cosmetic for standalone machines. A user could simply click "Cancel" or press the "Escape" key to bypass the prompt entirely and gain full access to the desktop and file system.
- Profiles Instead of Permissions: Multiple user accounts could be configured, but their purpose was personalization rather than protection. These profiles merely preserved individual preferences, such as desktop icons, color schemes, and Start menu layouts.
- The Limitations of FAT16: Windows 95 relied on the FAT16 (and later FAT32) file system. The FAT architecture possessed no metadata attributes for Access Control Lists (ACLs), meaning there was no way to restrict a user from reading, modifying, or deleting any file on the local drive.
- Kernel and Hardware Exposure: Applications ran with unrestricted access to the underlying hardware and memory spaces. Any user or program could overwrite critical operating system files, install software, or modify the system registry without administrative elevation.
Windows NT 3.51: Enterprise-Grade Discretionary Access Control
Released in May 1995, Windows NT 3.51 was designed for corporate environments, workstations, and servers. Security was integrated directly into the NT kernel architecture, targeting the United States Department of Defense C2 security rating.
- Mandatory Authentication: Windows NT 3.51 required
authentication before granting access to the system. Users had to
initiate logon using the Secure Attention Sequence (
Ctrl+Alt+Delete), a hardware-level interrupt that prevented Trojan horse programs from intercepting credentials. A user could not bypass this prompt. - The Security Accounts Manager (SAM): User credentials, group memberships, and rights were stored in the SAM database. Authentication was handled by the Local Security Authority (LSA), which generated an access token containing the user's Security Identifier (SID) and assigned privileges.
- Granular NTFS Permissions: Alongside FAT, Windows NT 3.51 supported the New Technology File System (NTFS). NTFS implemented fine-grained Discretionary Access Control Lists (DACLs) on files and folders. Administrators could explicitly grant or deny specific permissions—such as Read, Write, Execute, and Delete—to individual users or groups.
- The Security Reference Monitor (SRM): Running in kernel mode, the SRM intercepted every attempt to access a file, directory, or system resource. It compared the user's access token against the resource’s security descriptor. If the requested rights were not explicitly permitted, access was strictly denied.
- Role-Based Privilege Separation: User roles were divided into distinct privilege tiers, including Administrators, Power Users, Users, and Guests. Standard users could not modify system files, install device drivers, or view files in another user's private directories without permission.
Comparison Summary
The fundamental difference between the two systems stemmed from their target markets. Windows 95 operated under the assumption of a single trusted user with total physical and administrative control, using accounts solely to store personalized preferences on a non-secure file system. In contrast, Windows NT 3.51 treated every local resource as an object requiring explicit authorization, enforcing mandatory authentication and strict file-level access controls through the NT kernel and NTFS.