Skip to main content

OS security (Windows NT logon process)

What is the Windows NT logon process?

Windows NT process is the process by which the operating systems belonging to the Windows NT family start up.

The logon process for operating systems introduced by Microsoft since Windows Vista uses a slightly different architecture (methodical steps), but many steps in the windows NT process have been repeated

There are many steps involved with the Windows NT logon process but this blog post summarizes the most important steps and definitions.

The basic architecture of this process can be summarized as follows:


A simplified Windows NT logon process
Now let us understand what each section of the above flow diagram does in the Windows NT logon process.

Main sections of the logon process-

Security reference monitor-
The security reference monitor is used to ensure which subjects have authorization to which objects. Thus, it uses the access control policy used in the operating system for its basic functioning.

A security reference monitor contains four main parts:
1. Authorization database (Is the storehouse of the security authorization policies predetermined for objects over subjects. For example, consider two users A and B. Also consider that it has been predetermined that A can also read files, whereas B can both read and write files. )
2. Subject (Are the user(s) who is using the system. In the above example, A and B are the users or the subjects)
3. Object (Are the components that run with the intervention of an operating system. For example, files such as MS office files are objects)
4. Audit trail (The audit trail is the storehouse of the security related events. For example, when a user/subject A accesses a file, a record is created for that user. The records are updated to maintain the database of audit events)


Two important aspects of the security reference monitor are:
1. Security reference monitor should always be invoked
2. Security reference monitor should be tamper proof.

Security accounts manager-

When a user types a password at logon on either an initial login or subsequent login, the local security authority triggers the security accounts manager.

Security accounts manager is a database which stores user's passwords. It is used to authenticate local and remote users. Passwords are hashed when they are initially set up. Therefore, the passwords are confidential and data integrity is ensured.

It is not necessary for the operating system or the security accounts manager to remember the password. In subsequent logins, when the user types a specific password, the subsequent password is hashed and the new hash value and the existing hash value are compared. The existing hash value is stored in the password policy database. Security accounts manager is the place which initiates/triggers the password policy database and processes the subsequent log in hash function.

Depending on the validity of the password, the login details are sent back to the local security authority.


Local Security Authority-

Local Security Authority is a protected subsystem that is used to authenticate and logon users to a local system. Different authentication packages stored within the system are called as needed by the local security authority. For example, audit log is frequently updated whenever a user logon is successful/unsuccessful and the user account database is invoked to identify the validity of users trying to logon to a system,

Local security authentication can be of two types:

1. Interactive authentication

2. Non-interactive authentication

Interactive authentication




Interactive authentication happens when a user is prompted to supply logon information.

First when a user types CTRL + ALT + DEL sequence (commonly referred to as the secure attention sequence or SAS), the Winlogon receives the SAS and a part of Winlogon called the GINA ( a GUI) is called.

Then the user can type the username and password and send the data to the local security authority. 

Here the GINA calls the LSALogonUser (used to create new logon session if successful)  and specifies the relevant authentication package needed to assess the logon data. As shown in the figure, logon data is generally stored in authentication databases and two-way arrows are used to show the invoking and rendering of information to and from the LSA. 

Finally the backward operation takes place up to the GINA.

Simply, this is what the user sees.






Non-interactive authentication

A non-interactive authentication occurs after an interactive authentication. This is typically when a user tries to connect to multiple machines in a network once he/she has already logged in to the local machine.


A special interface called the Secure Support Provider Interface is used and a secure network connection is established using a security package.


The basic flow diagram for non-interactive authentication is as follows:




  This is what happens when a client or user wants to connect to another network.

First the user initiates a call to SSPI (Secure Support Provider Interface) to provide authenticated network connection.

Then the SSPI passes this information to the SSP or security packages.

The SSP in turn calls the LSA and the authentication packages and authenticates the user using the user's credentials.

This information is reversed on its way and a success message or an output of a logon screen is displayed to the user.


Therefore, both these types of authentications are similar but the former is used to authenticate a single machine while the latter is used to authenticate a user over a network.






Comments

Popular posts from this blog

First-fit vs Best-fit Allocation algorithms

What are they? First-fit and Best-fit are memory allocation schemes that were typically used in dynamic and fixed partition memory allocation schemes to allocate memory. To simplify what they are, consider the following list of jobs and the available resources. The above figure shows a list of jobs and the resources to which these jobs could be allocated.  Here to allocate the jobs, we use either the first-fit memory allocation scheme or the best-fit memory allocation scheme. The first-fit memory allocation scheme allocates on the basis of the first partition fitting the requirements.  The best-fit memory allocation scheme allocates on the basis of the best partition (one with the least memory wastage) fitting the requirements. Let us allocate the jobs first on the basis of first-fit memory allocation and then on the basis of best-fit memory allocation to understand how jobs are allocated and the pros and cons of the two schemes. Allocating using First-fit memor

Honeypots and Honeynets

What is a honeypot? Honeypots are systems used to gather information about the activity of attackers or intruders to a system. It acts like a trap to detect how a user approaches/intercepts a system, how they behave once intercepted and stores these data into its database (here the database means a storage area, not a collection of data records). A honeypot placed within the DMZ What makes a honeypot? Building a honeypot requires a PC with more preferably a UNIX based operating system and a sniffer tool. (A sniffer tool provides the capability of seeing the traffic going between the firewall and the honeypot)  Where can honeypots be placed? Honeypots can be placed anywhere in the system. They may be placed outside the DMZ, inside the DMZ or even on the internal network.  Honeypots are additional security system. Honeypots differ from firewalls in that honeypots do not filter the traffic passing them and honeypots differ from intrusion detection systems

Goals of computer security

What are the goals of computer security? The number of goals concerning computer security is highly debatable. However, every thoery that is been presented to date ensures three main types of goals: confidentiality, integrity and availability. In this blog post I have mentioned five types of security goals: confidentiality, integrity, availability, authenticity and non-repudiation / accountability. The following figure summarizes what each of these goals mean and who are involved with these goals and what needs to be done to ensure the goals' performance. Click on image to zoom Confidentiality- Confidentiality means that information or services should only be accessed by authorized personnel.  Click on image to zoom   Integrity-   Integrity means that information or services should only be modified by authorized personnel. Click on image to zoom Availability- Information or services should be available to authorized personnel when

Multiprocessing Configurations

Multiprocessing is the use of two or more processors to share system resources. Multiprocessing enhances a system's performance by increasing reliability and enhancing faster processing. For example, consider a simple set of jobs as follows: When the execution is done using a single processor, only one job could be executed at a time. The other jobs have to wait until the job which is being currently executed runs to completion or preempted. This seriously degrades system performance since the waiting queues increase over time and the throughput is decreased. Some jobs may even lead to starvation (more about these concepts in the blog post on deadlocks and starvation). However, when the execution is done using multiple processors, many jobs can execute at the same time. This does not eliminate waiting queues or aging, but generally reduce them. Moreover the throughput is increased while decreasing the turnaround time. However, with every new concept comes a n
DMCA.com Protection Status