Operating System Tutorial

Operating System Tutorial Types of Operating System Evolution of Operating System Functions of Operating System Operating System Properties Operating System Services Components of Operating System Needs of the Operating System

Operating Systems

Linux Operating System Unix Operating System Ubuntu Operating System Chrome Operating Systems Fedora Operating System MAC Operating System MS Windows Operating System Solaris Operating System Cooperative Operating System CorelDRAW Operating System CentOS FreeBSD Operating Systems Batch Operating System MS-DOS Operating System Commercial Mobile Operating Systems

Differences

Difference Between Multi-programming and Multitasking Difference between C-LOOK and C-SCAN Difference between Rotational Latency and Disk Assess Time Trap vs Interrupt Difference between C-SCAN and SSTF Difference between SCAN and FCFS Difference between Seek Time and Disk Access Time Difference between SSTF and LOOK Difference between Process and Program in the Operating System Difference between Protection and Security in Operating System

How To

How to implement Monitors using Semaphores How to Install a Different Operating System on a PC

Questions

What is Kernel and Types of Kernel What is DOS Operating System What is Thread and Types of Thread What is Process Scheduler and Process Queue What is Context Switching What is CPU Scheduling What is Producer-Consumer Problem What is Semaphore in Operating System Monitors in Operating System What is Deadlock What is Paging and Segmentation What is Demand Paging What is Virtual Memory What is a Long term Scheduler What is Page Replacement in Operating System What is BSR Mode What is Convoy Effect What is Job Sequencing in Operating System Why is it critical for the Scheduler to distinguish between I/O-bound and CPU-bound programs Why is there a Need for an Operating System

Misc

