DOC PREVIEW
LSU CSC 4103 - Protection and Security

This preview shows page 1-2-3-4 out of 12 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 12 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

1CSC 4103 - Operating SystemsSpring 2007Tevfik KoşarLouisiana State UniversityApril 12th, 2007Lecture - XXProtection and SecurityThe Security Problem• Security must consider external environment of thesystem, and protect the system resources• Intruders (crackers) attempt to breach security• Threat is potential security violation• Attack is attempt to breach security• Attack can be accidental or malicious• Easier to protect against accidental than maliciousmisuseSecurity Violations• Categories– Breach of confidentiality (information theft, identity theft)– Breach of integrity (unauthorized modification of data)– Breach of availability (unauthorized destruction of data )– Theft of service (unauthorized use of resources)– Denial of service (crashing web servers)• Methods– Masquerading (breach authentication)• Pretending to be somebody else– Replay attack (message modification)• Repeating a valid data transmission (eg. Money transfer)• May include message modification– Session hijacking• The act of intercepting an active communication session– Man-in-the-middle attack• Masquerading both sender and receiver by intercepting messagesStandard Security AttacksSecurity Measure Levels• Security must occur at four levels to be effective:– Physical– Human• Avoid social engineering, phishing, dumpster diving– Operating System– Network• Security is as week as the weakest chainProgram Threats• Trojan Horse– Code segment that misuses its environment– Exploits mechanisms for allowing programs written by users to beexecuted by other users– Spyware, pop-up browser windows, covert channels• Trap Door– Specific user identifier or password that circumvents normal securityprocedures– Could be included in a compiler• Logic Bomb– Program that initiates a security incident under certain circumstances• Stack and Buffer Overflow– Exploits a bug in a program (overflow either the stack or memorybuffers)C Program with Buffer-overflow Condition#include <stdio.h>#define BUFFER SIZE 256int main(int argc, char *argv[]){char buffer[BUFFER SIZE];if (argc < 2)return -1;else {strcpy(buffer,argv[1]);return 0;}}Layout of Typical Stack FrameModified Shell Code#include <stdio.h>int main(int argc, char *argv[]){execvp(‘‘\bin\sh’’,‘‘\bin\sh’’, NULL);return 0;}Hypothetical Stack FrameBefore attack After attackProgram Threats (Cont.)• Viruses– Code fragment embedded in legitimate program– Very specific to CPU architecture, operating system,applications– Usually borne via email or as a macro• Visual Basic Macro to reformat hard driveSub AutoOpen()Dim oFSSet oFS = CreateObject(’’Scripting.FileSystemObject’’)vs = Shell(’’c:command.com /k format c:’’,vbHide)End SubProgram Threats (Cont.)• Virus dropper inserts virus onto the system• Many categories of viruses, literally many thousands of viruses:– File (appends itself to a file, changes start pointer, returns to original code)– Boot (writes to the boot sector, gets exec before OS)– Macro (runs as soon as document containing macro is opened)– Source code (modifies existing source codes to spread)– Polymorphic (changes each time to prevent detection)– Encrypted (first decrypts, then executes)– Stealth (modify parts of the system to prevent detection, eg read system call)– Tunneling (installs itself as interrupt handler or device driver)– Multipartite (can infect multiple pars of the system, eg. Memory, bootsector,files)– Armored (hidden and compressed virus files)– Browser virus, keystroke logger ..etcA Boot-sector Computer VirusSystem and Network Threats• Worms – use spawn mechanism; standalone program• Internet worm (Robert Morris, 1998, Cornell)– Exploited UNIX networking features (remote access) and bugsin finger and sendmail programs– Grappling hook program uploaded main worm program• Port scanning– Automated attempt to connect to a range of ports on one or arange of IP addresses• Denial of Service– Overload the targeted computer preventing it from doing anyuseful work– Distributed denial-of-service (DDOS) come from multiple sitesat onceThe Morris Internet WormCryptography as a Security Tool• Broadest security tool available– Source and destination of messages cannot be trusted withoutcryptography– Means to constrain potential senders (sources) and / orreceivers (destinations) of messages• Based on secrets (keys)Secure Communication over Insecure MediumEncryption• Encryption algorithm consists of– Set of K keys– Set of M Messages– Set of C ciphertexts (encrypted messages)– A function E : K → (M→C). That is, for each k ∈ K, E(k) is a function forgenerating ciphertexts from messages.– A function D : K → (C → M). That is, for each k ∈ K, D(k) is a function forgenerating messages from ciphertexts.• An encryption algorithm must provide this essential property: Given aciphertext c ∈ C, a computer can compute m such that E(k)(m) = c only ifit possesses D(k).– Thus, a computer holding D(k) can decrypt ciphertexts to the plaintexts used toproduce them, but a computer not holding D(k) cannot decrypt ciphertexts.– Since ciphertexts are generally exposed (for example, sent on the network), itis important that it be infeasible to derive D(k) from the ciphertextsSymmetric Encryption• Same key used to encrypt and decrypt– E(k) can be derived from D(k), and vice versa• DES is most commonly used symmetric block-encryption algorithm(created by US Govt)– Encrypts a block of data at a time (64 bit messages, with 56 bit key)• Triple-DES considered more secure (repeat DES three times withthree different keys)• Advanced Encryption Standard (AES) replaces DES– Key length upto 256 bits, working on 128 bit blocks• Twofish, RC4, RC5 .. other symmetric algorithms• RC4 is most common symmetric stream cipher (works on bits, notblocks), but known to have vulnerabilities– Encrypts/decrypts a stream of bytes (i.e wireless transmission, webbrowsers)– Key is a input to psuedo-random-bit generator• Generates an infinite keystreamAsymmetric Encryption• Encryption and decryption keys are different• Public-key encryption based on each user having twokeys:– public key – published key used to encrypt data– private key – key known only to individual user used to decryptdata• Must be an encryption scheme that can be made publicwithout making it easy to figure out the


View Full Document

LSU CSC 4103 - Protection and Security

Download Protection and Security
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Protection and Security and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Protection and Security 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?