Contents
Abstract
Establishing Computer Security
Levels of Security
Off-the-Shelf vs. Custom Software
Minimal Security
Standard Security
High-Level Security
High-Level Software Security Considerations
User Rights
Protecting Files and Directories
Protecting the Registry
Secure EventLog Viewing
Secure Print Driver Installation
The Schedule Service (AT Command)
Secure File Sharing
FTP Service
NetBios Access From Internet
Hiding the Last User Name
Restricting the Boot Process
Allowing Only Logged-On Users to Shut Down the Computer
Controlling Access to Removable Media
Securing Base System Objects
Enabling System Auditing
Enhanced Protection for Security Accounts Manager Database
Restricting Anonymous network access to Registry
Restricting Anonymous network access to lookup account names and groups and network shares
Enforcing strong user passwords
Disabling LanManager Password Hash Support
Wiping the System Page File during clean system shutdown
Disable Caching of Logon Credentials during interactive logon.
C2 Security
Evaluation vs. Certification
Setting up a C2-compliant System
Abstract
Establishing Computer Security
Levels of Security
Off-the-Shelf vs. Custom Software
Minimal Security
Standard Security
High-Level Security
High-Level Software Security Considerations
User Rights
Protecting Files and Directories
Protecting the Registry
Secure EventLog Viewing
Secure Print Driver Installation
The Schedule Service (AT Command)
Secure File Sharing
FTP Service
NetBios Access from the Internet
Hiding the Last User Name
Restricting the Boot Process
Allowing Only Logged-On Users to Shut Down the Computer
Controlling Access to Removable Media
Securing Base System Objects
Enabling System Auditing
C2 Security
Evaluation vs. Certification
Setting up a C2-compliant System
Off-the-Shelf vs. Custom Software
Minimal Software Security Considerations
Standard Security
Hive: | HKEY_LOCAL_MACHINE\SOFTWARE |
Key: | \Microsoft\Windows NT\Current Version\Winlogon |
Name: | LegalNoticeCaption |
Type: | REG_SZ |
Value: | Whatever you want for the title of the message box |
Hive: | HKEY_LOCAL_MACHINE\SOFTWARE |
Key: | Microsoft\Windows NT\Current Version\Winlogon |
Name: | LegalNoticeText |
Type: | REG_SZ |
Value: | Whatever you want for the text of the message box |
Hive: | HKEY_LOCAL_MACHINE |
Key: | \CurrentcontrolSet\Control\SecurePipeServers |
Name: | \winreg |
Threat | Action |
Hacker-type break-in using random passwords | Enable failure auditing for log on and log off events. |
Break-in using stolen password | Enable success auditing for log on and log off events. The log entries will not distinguish between the real users and the phony ones. What you are looking for here is unusual activity on user accounts, such as log ons at odd hours or on days when you would not expect any activity. |
Misuse of administrative privileges by authorized users | Enable success auditing for use of user rights; for user and group management, for security policy changes; and for restart, shutdown, and system events. (Note: Because of the high volume of events that would be recorded, Windows NT does not normally audit the use of the Backup Files And Directories and the Restore Files And Directories rights. Appendix B, "Security In a Software Development Environment," explains how to enable auditing of the use of these rights.) |
Virus outbreak | Enable success and failure write access auditing for program files such as files with .exe and .dll extensions. Enable success and failure process tracking auditing. Run suspect programs and examine the security log for unexpected attempts to modify program files or creation of unexpected processes. Note that these auditing settings generate a large number of event records during routine system use. You should use them only when you are actively monitoring the system log. |
Improper access to sensitive files | Enable success and failure auditing for file- and object-access events, and then use File Manager to enable success and failure auditing of read and write access by suspect users or groups for sensitive files. |
Improper access to printers | Enable success and failure auditing for file- and object-access events, and then use Print Manager to enable success and failure auditing of print access by suspect users or groups for the printers. |
High-Level Software Security Considerations
User Right |
Groups assigned this right by default on workstation & stand-alone server | Recommended change for workstation & stand-alone server | Groups assigned this right by default on domain controller | Recommended change for domain controller |
Log on locally. Allows a user to log on at the computer, from the computer's keyboard. |
Administrators, Everyone, Guests, Power Users, and Users | Deny Remove Everyone and Guests this from having this right. | Account Operators, Administrators, Backup Operators, Server Operators, Print Operators | No Change |
Shut down the system. (SeShutdown-Privilege) Allows a user to shut down Windows NT. |
Administrators, Everyone, Guests, Power Users, and Users | Deny Remove Everyone, Guests and Users from having this right. | Account Operators, Administrators, Backup Operators, Server Operators, Print Operators | No Change |
Access this computer from the network Allows a user to connect over the network to the computer |
Administrators, Everyone and Power Users | Administrators, Power Users and Users | Administrators, Everyone | Administrators, Backup Operators, Server Operators, Print Operators, Users and Guests if it is enabled |
User Right |
Groups assigned this right by default on workstation | Groups assigned this right by default on server |
Act as part of the operating system (SeTcbPrivilege) Allows a process to perform as a secure, trusted part of the operating system. Some subsystems are granted this right. |
(None) | (None) |
User Right |
Groups assigned this right by default on workstation | Groups assigned this right by default on server |
Add workstations to the domain (SeMachineAccountPrivilege) Allows users to added workstations to a particular domain. This right is meaningful only on domain controllers. |
(None) | (None) |
Back up files and directories (SeBackupPrivilege) Allows a user to back up files and directories. This right supersedes file and directory permissions. |
Administrators, Backup Operators, Server Operators | Administrators, Backup Operators, Server Operators |
Bypass traverse checking (SeChangeNotifyPrivilege) Allows a user to change directories and access files and subdirectories even if the user has no permission to access parent directories. |
Everyone | Everyone |
Change the system time (SeSystemTimePrivilege) Allows a user to set the time for the internal clock of the computer. |
Administrators, Power Users | Administrators, Server Operators |
Create a pagefile (SeCreatePagefilePrivilege) Allows the user to create new pagefiles for virtual memory swapping. |
Administrators | Administrators |
Create a token object (SeCreateTokenPrivilege) Allows a process to create access tokens. Only the Local Security Authority can do this. |
(None) | (None) |
Create permanent shared objects (SeCreatePermanentPrivilege) Allows user to create special permanent objects, such as \\Device, that are used within Windows NT. |
(None) | (None) |
Debug programs (SeDebugPrivilege) Allows a user to debug various low-level objects such as threads. |
Administrators | Administrators |
Force shutdown from a remote system (SeRemoteShutdownPrivilege) Allows the user to shutdown a Windows NT system remotely over a network. |
Administrators, Power Users | Administrators, Server Operators |
Generate security audits (SeAuditPrivilege) Allows a process to generate security audit log entries. |
(None) | (None) |
Increase quotas (SeIncreaseQuotaPrivilege) Nothing. This right has no effect in current versions of Windows NT. |
Administrators | Administrators |
User Right |
Groups assigned this right by default on workstation | Groups assigned this right by default on server |
Increase scheduling priority (SeIncreaseBasePriorityPrivilege) Allows a user to boost the execution priority of a process. |
Administrators | Administrators |
Load and unload device drivers (SeLoadDriverPrivilege) Allows a user to install and remove device drivers. |
Administrators | Administrators |
Lock pages in memory (SeLockMemoryPrivilege) Allows a user to lock pages in memory so they cannot be paged out to a backing store such as Pagefile.sys. |
(None) | (None) |
Log on as a batch job Nothing. This right has no effect in current versions of Windows NT. |
(None) | (None) |
Log on as a service Allows a process to register with the system as a service. |
(None) | (None) |
Manage auditing and security log (SeSecurityPrivilege) Allows a user to specify what types of resource access (such as file access) are to be audited, and to view and clear the security log. Note that this right does not allow a user to set system auditing policy using the Audit command in the Policy menu of User Manager. Also, members of the administrators group always have the ability to view and clear the security log. |
Administrators | Administrators |
Modify firmware environment variables (SeSystemEnvironmentPrivilege) Allows a user to modify system environment variables stored in nonvolatile RAM on systems that support this type of configuration. |
Administrators | Administrators |
Profile single process (SeProfSingleProcess) Allows a user to perform profiling (performance sampling) on a process. |
Administrators | Administators |
Profile system performance (SeSystemProfilePrivilege) Allows a user to perform profiling (performance sampling) on the system. |
Administrators | Administrators |
Replace a process-level token (SeAssignPrimaryTokenPrivilege) Allows a user to modify a process's security access token. This is a powerful right used only by the system. |
(None) | (None) |
User Right |
Groups assigned this right by default on workstation | Groups assigned this right by default on server |
Restore files and directories (SeRestorePrivilege) Allows a user to restore backed-up files and directories. This right supersedes file and directory permissions. |
Administrators, Backup Operators | Administrators, Server Operators, Backup Operators |
Take ownership of files or other objects (SeTakeOwnershipPrivilege) Allows a user to take ownership of files, directories, printers, and other objects on the computer. This right supersedes permissions protecting objects. |
Administrators | Administrators |
Directory | Permissions |
\WINNT and all subdirectories under it. |
Administrators: Full Control CREATOR OWNER: Full Control Everyone: Read SYSTEM: Full Control |
Directory | Permissions |
\WINNT\REPAIR | Administrators: Full Control |
\WINNT\SYSTEM32\CONFIG |
Administrators: Full Control CREATOR OWNER: Full Control Everyone: List SYSTEM: Full Control |
\WINNT\SYSTEM32\SPOOL |
Administrators: Full Control CREATOR OWNER: Full Control Everyone: Read Power Users: Change SYSTEM: Full Control |
\WINNT\COOKIES \WINNT\FORMS \WINNT\HISTORY \WINNT\OCCACHE \WINNT\PROFILES \WINNT\SENDTO \WINNT\Temporary Internet Files |
Administrators: Full Control CREATOR OWNER: Full Control Everyone: Special Directory Access - Read, Write and Execute, Special File Access - None Add System : Full Control |
File | C2-Level Permissions |
\Boot.ini, \Ntdetect.com, \Ntldr |
Administrators: Full Control SYSTEM: Full Control |
\Autoexec.bat, \Config.sys |
Everybody: Read Administrators: Full Control SYSTEM: Full Control |
\TEMP directory |
Administrators: Full Control SYSTEM: Full Control CREATOR OWNER: Full Control Everyone: Special Directory Access - Read, Write and Execute, Special File Access - None Add |
Protecting the Registry
In the HKEY_LOCAL_MACHINE on Local Machine dialog:
\Software
This change is recommended. It locks the system in terms of who can install software. Note that it is not recommended that the entire subtree be locked using this setting because that can render certain software unusable.
\Software\Microsoft\RPC (and its subkeys)
This locks the RPC services.
\Software\Microsoft\Windows NT\ CurrentVersion
\Software\Microsoft\Windows NT\ CurrentVersion\Profile List
\Software\Microsoft\Windows NT\ CurrentVersion\AeDebug
\Software\Microsoft\Windows NT\ CurrentVersion\Compatibility
\Software\Microsoft\Windows NT\ CurrentVersion\Drivers
\Software\Microsoft\Windows NT\ CurrentVersion\Embedding
\Software\Microsoft\Windows NT\ CurrentVersion\Fonts
\Software\Microsoft\Windows NT\ CurrentVersion\FontSubstitutes
\Software\Microsoft\Windows NT\ CurrentVersion\Font Drivers
\Software\Microsoft\Windows NT\ CurrentVersion\Font Mapper
\Software\Microsoft\Windows NT\ CurrentVersion\Font Cache
\Software\Microsoft\Windows NT\ CurrentVersion\GRE_Initialize
\Software\Microsoft\Windows NT\ CurrentVersion\MCI
\Software\Microsoft\Windows NT\ CurrentVersion\MCI Extensions
\Software\Microsoft\Windows NT\ CurrentVersion\PerfLib
Consider removing Everyone:Read access on this key. This allows remote users to see performance data on the machine. Instead you could give INTERACTIVE:Read Access which will allow only interactively logged on user access to this key, besides administrators and system.
\Software\Microsoft\Windows NT\ CurrentVersion\Port (and all subkeys)
\Software\Microsoft\Windows NT\ CurrentVersion\Type1 Installer
\Software\Microsoft\Windows NT\ CurrentVersion\WOW (and all subkeys)
\Software\Microsoft\Windows NT\ CurrentVersion\Windows3.1MigrationStatus (and all subkeys)
\System\CurrentControlSet\Services\LanmanServer\Shares
\System\CurrentControlSet\Services\UPS
Note that besides setting security on this key, it is also required that the command file (if any) associated with the UPS service is appropriately secured, allowing Administrators: Full Control, System: Full Control only.
\Software\Microsoft\Windows\CurrentVersion\Run
\Software\Microsoft\Windows\CurrentVersion\RunOnce
\Software\Microsoft\Windows\CurrentVersion\Uninstall
In the HKEY_CLASSES_ROOT on Local Machine dialog:
\HKEY_CLASSES_ROOT (and all subkeys)
In the HKEY_USERS on Local Machine dialog:
\.DEFAULT
The Registry Editor supports remote access to the Windows NT registry. To restrict network access to the registry, use the Registry Editor to create the following registry key:
Hive: | HKEY_LOCAL_MACHINE |
Key: | System\CurrentcontrolSet\Control\SecurePipeServers |
Name: | \winreg |
Registry Key | Recommended Permissions |
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon |
CREATOR OWNER: Full Control Administrators: Full Control SYSTEM: Full Control Everyone: Read |
Hive: | HKEY_LOCAL_MACHINE |
Key: | \System\CurrentControlSet\Services\EventLog\[LogName] |
Name: | RestrictGuestAccess |
Type | REG_DWORD |
Value: | 1 |
Secure Print Driver Installation
Hive: | HKEY_LOCAL_MACHINE |
Key: | System\CurrentcontrolSet\Control\Print\Providers\LanMan Print Services\Servers |
Name: | AddPrintDrivers |
Type | REG_DWORD |
Value: | 1 |
Hive: | HKEY_LOCAL_MACHINE\SYSTEM |
Key: | \CurrentControlSet\Control\Lsa |
Name: | Submit Control |
Type: | REG_DWORD |
Value: | 1 |
Registry Key | Recommended Permissions |
HKEY_LOCAL_MACHINE\System\CurrentControlSet\ Services\Schedule |
CREATOR OWNER: Full Control Administrators: Full Control SYSTEM: Full Control Everyone: Read |
Secure File Sharing
Hive: | HKEY_LOCAL_MACHINE\SYSTEM |
Key: | System\CurrentControlSet\Services\LanManServer\Parameters |
Name: | RequireSecuritySignature |
Type: | REG_DWORD |
Value: | 1 |
Hive: | HKEY_LOCAL_MACHINE\SYSTEM |
Key: | System\CurrentControlSet\Services\LanManServer\Parameters |
Name: | EnableSecuritySignature |
Type: | REG_DWORD |
Value: | 1 |
Hive: | HKEY_LOCAL_MACHINE\SYSTEM |
Key: | System\CurrentControlSet\Services\Rdr\Parameters |
Name: | RequireSecuritySignature |
Type: | REG_DWORD |
Value: | 1 |
NetBios Access From Internet
A Windows NT system with direct Internet connectivity needs to be secured with respect to other services besides NetBios access, specifically Internet Information Server. Please refer to Microsoft Internet Information Server: Security Overview white paper for details on this area.
Hiding the Last User Name
Hive: | HKEY_LOCAL_MACHINE\SOFTWARE |
Key: | \Microsoft\Windows NT\Current Version\Winlogon |
Name: | DontDisplayLastUserName |
Type: | REG_SZ |
Value: | 1 |
Allowing Only Logged-On Users to Shut Down the Computer
Hive: | HKEY_LOCAL_MACHINE\SOFTWARE |
Key: | \Microsoft\Windows NT\Current Version\Winlogon |
Name: | ShutdownWithoutLogon |
Type: | REG_SZ |
Value: | 0 |
Controlling Access to Removable Media
Hive: | HKEY_LOCAL_MACHINE\SOFTWARE |
Key: | \Microsoft\WindowsNT\CurrentVersion\Winlogon |
Name: | AllocateFloppies |
Type: | REG_SZ |
Value: | 1 |
Hive: | HKEY_LOCAL_MACHINE\SOFTWARE |
Key: | \Microsoft\WindowsNT\CurrentVersion\Winlogon |
Name: | AllocateCDRoms |
Type: | REG_SZ |
Value: | 1 |
Securing Base System Objects
Enabling System Auditing
Hive: | HKEY_LOCAL_MACHINE\SYSTEM |
Key: | System\CurrentControlSet\Services\LanManServer\Parameters |
Name: | NullSessionPipes |
Type: | REG_MULTI_SZ |
Value: | Add or Remove names from the list as required by the configuration. |
Hive: | HKEY_LOCAL_MACHINE\SYSTEM |
Key: | System\CurrentControlSet\Control\LSA |
Name: | RestrictAnonymous |
Type: | REG_DWORD |
Value: | 1. |
Hive: | HKEY_LOCAL_MACHINE\SYSTEM |
Key: | System\CurrentControlSet\Control\LSA |
Name: | Notification Packages |
Type: | REG_MULTI_SZ |
Value: | Add string "PASSFILT" (do not remove existing ones). |
Hive: | HKEY_LOCAL_MACHINE\SYSTEM |
Key: | System\CurrentControlSet\Control\LSA |
Name: | LMCompatibilityLevel |
Type: | REG_DWORD |
Value: | 0,1,2 (Default 0) |
Hive: | HKEY_LOCAL_MACHINE\SYSTEM |
Key: | System\CurrentControlSet\Control\SessionManager\Memory Management |
Name: | ClearPageFileAtShutdown |
Type: | REG_DWORD |
Value: | 1 |
Hive: | HKEY_LOCAL_MACHINE |
Key: | Software\Microsoft\Windows NT\CurrentVersion\Winlogon |
Name: | CachedLogonsCount |
Type: | REG_SZREG_DWORD |
Value: | 0 |
Evaluation vs. Certification
Setting up a C2-compliant System
Document converted from word 8 by
MSWordView (mswordview 0.1.0)
MSWordView written by Caolan McNamara