Process Management Process State Scheduling Algorithm FCFS (First-come-First-Serve) Scheduling SJF (Shortest Job First) Scheduling Round-Robin CPU Scheduling Priority Based Scheduling HRRN (Highest Response Ratio Next) Scheduling Process Synchronization Lock Variable Mechanism TSL Mechanism Turn Variable Mechanism Interested Variable Mechanism Deadlock Avoidance Strategies for Handling Deadlock Deadlock Prevention Deadlock Detection and Recovery Resource Allocation Graph Banker’s Algorithm in Operating System Fixed Partitioning and Dynamic Partitioning Partitioning Algorithms Disk Scheduling Algorithms FCFS and SSTF Disk Scheduling Algorithm SCAN and C-SCAN Disk Scheduling Algorithm Look and C-Look Disk Scheduling Algorithm File in Operating System File Access Methods in Operating System File Allocation Method Directory Structure in Operating System N-Step-SCAN Disk Scheduling Feedback Queue in Operating System Contiguous Memory Allocation in Operating System Real-time Operating System Starvation in Operating System Thrashing in Operating System 5 Goals of Operating System Advantages of Operating System Advantages of UNIX Operating System Bit Vector in Operating System Booting Process in Operating System Can a Computer Run Without the Operating System Dining Philosophers Problem in Operating System Free Space Management in Operating System Inter Process Communication in Operating System Swapping in Operating System Memory Management in Operating System Multiprogramming Operating System Multitasking Operating Systems Multi-user Operating Systems Non-Contiguous Memory Allocation in Operating System Page Table in Operating System Process Scheduling in Operating System Segmentation in Operating System Simple Structure in Operating System Single-User Operating System Two Phase Locking Protocol Advantages and Disadvantages of Operating System Arithmetic operations in binary number system Assemblers in the operating system Bakery Algorithm in Operating System Benefits of Ubuntu Operating System CPU Scheduling Criteria in Operating System Critical Section in Operating System Device Management in Operating System Linux Scheduler in Operating System Long Term Scheduler in Operating System Mutex in Operating System Operating System Failure Peterson\'s Solution in Operating System Privileged and Non-Privileged Instructions in Operating System Swapping in Operating System Types of Operating System Zombie and Orphan Process in Operating System 62-bit operating system Advantages and Disadvantages of Batch Operating System Boot Block and Bad Block in Operating System Contiguous and Non - Contiguous Memory Allocation in Operating System Control and Distribution Systems in Operations Management Control Program in Operating System Convergent Technologies in Operating System Convoy Effect in Operating System Copy Operating Systems to SSD Core Components of Operating System Core of UNIX Operating System Correct Value to return to the Operating System Corrupted Operating System Cos is Smart Card Operating System Cosmos Operating Systems Examples Generation of Operating System Hardware Solution in Operating System Process Control Block in Operating System Function of Kernel in Operating System Operating System Layers History of Debian Operating Systems Branches and Architecture of Debian Operating Systems Features and Packages of Debian Operating Systems Installation of Operating System on a New PC Organizational Structure and Development in Debian Operating Systems User Interface in Operating System Types Of Memory in OS Operating System in Nokia Multilevel Paging in OS Memory Mapping Techniques in OS Memory Layout of a Process in Operating System Hardware Protection in Operating System Functions of File Management in Operating System Core of Linux Operating System Cache Replacement Policy in Operating System Cache Line and Cache Size in Operating System Kernel I/O Subsystem Security Management in Operating System Bare Machine in Operating System Mutual Exclusion in Operating system Cycle Stealing in the Operating System Cost and Support for the User Operating System Assembly operating system Course Objectives and Outcomes of Operating System Cost of Windows 7 Operating System Cost of UNIX Operating System Cots Operating System Cost of Windows 10 Operating System Artificial Intelligence Operating System Download Artificial intelligence assistant operating system AROS Research Operating System Deadlock Detection in Distributed Systems Process Management in Operating System (OS) Robotics Operating System SSD Caching Tails Operating System Computer Assisted Coding System (CACS) Disk Operating System File Management in Operating System What is the Importance of Operating Systems? Kernel Data Structure Operating System Security All Dos Commands with Explanation Lineage OS Symbian OS Bharat OS ChromeOS Flex Clustered operating system Concurrency in Operating System Monolithic structure in the operating system Oxygen Operating System System calls in the operating system (OS) System program in OS Application Programs in OS Shared Devices in Operating Systems Address Binding in the Operating System Disk Controller in the Operating System Dual-mode Operations in the Operating System Multilevel Queue Scheduling in Operating System Pixel OS POP!_OS Spooling in the Operating System Dead Operating System Difference Between Dual Core and Octa Core Processors Kolibri OS Mageia Operating System Operating System Hardening Blade Server in Operating System Classification of Operating System CNK Operating System Difference between FAT32, exFAT, and NTFS File Systems DIFFERENCE BETWEEN PRIORITY INVERSION AND PRIORITY INHERITANCE DUAL MODE OPERATIONS IN OS File Models in Distributed Operating System MICROKERNEL Monolithic Kernel and key differences from Microkernel Multi-Process Operating System Objectives of the Operating System Parallel System in Operating System What is an OLE Object?

Operating System Security

Introduction

Security is a mechanism that limits how users, processes, or other programmes can access the resources that a computer system has designated. Security is a tool for multiprogramming operating systems that enables multiple users to safely share a single logical namespace, such as a directory or set of files.

What is Operating System Security?

The process that guarantees that the OS is accessible, confidential, and secure is called operating system security. OS security concerns the methods or measures used to protect the operating system against threats, including malware, viruses, Trojan horses, and breaches by remote hackers. Operating system security refers to preventative controls that guard any system assets that might be taken, changed, or lost if OS security is compromised. A computer system's resources, such as its software, CPU, memory, discs, and other components, must be kept secure. In addition to viruses and unauthorized access, it can defend against all threats. Assuring the operating system's availability, confidentiality, and integrity will help enforce it. Computers and the data they hold may sustain severe damage if an unauthorized person starts an application.

Two violations have the potential to put a system's security at risk:

Threat: A programme that poses a threat to the system can seriously harm it.

Attack: The attempt to break safety measures and use a resource without authorization

Malicious and accidental threats are security infractions that might damage the system. Malicious threats are, as their name implies, malicious computer code or web scripts intended to make systems more susceptible to security holes and back doors. On the other hand, accidental threats are more easily avoided.

