0% found this document useful (0 votes)
22 views92 pages

343032633

Uploaded by

thapaharshit16
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF or read online on Scribd
0% found this document useful (0 votes)
22 views92 pages

343032633

Uploaded by

thapaharshit16
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF or read online on Scribd
You are on page 1/ 92
Introduction to Information Security CS 4235 Information Security ¢ Information is a commodity: its purchase and sale is central to the free enterprise system ¢ Protection Mechanisms are like putting a lock on the door of a merchant's warehouse * The protection of resources (including data and programs) from accidental or malicious modification, destruction, or disclosure What is Computer Security? Wikipedia: Computer security is the effort to create a secure computing platform, designed so that agents (users or programs) cannot perform actions that they are not allowed to perform, but can perform the actions that they are allowed to. Garfinkel and Spafford: A computer is secure if you can depend on it and its software to behave as you expect. Pfleeger and Pfleeger: define in terms of goals What does “allowed” or “expect” mean? is all-important: defines specifically what is and is not allowed, and what to expect (and who is responsible!) ~— Technical security is then: how to make sure systems are used in accordance with policy What policies make sense? How do we enforce these policies? Key Security Concepts om WO and services Goals of Computer Security Basic Goals — Confidentiality: Information only available to authorized parties — Integrity: Information is precise, accurate, modified only in acceptable ways, consistent, meaningful, and usable — Availability: Services provide timely response, fair allocation of resources, quality of service Added when people talk about “Information Assurance” —Non-repudiation: Messages or actions are accompanied by proof which cannot be denied — Authentication: Establishing the validity of a transmission, message, or originator (including verifying the identity of a participant) User Privacy * privacy means that users have control over info collected and made available to others * Examples: — User may not want others to know programs they run, who they communicate with, etc. — User may not want to receive spam * Anonymity can protect privacy 6 What About Privacy? Confidentiality - ensures that sensitive information is not disclosed to unauthorized recipients Integrity - ensures that the data and programs are modified or destroyed only in a specified and authorized way Availability - ensures that the resources of the system will be usable whenever they are needed by an authorized user Privacy - ensures that only the information that an individual wishes to disclose is disclosed CNSS Model ¢ CNSS stands for Committee on National Security Systems (a group belonging to the National Security Agency [NSA]). CNSS has developed a National Security Telecommunications and Information Systems Security (NSTISSI) standards. ¢ NSTISSI standards are 4011, 4012, 4013, 4014, 4015, 4016. CNSS Security Model Technology Education Policy Confidentiality Integrity Availability Storage Processing Transmission CNSS Security Model The model identifies a 3 x 3 x 3 cube with 27 cells Security applies to each of the 27 cells These cells deal with people, hardware, software, data, and procedures A hacker uses a computer (hardware) to attack another computer (hardware). Procedures describe steps to follow in preventing an attack. An attack could be either direct or indirect In a direct attack one computer attacks another. In an indirect attack one computer causes another computer to launch an attack. 10 System Functionality ¢ Limiting functionality limits attacks ¢ Security breaches caused by system functionality can be caused by — Software bugs — Unforeseen interactions between components Relative Security Few useful systems will be absolutely secure We view security in a relative sense This does not mean that good security design and implementation is unimportant Example: safes Cost vs Security ¢ Proper security level depends on value of the items that system is protecting (other concerns?) ¢ Trade-off between cost and security ¢ Select security level appropriate for user needs Cost vs Security (continued) Example: user authentication — System A - authenticates the user by retinal scan — System B - authenticates users once with password System A is probably more secure than system B, but more costly and inconvenient Is added security and expense called for? — Maybe for NSA Not for an individual Four Basic Principles from Pfleeger Principle of Easiest Penetration — Not most obvious or most expected but easiest! Principle of Weakest Link — Security no stronger than weakest link Principle of Adequate Protection — Protect assets to a degree consistent with their value Principle of Effectiveness — Controls must be efficient, easy to use, appropriate, ... and used. Some History 1967: People starting to publish papers on computer security 1970: Influential (in some circles!) RAND report: “Security Controls for Computer Systems” — Originally classified — declassified in 1979 1964—1974?: MULTICS system development Mid-70’s: Many influential papers published in open literature Mid-70’s: Cryptography takes off in public research 1985: Department of Defense publishes “Trusted Computer System Evaluation Criteria” (Orange Book) 1994: Publication of “Common Criteria for Information Technology Security Evaluations” 2003: Publication of “The National Strategy to Secure Cyberspace” 16 Some History — The Other Side 1970°s: Age of phone phreaking 1980’s; BBSes, Legion of Doom, and Chaos Computer Club 1983: War Games movie comes out 1984: 2600 (The Hacker Quarterly) publication starts 1986: First PC virus in the wild (the “Brain virus”) 1988: The “Morris worm” — Automated spreading across the Intemet, Exploited several bugs, including the first highly-visible “buffer overflow” exploit (of fingerd) Around 6000 computers affected ~ 10% of the Internet at the time! Morris convicted in 1990 CERT created largely because of this Early 1990's: Kevin Mitnick (“Condor”) years — Arrested several times — Went “underground” in 1992 and achieved cult status ~Caught in Raleigh, NC in 1995 Well-known for “social engineering” skill Some History — The Other Side (cont’d) 1993: Kevin Poulsen hacks phones so he wins radio station contests (Porches, trips, cash, ...) 1999 — present: Widespread worms/viruses — 1999: Melissa (Word macro virus/worm) — 2000: Love Letter (VBScript — did damage!) — 2001: Nimda (hit financial industry very hard) — 2001: Code Red (designed to DoS the White House, but hard-coded IP address so defeated!) — 2003: “Slammer” (spread astoundingly fast!) 1999: DDoS networks appear — 2000: Big attacks on Yahoo, eBay, CNN. — Today: “Bot-nets” with 10’s of thousands of bots How bad is it? September 2001 - Nimbda worm spread nationwide in less than an hour and attacked 86,000 computers January 2003 — Sapphire/Slammer SQL worm was able to spread nationwide in less than 10 minutes, doubling in size every 8.5 seconds. At its peak (3 minutes after its release) it scanned at over 55 million IP addresses per second, infecting 75,000 victims Geographic Spread of Code Red Worm Why is it so bad? Computers are everywhere Internet has become a mission-critical infrastructure for business, government, and financial institutions Today’s networks are very heterogeneous, highly critical applications run side by side with noncritical systems Cyber attacks against non-critical services may produce unforeseen side-effects of devastating proportions Why is it so bad? * Home Users Increase Vulnerabilities * Today most homes are connected, particularly with the advent of DSL and cable modems * Most home users: — are unaware of vulnerabilities — don’t use firewalls — think they have nothing to hide or don’t care if others get their data — don’t realize their systems can serve as jump off points for other attacks (zombies) Why is it so bad? ¢ Computer security is reactive — usually reacting to latest attack — offense is easier than defense * Security is expensive both in dollars and in time ¢ There is not now, and never will be, a system with perfect security Security Trends 1990 19911992 19931984 1995 1996 1997 1998 1999 2000 2001 Security Technologies Used Source: Computer Security InatterFB] 2906 Computer time nd Scurty Survey Damage Done ‘Figure 16, Dollar Amount Losses by Type Average total loss per respondent: $203,606 But a wide range of respondent organization sizes: + 22% revenue <$10 million + 34% revenue >$1 billion 26 150000 100000 50000 Security Incidents MIncidents Source: CERT Security Vulnerabilities 5000 @ Vulnerabilities| 4000 3000 2000 1000 0 508 [ons [1995 [1996 [1007 [1908 [1999 [2000 [2003 [2002 [2003 [2004 [evutnerabitities 30.6 [aya | 34s | 323 | 262 | a7 | a090[ 2437 [4,129] 3705 | 3700 Who are the attackers? Script kiddies download malicious software from hacker web sites Hackers trying to prove to their peers that they can compromise a specific system Insiders are legitimate system users who access data that they have no rights to access Organizational level attackers use the full resources of the organization to attack Attacks and Attackers An attack is when a vulnerability is exploited to realize a threat An attacker is a person who exploits a vulnerability Attackers must have Means, Opportunity, and Motive (MOM) — Means: Often just an Internet connection! — Opportunity: Presence of vulnerabilities — Motive may be complex, or not what you think! 30 Attackers — Motives Intellectual challenge —Some people see it as a game Espionage (government or corporate) Financial reward — Credit card numbers sold, spam-nets rented, fraud, ... Revenge Showing off — DDoS attacks on CNN, eBay, Yahoo, etc. Civil disobedience — Basic vandalism —“Hactivism” 31 Attackers — Types Amateurs — Could be ordinary users (insiders) exploiting a weakness — Sometimes accidental discoveries Crackers — People looking specifically to attack — Motive is often challenge, not malice — Skill level ranges from very low (script kiddie) to high Career criminals — Organized crime beginning to get involved — Terrorists? (Cyber-terrorism) Government/military information warfare Computer Security Threats Browsing Leakage Inference Tampering Accidental destruction Masquerading Denial of services Computer Security Threats + Browsing Searching through main and secondary memory for residue information + Leakage Transmission of data to an unauthorized user from a process that is allowed to access the data + Inference Deducing confidential data about an individual by correlating unrelated statistics about groups of individuals 34 Computer Security Threats Tampering - Making unauthorized changes to the value of information Accidental Data Destruction - Unintentional modification of information Masquerading - Gaining access to the system under another user's account Denial of Service - Prevention of authorized access to computer resources or the delaying of time-critical operations 35 Bishop Threat Definitions ¢ Threat is a potential violation of security ¢ Attacks are those actions which could cause a threat to occur * Attackers are those who execute an attack Cerias Definitions * Vulnerability is a flaw in a system that allows a policy to be violated ¢ Exploit is the act of exercising a vulnerability Also used to refer to an actual program, binary or script that automates an attack * Exposure is an information leak that may assist an attacker 37 Threats and Vulnerabilities Avulnerability is a weakness in a security system. — Can be in design, implementation, or procedures A threat is a set of circumstances that has the potential to cause loss or harm. ~ Threats can be Accidental (natural disasters, human error, ...) Malicious (attackers, insider fraud, ...) — NSA “major categories of threats”: fraud, hostile intelligence service (HOIS), malicious logic, hackers, environmental and technological hazards, disgruntled employees, careless employees, and HUMINT (human intelligence) 38 Threats to Confidentiality Interception/Eavesdropping/Wiretapping (sniffers) — Used to be commonly installed after a system break-in — Can (could?) capture passwords, sensitive info, ... — Some resurgence with wireless networks — Has always been a problem with wireless transmission! — Electromagnetic emanations (TEMPEST security) * Illicit copying (proprietary information, etc.) — Copied company documents, plans, ... — Copied source code for proprietary software —Non-electronic: “dumpster diving”, social engineering 39 Threats to Integrity Modification ~ Changing data values (database) — Changing programs (viruses, backdoors, trojan horses, game cheats, ~ Changing hardware (hardware key capture, ...) — Can be accidental corruption (interrupted DB transaction) — Many small changes can be valuable (e.g., salami attack) Fabrication ~— Spurious transactions — Replay attacks Identity spoofing — Somewhat related: fake web sites and “phishing” 40 Threats to Availability Denial of Service (DoS) — Commonly thought of as network/system flooding — Can be more basic: disrupting power — Deleting files — Hardware destruction (fire, tornado, etc.) Latest: Distributed Denial of Service (DDoS) — Bot-nets of zombie machines that can be commanded to flood and disable “on-command” — Discovery of botnets with 10-100 systems is a daily occurrence; 10,000 system botnets are found almost weekly; and one botnet with 100,000 hosts has even been found (according to Johannes Ullrich, CTO of the Internet Storm Center). 4 Vulnerabilities From the book: a _ soe ARE _7 ane 9 remrton Most Common Threat Password Guessing More of a problem with the availability of personal computers and fast connections Exhaustive search for passwords Lists of commonly used passwords Distributed default passwords Spoofing ¢ Duping a user into believing that he is talking to the system and revealing information (e.g., password) Browsing ¢ After an intruder has gained access to a system he may peruse any files that are available for reading and glean useful information for further penetrations * Often done by legitimate users Trojan Horse Trojan Horse A program that does more than it is supposed to do More sophisticated threat A text editor that sets all of your files to be publicly readable in addition to performing editing functions Every unverified program is suspect Trojan Horse re Restricted Data Trojan Horse Borrowed Program 48 Trap Door « Asystem modification installed by a penetrator that opens the system on command « May be introduced by a system developer * Bogus system engineering change notice Virus ¢ A program that can infect other programs by modifying them to include a possibly evolved copy of itself 50 Examples Amiga Virus Resident on boot block IBM Christmas Virus Names and netlog files Denial of service Census Bureau County and City Data Book CD-ROM WWW Pages Containing Applets MIME-encoded Mail Code Red Worm Blast sl Statistical Database ¢ A statistic is sensitive if it discloses confidential information about some individual, organization, or company ¢ Nonsensitive statistics may lead to the disclosure of sensitive data Inference of Sensitive Data From Nonsensitive Information * Can detect information about an individual by querying about a group where the individual is the only member in the group or the only one not in the group ¢ For example: If Smith is the only foreign worker, one can deduce information about Smith by querying about non-foreigners Why Computer Crime is not Reported « Asuccessful attack reveals vulnerabilities to other potential intruders « Adverse publicity discourages new clients and disappoints shareholders * Often viewed as a harmless prank Security Policy ¢ Asecurity policy is a statement of what is and what is not allowed ¢ May be informal (English statements) or formal (mathematical logic statements) Policy Simplicity * Simpler security policies are easier to get right, reason about and implement * Security breaches caused by policy shortcomings are most often due to — Incomplete or inconsistent policy — Misunderstanding the policy’s requirements — Error in implementation 56 Secure Computer System * Asecurity policy specifies exactly what types of actions are and are not permitted on the system + Example security policy — Only authorized users able to use the system — Authorization/Access control — Resources sharing among users * Asecure system obeys its security policy 37 Security Breaches A violation of a system’s security policy is called a security breach Security breaches can occur — Accidentally — faulty program — Intentionally — virus Creating a system where security breaches cannot occur can be easy or impossible depending on — What the security policy requires — How the system implements the policy 58 Secure Systems Design ¢ Policy Simplicity Principle — Policy as simple as possible (but no simpler) — Should state what is allowed and forbidden « System Functionality Principle — Include necessary functionality (and no more) — Perform job it was designed to do (and no more) 59 Defenses and Controls * Acontrol is a protective measure to remove or reduce a vulnerability — Action, device, procedure, or technique ¢ Business motivation: Manage risk — Main purpose: Balance risk with costs — Risks can be prevented, deterred, detected and responded to, transferred, or accepted * Risk Analysis: — Determine what controls are most cost-effective — Most “bang for the buck” 60 Controls — Examples Policies/procedures (acceptable use, password, training) Cryptography Access Control — Operating System controls (file rights, capabilities — Application access restrictions (DB, web server, ...) — Network boundary (firewall, VPN, ...) — Advanced authentication (smart cards, tokens, ...) Detection programs (virus scanners, IDS’s) Regularly test/evaluate (called “penetration testing” or “red teams” or “tiger teams”) Development controls (secure software development) Physical controls (door locks, media management) Defense in Depth * Definition: Using multiple layers of security to protect against failure of individual controls. * Non-computer example: — Multi-walled (or concentric) castles — Vats of boiling oil helped too... * Computer security example: — Internal systems with access control protections, on an internal network with an intrusion detection system, with connections from outside controlled by a firewall. 62 The Role of Trust ¢ Who/what to trust is fundamental! ¢ Trust in certain people — Background checks, references, ... * Trust in systems — Evaluation through certifications, etc. — Do you trust your software? — Do you trust your hardware? Access Control A means of limiting a user's access to only those entities that the policy determines should be accessed Subjects - Active entities in the system (e.g. , users, processes, programs) Objects - Resources or passive entities in the system (e.g. , files, programs, devices) Access Modes - Read, write, execute, append, update Access Control Mechanisms - Determine for each subject what access modes it has for each object Access Control * Discretionary Access Control (DAC) The owner specifies to the system what other users can access his files (Access is at the user's discretion) * Mandatory Access Control (MAC) The system determines whether a user can access a file based on the fixed security attributes of the user and of the file (Non-discretionary access) 65 Access Control Matrix Objects Subjects | 01 | 02 | 03 | 04 | O5 $1 W RW | W $2 R E R $3 RW/ E $4 RE RW RE Access Control List (Authorization List) ¢ Associated with each object * Contains subject name and type of access allowed * Corresponds to column in the matrix Capability List (C-list) Associated with each subject Contains object name and type of access allowed Corresponds to a row in the matrix Defines the environment or domain that the subject may access 68 Mandatory Control Policy Each subject has an access class (authorization) Each object has an access class (classification) Access class made up of - level - category set Comparison of access classes (=, <, >, NC (not comparable)) 69 Example Mandatory Controls Three security levels Unclassified, Confidential, Secret Three security categories Crypto, Nuclear, Intelligence Comparisons SECRET/ {CRYPTO} = SECRET/ {CRYPTO} SECRET/ {CRYPTO} > CONFIDENTIAL/ {CRYPTO} SECRET/ {CRYPTO} < SECRET/{CRYPTO,NUCLEAR} SECRET/ {CRYPTO} NC SECRET/ {NUCLEAR} 70 Access Rules ¢ Simple security property Read permission if: Access class (subject) >= Access class (object) Write permission if: Access class (subject) <= Access class (object) Approaches to Security ¢ Procedural ¢ Functions and Mechanism ¢ Assurance Procedural Approaches Prescribes appropriate behavior for a user interacting with the system — periods processing — guidelines for managing passwords — appropriate handling of removable storage devices Periods Processing ¢ Split the day into periods and run different classification jobs in each period Guidelines for Choosing Passwords Long (8 character minimum) Non-obvious Not written in an obvious place Changed at appropriate intervals Not shared Not stored Many guidelines can be enforced by the system Non-Obvious Passwords * NOT: First name Middle name Last name Spouse's name Login name Null Name backwards Name repeated twice Appropriate Handling of Hardware « Management of removable media ¢ Disposal of hardware study showed that confidential information is often left in hardware to be salvaged (EEE Security & Privacy magazine, January 2003) Functions and Mechanisms « Enforce security policy * Examples are the 3As Authentication: assures that a particular user is who he/she claims to be Access control: a means of limiting a user's access to only those entities that the policy determines should be accessed Audit: a form of transaction record keeping. The data collected is called an audit log Authentication Mechanisms ¢ Authenticates users at login time — Secure attention key (e.g., control-alt-delete) — One way functions Secure Attention Key ¢ Foils attempts at spoofing * Guarantees trusted path to the system * User must use it 80 One-Way Function « A function whose inverse is computationally infeasible to determine —Enciphered passwords are stored in a password file — At login time password presented by the user is enciphered and compared to what is in the password file Access Control Reference Monitor Provides mediation of all accesses to assure that the access control policy i is enforced (part of OS security kernal) 7c ( (Supueers: \__ [REFERENCE | Processes |~Lmomitor AUTHORIZATIONS: USER ACCESS, NE OBJECT SENSITIVITY, .. Reference Monitor must be - Invoked on every reference - Tamperproof - Subject to analysis/test whose completeness can be assured 82 Assurance Techniques ¢ Penetration analysis * Covert channel analysis ¢ Formal verification Penetration Analysis ¢ Uses a collection of known flaws, generalizes the flaws, and tries to apply them to the system being analyzed — Penetration team known as "Tiger Team“ — Demonstrates the presence not the absence of protection failures Covert Channels ¢ Security analysis of both overt and covert channels is necessary * Overt channel — Uses the system's protected data objects to transfer information * Covert channel — Uses entities not normally viewed as a data object to transfer information Two Types of Covert Channels * Storage channels — the sender alters the value of a data item and the receiver detects and interprets the altered value to receive information covertly * Timing channels — the sender modulates the amount of time required for the receiver to perform a task or detect a change in an attribute, and the receiver interprets the delay or lack of delay to receive information covertly 86 Systems Development Problem Requirements | Are these consistent? Implementation Formal Specification and Verification [ Requirements } Formal Model Formal Specification HOL Language Implementation] Formal Specifications ¢ State Machine Relates values of variables before and after each state transition E.G. Exchange (x,y) New_ value(x) = y & New_value(y) = x Formal Specifications « Algebraic Relates results of sequences of operations E.G. Exchange (Exchange(pair)) = pair First (Exchange(pair)) = Last (pair) Last (Exchange(pair)) = First (pair) 90 Formal Verification Techniques es ( 5 (Requirements) Informal Review Formal Model { Design Verification Formal Specification { Code Verification HOL Language Implementation a1 Formal Verification * Design Verification Consistency between the model and the specification Assumes: Model is appropriate Specification is complete + Code Verification Consistency between specification and the implementation Assumes: Specification is appropriate Implementation language is correctly defined

You might also like