Module 6 Security in Operating Systems - PowerPoint PPT Presentation

1 / 34
About This Presentation
Title:

Module 6 Security in Operating Systems

Description:

Module 6 Security in Operating Systems MModified by :Ahmad Al Ghoul PPhiladelphia University FFaculty Of Administrative & Financial Sciences BBusiness Networking ... – PowerPoint PPT presentation

Number of Views:57
Avg rating:3.0/5.0
Slides: 35
Provided by: phi123
Category:

less

Transcript and Presenter's Notes

Title: Module 6 Security in Operating Systems


1
Module 6 Security in Operating Systems
  • MModified by Ahmad Al Ghoul
  • PPhiladelphia University
  • FFaculty Of Administrative Financial Sciences
  • BBusiness Networking System Management
    Department
  • RRoom Number 32406
  • EE-mail Address ahmad4_2_69_at_hotmail.com

2
Contents
  • Protection In General-Purpose OS
  • Protected Objects and Methods
  • Protection by separation
  • Memory and address protection
  • Protecting Access to General Objects
  • Access control for general objects
  • Directory
  • File protection mechanisms
  • passwords
  • Trusted OS

3
Protection In General-Purpose OSobjectives
  • Protected Objects and Methods
  • Protecting Memory and Addressing
  • Protecting Access to General Objects
  • File Protection Mechanisms
  • User Authentication

4
Protected Objects and Methods
  • Protected Objects
  • Security Methods of Operating Systems

5
Protected Objects
  • With the rise of multiprogramming, several
    objects of a computing system required
    protection
  • Memory
  • Sharable I/O devices, such as disks
  • reusable I/O devices, such as printers and tape
    drives
  • sharable programs and sub-procedures
  • sharable data

6
Security Methods of Operating Systems
  • Separation keeping one users objects separate
    from other users, separation in an operating
    system can occur in several ways
  • Physical Separation, in which processes use
    different physical objects, such as separate
    printers for output requiring different levels of
    security
  • Temporal Separation, in which processes having
    different security requirements are executed at
    different times
  • Logical Separation, in which users operate under
    the illusion that no other processes exist, as
    when an operating system constrains a programs
    access so that it cannot access objects outside
    its permitted domain
  • Cryptographic Separation, in which processes
    conceal their data and computations in such a way
    that they are unintelligible to outside
    processes.

7
Protecting Memory and Addressing (1)
  • The most obvious problem of multiprogramming is
    preventing one program from affecting the memory
    of other programs. Protection can be built into
    the hardware mechanisms that provide for
    efficient use of memory, so that solid protection
    can be provided at essentially no additional
    coast
  • Fence A fence is a method to confine users to
    one side of a boundary. Can protect operating
    system from one user, but not users from each
    other Usually, fence is implemented via a
    hardware register.
  • Unfortunately, that implementation was very
    restricted because a predefined amount of space
    was reserved for operating system . If less than
    that amount of space was required, the access
    space was wasted and the operating system could
    not grow beyond the the fence boundary.

8
Fence
9
Protecting Memory and Addressing (2)
  • Relocation Relocation is the process of taking a
    program written as if it began at address 0 and
    changing all addresses to reflect the actual
    address at which the program is located in
    memory.
  • Fence register can be used within relocation
    process. To each program address, the contents of
    the fence register are added. This both relocates
    the address and guarantees that no one can access
    a location lower than a fence address.

10
Relocation
11
Protecting Memory and Addressing (3)
  • Base/Bounds Registers In a multi-user,
    multiprogramming environment. With 2 or more
    users, neither can know in advance where a
    program will be loaded for execution. The
    relocation register solves the problem by
    providing a base or starting address. The fence
    register is variable. In this case fence register
    is called base register.
  • Fence registers only provide a lower bound (a
    starting address), but not an upper one. A second
    register, called a bounds register can be used to
    provide a upper bound. In this way, a programs
    addresses are neatly confined to the space
    between the base and the bounds registers.
  • This technique protects a programs addresses
    from modification by another user.

12
Base/Bounds Registers
13
Protecting Memory and Addressing (4)
25060
  • Base/bounds registers create an all-or-nothing
    situation for sharing, that is, either a program
    makes all its data available to be accessed and
    modified, or it prohibits access to all. But in
    some cases, one may want to protect some data
    values but not all. One of the solutions of such
    cases is tagged architecture.
  • Tagged Architecture The disadvantage of
    Base/Bounds technique
  • Tagged Architecture
  • Every word of machine memory has one or more
    extra bits to identify the access rights to that
    word.
  • This technique is not wide spread because of the
    market consideration (compatibility of code).

14
Tagged Architecture
15
Protecting Memory and Addressing (5)
25070
  • Segmentation Segmentation divides a program into
    separate pieces. Each piece has a logical unity,
    a relationship among all of its code or data
    value.
  • Segmentation was developed as a feasible means
    to have the effect of an unbounded number of
    base/bounds registers a program could be divided
    into many pieces having different access rights.
  • The operating system must maintain a table of
    segment names and their true addresses in memory.
    The program address is in the form ltname, offsetgt
    (where name is the name of the segment containing
    data item and offeset is its location within the
    segment). OS can retrieve the real address via
    looking for the table then making a simple
    calculation
  • address of the name offset