The following are some of the breaches that could compromise security: They are

1. Breach of confidentiality: It occurs when data is read without authorization.

2. Breach of Integrity: Here, the data has been altered without authorization.

3. Breach of availability: It involves unauthorized destruction of data.

4. Theft of service: This refers to the unauthorized usage of resources.

5. Denial of service: This is the act of blocking authorized users from using the system. As was previously indicated, such attacks may be unintentional.

Security employed by Operating System

OS Security measures are used to stop people from misusing computer system resources or tampering in any way with them. These controls guarantee that data and programmes are not altered or withheld from unauthorized users but rather that they are only utilized by authorized users and only in the intended manner. In contrast to protection measures, which address internal dangers, security measures address threats to resources that originate outside of a computer system. The main tool for security is a password.

Password protection prevents unauthorized users from impersonating authorized system users. Cryptography protects the secrecy of passwords. When using a computer, users must collaborate and share data and programmes saved in files. This is where an operating system's security features come in.

The owner of a file advises the operating system of the exact access privileges that other users are to have, determining whether and how people may access the file. The protection feature of the operating system then makes sure that all accesses to the file strictly adhere to the defined access privileges. We start out by talking about the many methods used to compromise security, including Trojan horses, buffer overflows, and Worms. An analysis of encryption methods follows their description. We next go through three common protection structures, including capability lists, access control lists, and protection domains, and we look at how much control each one provides over file sharing.

Buffer Overflow Technique

To compromise the security of the host computer system, the buffer overflow technique can be used to get a server programme to run malicious code given by the attacker. It has been employed in mail servers and Web servers with disastrous results.

Simple is the key concept behind this method: Many programmes fail to verify the length of inputs they get from users or another program, leaving most systems vulnerable.

Due to this flaw, a buffer area that receives such input may overflow and corrupt the contents of nearby memory portions. Such overflows present the possibility of executing a piece of code disguised as data put in the buffer on hardware platforms that utilize stacks that expand downward in memory, such as the Intel 8086 architecture. Several security attacks could be launched using this code.

How may a buffer overflow trigger a security breach?

1. To reach lower addresses in memory, the stack grows downward. Before the function executing calls the function sample, it appears on the left.

2. The calling function's code pushes a return address and two sample parameters onto the stack. These occupy a total of four bytes each.

3. The sample code assigns the stack to other variables and the variable beta. Now, the stack appears as it does on the right. Notice that the beta's start address is at the lowest possible location in the RAM allocated to it. The final byte of the parameters is next to the beta's end address.

4. The function sample copies the 412 bytes in the variable beta. Code that would violate security is present in the first 408 bytes of the file. This code's start address is located in bytes 409–412. The stack's return address is replaced by these four bytes.

5. The return statement in the function sample is carried out. The stack entry's address, which is predicted to be the return address, receives control before moving on. In essence, the code stored in the variable beta is executed. It runs under the invoking function's privileges.

1. Authorization: This is the process of confirming that a user has access to a system's resources. Passwords can be used by intruders who guess or steal them. An intruder might employ a password provided by the vendor, which the system administrator is supposed to use. Trial and error could be used to find the password. A hacker may use the terminal if a user logs on and leaves for a break. In order to deceive users, an attacker can create a fake login programme that also gathers data for later use.

2. Authentication: Verifying a user's identity is referred to as authentication. Operating systems most frequently carry out knowledge-based authentication. In other words, a person pretending to be user X is asked to provide information that is only known to them and their OS, such as a password.

3. Browsing: Because files are highly open-ended, browsing system files is simple. Because of this, it may access databases and read confidential data.

4. Trap doors: Software developers occasionally desire to change their programmes after installation. Programmers preserve several hidden access points for that purpose, and they can use them without asking for permission. They're known as trap doors. Intruders can use these trap doors.

5. Invalid parameters: Security breaches may occur due to using invalid parameters.

6. Line tapping: Secret information can be accessed or changed via taping in communication lines.

7. Electronic data capture: This method of gathering information involves using wiretaps or other devices to pick up screen radiation and identify what is shown on a screen.

