![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
![]() |

|
| Microsoft windows vista error all errors related to microsoft windows vista |
![]() |
|
Understanding Windows Vista Service Hardening
|
LinkBack | Thread Tools | Display Modes |
|
|
#1 (permalink) |
|
Administrator
Posts: 18,715
Join Date: Jan 2006
Rep Power: 10
IM:
|
One such new feature in Windows Vista is known as Windows Service Hardening. In older versions of Windows, services did not necessarily run with the least possible privileges. In fact, Windows services often ran under accounts with very high level of access, such as the LocalSystem account. Further, users are often not aware of the services running on their systems, and do not realise that some services are safe to disable. Finally, services and user applications ran in the same space, which could result in inappropriate access. As a result of services running with privileges that did not match necessity, and services running that users did not require, Windows desktops were left more vulnerable to attack. What's Windows Service Hardening? Vista's Service Hardening is designed to mitigate some of these shortcomings. The feature uses four methods to achieve its goals:
Service isolation Before Windows Vista, when a service needed access to an object that required a high level of security, one of two approaches could be taken:
Once the SID is created and assigned for use by a service, an object's (for example, a registry key to which a service needs to write information) access control list can be modified to include the new SID, thus allowing the service to access the object without giving away the privilege farm. Restricted SIDs Even when a service is using one of these service-specific SIDs, the service is still able to access other resources because the service's process token also contains the SID for the service account (ie, LocalService or NetworkService). If the service is compromised, a potential attacker can cause additional damage by accessing the resources that are not related to the service, but are accessible to the LocalService account. Windows Vista tries to help you here, too. In an attempt to limit the potential damage caused by a compromised service, Windows Vista combines write-restricted tokens and per-service SIDs to establish restricted SIDs for services. If a service enables a restricted SID, then that service's per-service SID is combined with both the normal and restricted SID list of the write-restricted service access token. Now, the service can write only to objects that have been specifically granted write access to one of the SIDs in the restricted list. Let's look at an example. Suppose that a particular service runs using the LocalService account and also has a service SID enabled. As a result, the service has access to objects that have been granted per-service access, but the service also has access to all objects that provide access to the LocalService account. By enabling restricted SIDs, this can no longer write to any object that grants access to LocalService account. Why? Those objects do not grant write access to the per-service SID of your service. Least privilege The LocalSystem account provides the keys to every aspect of a system. This is also the account under which many Windows services run. Therefore, these services are favourites among hackers since a successful exploit against one of these services can provide wide and deep access to a system. In order to protect a system, a best practice is to run each service using an account with the least privileges necessary to accomplish the service's goals. Although Windows provides other accounts that have significantly fewer rights, some services require privileges provides only by the LocalSystem account. Under older versions of Windows, the LocalSystem account provided carte blanche access. Under Windows Vista, services requiring LocalSystem-only rights can still use the LocalSystem account, but can be configured to be granted only those rights that are required for the service to operate, and no more. LocalSystem is not the only account that can use this new feature. The following accounts or account types can also use this least privilege mechanism:
It's important to note that this principle of least privilege does not limit a hacker's ability to exploit a flaw in a service. It does, however, limit the damage that can be wrought by an attacker's successful breach of your other defences. Service network access restrictions Over the years, services running in Windows have become more and more dependent on being accessible to the network or accessible by other computers on your network. Services that face the network in this way are more vulnerable to attack since, in order to work their magic, these services are just waiting for remote connections, making them more susceptible to malicious activity. Under Windows Vista, a developer can restrict a service's access by TCP/UDP port, protocol, or even by the direction that network traffic is flowing. When restrictions like these are in place, attempts to access a service using other methods will be blocked, protecting that service from some attack vectors. Windows Vista services can also be configured to not allow network access in which case the service cannot be remotely exploited, but neither can the service make connections to remote services. However, not every service really needs network access. Windows Vista's service-level network access restrictions hardening feature works in a similar fashion, as the service isolation feature in that the restrictions are implemented through the use of service-level SIDs. Session 0 isolation For this section, the assumption is that you are using Vista as a desktop, and not as a server serving remote users. Under Windows XP, when a user logs into the console, all services and applications run in what is called Session 0. When Fast User Switching is enabled in Windows XP, the first user's applications are assigned to Session 0, along with all of the system's running services. As additional users log into the system via Fast User Switching, each additional user's applications are run inside a new session. So the second user's applications run in Session 1, and the third user's applications run in Session 2. However, regardless of how many people log in to the system, all services, as well as the original user's applications, continue to run in Session 0. Mixing services, many of which run with considerable privileges, with user applications can create significant security issues. If an application is poorly written, falls victim to an exploit, or if that application is running in the same session as services, those services are more vulnerable to compromise than they would be if the applications were running in a separate box. In order to combat this potential threat, Windows Vista does not allow any user applications to be run in Session 0. All other applications must run in Session 1 or higher. Only services and other non-user-facing applications run in Session 0, thus maintaining isolation between services and user applications. New and improved service security Through these changes to the Windows Vista service model, Windows Vista aims to better protect your system in the event of a breach. With the exception of Session 0 Isolation, Vista's Service Hardening features are not necessarily designed to block attacks on services hosted in Vista. Instead, Vista's Service Hardening features are designed to limit the potential damage that can be done when a service is breached. Service Hardening, when combined with other Vista services, such as its new firewall, can provide a formidable defence. Between these and other services, Vista provides multiple layers of defence, designed to keep your system safe and secure. |
|
|
|
|
|
|
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|