16
Segmentation
17
Protecting Memory and Addressing (6)
  • Paging An alternative to segmentation is paging.
    The program is divided into equal-sized pieces
    called pages, and memory is divided into the same
    sized units, called page frames. Each address is
    represented in a form ltpage, offsetgt.
  • Operating system maintains a table of user page
    numbers and their true addresses in memory. The
    page portion of every ltpage, offsetgt reference is
    converted to a page frame address by a table
    lookup the offset portion is added to the page
    frame address to produce the real memory address
    of the object referred to as ltpage, offsetgt.

18
Paging
19
Protecting Access to General Objects
  • Protection of memory is a specific case of the
    more general problem of protection of objects.
    Next I will discuss the general techniques for
    protecting access to general objects.
  • Directory
  • Access Control List

20
General Objects
  • Memory
  • a file or data set on an auxiliary storage device
  • an executing program in memory
  • a directory of files
  • a hardware device
  • a data structure, such as a stack.
  • A table of the operating system
  • instructions, especially privileged instructions
  • passwords
  • the protection mechanism itself

21
Directory
  • This technique works like a file directory.
    Imagine the set of objects to be files and the
    set of subjects to be users of a computing
    system. Every file has a unique owner who
    possesses control access rights, including the
    right to declare who has what access and to
    revoke access to any person at any time. Each
    user has a file directory, which lists all the
    files to which that user has access.
  • OS maintains all directories. Each user has a
    list (directory) that contains all the objects
    that user is allowed to access.suppose that user
    S has trouble remembering file content from the
    name F anther approach is to allow S to name F
    with any unique name to the directory of S. then
    F from could be called Q to S. S may forgotten
    that F is Q from A and so S requests access again
    from A for F. A trust S, so A transfer F with
    greater rights than before. This leaves the
    possibility of one subject S having two sets of
    access rights to F. the directory approach
    therefore, is to simple for most object
    protection situation. This case shown in the
    figure next slide.

22
Directory
23
Access control for general objects
  • Objects memory, files, executing program in
    memory, directory, hardware device, data
    structures, table of the OS, instructions,
    passwords/user authentication mechanism,
    protection mechanism itself.
  • Goals
  • Check every access
  • Enforce least privilege
  • Verify acceptable usage

24
Access Control List
  • Each object has an access control list. This
    list shows all subjects who should have access to
    the object and what the access is.
  • This technique is widely used in Distributed
    File Systems.

25
File Protection Mechanisms
  • All-or-none protection
  • Group protection
  • Single permissions (password protection for
    files)

26
Basic Forms of Protection
  • All-None Protection All none protection is based
    on trust and ignorance. Trust means that users
    could be trusted not to read or modify others
    files. Ignorance is based on the users only know
    the names of the files to which they have
    legitimate access.
  • The principal protection was trust, combined
    with ignorance.
  • Group Protection
  • Users in the same group have the same right for
    objects.

27
Single Permissions
  • Password or other token
  • assign a password to a file A simplified form of
    password protection is applicable for file
    protection. A user can assign a password to a
    file. User accesses are limited to those who can
    supply the correct password at the time the file
    is opened.
  • Temporary Acquired Permission
  • Unix set userid permission. If this protection is
    set for a file to be executed, the protection
    level is that of the files owner, not the
    executor.

28
User Authentication
  • An operating system bases much of its protection
    on knowing who a user of the system is. The ways
    of an operating system identify and authenticate
    a user are
  • Use of Passwords
  • Attacks on Passwords
  • Password Selection Criteria
  • The Authentication Process
  • Flaws in the Authentication Process
  • Authentication Other Than Passwords

29
Use of Passwords
  • Passwords are mutually agreed-upon code words,
    assumed to be known only to the user and the
    system.
  • The use of of passwords is fairly
    straightforward. A user enters some piece of
    identification, such as a name or an assigned
    user ID, if the identification matches that on
    file for the user, the user is authenticated to
    the system. If the identification match fails,
    the user is rejected by the system.

30
Attacks on Passwords
  • Try all possible passwords
  • exhaustive or brute force attack
  • Try many probable passwords
  • Users do not likely select a password uncommon,
    hard to spell or pronounce, very long
  • Try passwords likely for the user
  • Password generally is meaningful to the user
  • Search for the system list of passwords
  • Finding a plain text system password list
  • Ask the user
  • Get the password directly from the user.

31
Password Selection Criteria
  • Password selection criteria
  • Non-alphabetic (mixed)
  • Long
  • Avoid actual names
  • Change regularly
  • Dont write it down
  • Dont tell any one
  • One-time passwords

32
Flaws in the Authentication Process
  • Password authentication assumes that anyone who
    knows the password is the user to whom the
    password belongs.but password can be stolen. The
    password then is a piece of evidence but we want
    more convincing proof.
  • Challenge response systems
  • The system prompts the user for a reply that is
    different each time the user logs in. for ex. The
    system might display four digit number, and the
    user would have correctly enter a function such
    as the sum or product of the digits

33
Authentication Other Than Passwords
  • There are other ways for authentication, like
    PIN, mothers maiden name, passcode, ATM card,
    smart card, token, key, ID Badge, driver license,
    passport, Fingerprint, voice scan, DNA

34
Designing Trusted Operating Systems
  • An OS is trusted if we have confidence that it
    provides the four services in a consistent and
    effective way
  • Memory protection
  • File protection
  • General object access control
  • User authentication
Write a Comment
User Comments (0)
About PowerShow.com