8. Lost Line: The networking line frequently gets confused. As a result, some operating systems log out and only permit access after verifying the user's identity. Some operating systems can't do this. As a result, the procedure will be unsecured and open to intrusion.

9. Improper Access Controls: Several administrators could fail to protect all rights. Therefore, some users have more access than others, and vice versa.

10. Waste Recovery: The block's information will remain unchanged if it is erased. Until a different file is assigned to it, the intruder may use some technique to scan these blocks.

11. Rogue software: Some programmes are written to cause trouble.

Goals of Security System

System security has various goals. Here are few of them:

  • Integrity: No unauthorized users should have access to system objects, and users with inadequate privileges shouldn't be able to modify important system resources or files.
  • Secrecy: A limited number of authorized users must be able to access the system's objects. The system files shouldn't be accessible to everyone.
  • Availability:  All of the system's resources must be available to all authorized users; hence, no single user or process should be able to use the system's resources completely. A denial of service might arise in this kind of situation. In this kind of circumstance, malware may take over the resources and prohibit normal processes from using the system resources.

Types of Threats

There are two different kinds of threats. The following are:

1. Program threats

Processes and the kernel of the operating system do the requested task as directed. Programme threats occur when a user programme instructs these processes to perform destructive actions. The most typical example of a programme threat is the possibility that, after being installed on a computer, a programme could store and transmit user credentials to a hacker. There are several types of programme threats. These are only a few of them:

Types of program threats:

1. Virus: A well-known and infamous threat. It is a malicious thread that quickly replicates itself after attaching to a system file, modifies and destroys crucial files, and ultimately causes the system to crash.

2. Trojan Horse: A Trojan Horse is a code that misuses its environment. They appear to be tempting and harmless cover programmes, but they are dangerous concealed programmes that can operate as virus carriers. In one of the Trojan versions, the user is tricked into entering private login information on an application. A login emulator steals those details, which can be used for data breaches. One of the most significant risks or effects of a Trojan horse is that, after being installed or running on the computer's system, it will cause significant harm, despite initially appearing to be intentionally unwanted software that is subsequently revealed to be helpful.

Spyware is another variation; it comes with a programme that the user has chosen to install and downloads ads to show on the user's system, resulting in pop-up browser windows. When the user visits specific websites, spyware collects crucial information and transmits it to the remote server. Converting Channels is another name for these types of attacks.

3. Trap doors: The Trap Door operates on similar principles as when a system's or programme's designer leaves a vulnerability in the code that only he can exploit. Every system component's source code must be examined to analyze trap doors, making them very challenging to find. To put it another way, if we had to define a trap door, it would be something like this: a trap door is a hidden entry point into a static or running programme that allows anyone to access any system without going through routine security access procedures.

4. Logic Bomb: A programme that launches a security assault only in a specific situation. A logic bomb is the most malicious program purposely inserted into the computer system, and it is activated or operates when particular circumstances have been met for it to function.

5. Worm: Computer worms are a particular kind of malware that infects other computers and continues to operate on the affected systems. To infect computers that aren't already infected, a computer worm replicates. The majority of the time, it does this by utilizing automatic, user-unnoticed operating system features. Worms are usually ignored until their unregulated replication exhausts the system's resources, slowing or halting other activities.

2. System threats

System threats are defined as the misuse of network connections and system services to create issues for users. Programme assaults, sometimes referred to as these threats can be used to start the programme assaults across the entire network. Threats to the system create an environment where user files and OS resources may be misused. System risks come in many forms. Here are a some examples:

Types of system threats:

Aside from programme risks, a number of system threats also put our system's security in danger.

1. Worm: An infection programme that uses networks to spread. They primarily target LANs, unlike viruses. A worm-infected computer hits the target machine and installs a short programme called a "hook" on it. The worm is additionally copied to the intended computer via this hook. Recursively repeating this technique eventually has an impact on all LAN systems. It replicates itself utilizing the spawn mechanism. The worm creates copies of itself, consuming most system resources and blocking all other processes at the same time.

2. Port scanning: This is an approach the cracker uses to find weak points in the system to exploit. An automated process establishes a TCP/IP connection to a particular port. Attacks using port scanning are launched through zombie systems or formerly independent systems that still support their owners while being exploited for notorious reasons to conceal the attacker's identity.

3. Denial of Service: These attacks don't intend to gather data or erase system files. Instead, they are employed to obstruct a system's or facility's proper operation.

Most of these assaults are network-based. There are two types of them:

•As a result of the first category of attacks' excessive resource consumption, no practical work can be done.

Obtaining a file from a website and then having the website occupy all of the CPU time.

•The second category of attack targets the facility's network, causing disruption. Misusing a few basic TCP/IP fundamentals led to these attacks.

How to Ensure Operating System Security

1. Authentication Measures

Matching a recognized user with the applications or data they are permitted access is the goal of authentication measures. Controls are available in every operating system and can be used to confirm that users are legitimately allowed to run a particular programme.

Here are various methods for operating system-level user authentication:

  1. Security keys: These are types of keys produced by a key generator, usually in the form of a physical dongle. The user must insert their key into the slot on the device to log in.
  2. Usernames and Passwords: The user must provide a username and password that have been registered with the OS.
  3. Biometric signatures: A bodily characteristic, such as a fingerprint or retina, is scanned by the user to verify their identity.

2. One-time Passwords

Every time a user connects to a system, a new password is generated. This password is known as a one-time password. These passwords must be entered immediately as they appear and cannot be stored.

One-time password examples are provided below:

  1. Network passwords: A programme delivers users' one-time passwords via their registered mobile phone number or email address. To access the computer, the user has to enter a password.
  2. Random numbers: The user is given a card with a list of numbers that match computer letters. The operating system demands that the user enter the numbers that match a series of randomly generated letters.
  3. Secret Keys: The user has a device that creates secret keys. The secret key is then entered into the OS system by the user, who is then able to access the user credentials connected to the key.

3. Virtualization

The ability to abstract or segregate software from hardware is provided by virtualization. As a result, there is a significant increase in efficiency and flexibility, as well as security coverage.

You may handle numerous isolated user environments thanks to OS virtualization. A hypervisor functions as a layer between the device and the virtualized resources, enabling and creating these user environments.

On each device, there are normally two to three virtual machines (VMs) that the hypervisor administers. For every user or security zone, a different VM is employed.

Fully locked down, unlocked or open, and semi-locked down virtual machines are the three basic types that can coexist.

Any type of VM is restricted to the actions permitted by its design, preventing any more effort. This maintains environmental security.

The hypervisor, which runs beneath the device's OS, separates the data into several virtual machines (VMs) that run their operating systems locally, thereby isolating users. Device security is maintained since users are isolated.

No virtualized environment has direct access to the network, which is another benefit of OS virtualization. Instead, an invisible, virtualized network layer that carries out network segmentation on the endpoint device provides connectivity.

4. Operating System hardening

To secure a server's operating system (OS), operating system hardening involves patching and implementing the latest security procedures. Having modifications, patches, and service packs installed automatically is one of the best ways to get the operating system into a hardened condition.

Operating System Security Policies and Procedures

There may be different OS security policies in place, depending on the organisation where you work. A document called an OS security policy describes the procedures to be followed in order to ensure that the operating system manages a specific level of security, accessibility, and integrity.

OS Security guards against viruses, worms, malware, threats, backdoor invasions, and other risks to systems and data. Security policies deal with all preventative measures, including stealing data, editing, and deleting, to protect an operating system's security.

There are many ways to approach operating system security policies and procedures because they cover a large area. Here are a few examples:

1. Setting up and maintaining antivirus software

2. Ensure that the systems are patched or upgraded regularly.

3. Implementing user management policies in place for protecting user accounts and privileges.

4. Setting up a firewall and making sure it's configured correctly for monitoring every bit of outgoing and incoming traffic

It would help if you first decide which resources, systems, hardware, and data are most important to your organization before developing and implementing OS security policies and procedures. After it is finished, a policy to efficiently protect and safeguard them can be created.