Network Integrity and Information Assurance Dr. Stewart Personick sdp@ece.drexel.edu Copyright 2002 Stewart D. Personick. All rights reserved Historical perspective • Ever since people began competing for power, territorial control, physical assets, and money they have recognized the importance of timely and accurate information - lifting the “fog of war” - “getting inside the enemy’s decision cycle” - “loose lips sink ships” - understanding the customer’s needs - understanding the competition Copyright 2002 Stewart D. Personick. All rights reserved Historical perspective • Ever since people began competing for power, territorial control, physical assets, and money they have recognized the importance of timely and accurate information - lifting the “fog of war” - “getting inside the enemy’s decision cycle” - “loose lips sink ships” - understanding the customer’s needs - understanding the competition Copyright 2002 Stewart D. Personick. All rights reserved Information Assurance and Network Integrity: the Present • In developed countries, more and more people and organizations are becoming dependent upon computers, networks, and network-based applications (e.g., transactions conducted, worldwide, via electronic commerce: moving toward $1T/year) Copyright 2002 Stewart D. Personick. All rights reserved Information Assurance and Network Integrity: the Present • In developed countries, more and more people and organizations are becoming dependent upon computers, networks, and network-based applications (e.g., transactions conducted, worldwide, via electronic commerce: moving toward $1T/year) Copyright 2002 Stewart D. Personick. All rights reserved Recent examples of information assurance and network integrity problems: -Increasing numbers of virus/worm incidents -Intrusions into government/DoD systems -Denial of Service (DoS) attacks -Major loss of paging systems in the US (single satellite failure) -Corrupted data downloaded into the Internet’s Domain Name System (DNS) root servers* *disrupted conversion of Internet “names” (cbis.ece.drexel.edu) into Internet addresses (144.118.31.1) for ~several hours Copyright 2002 Stewart D. Personick. All rights reserved Recent examples of information assurance and network integrity problems: -Increasing numbers of virus/worm incidents -Intrusions into government/DoD systems -Denial of Service (DoS) attacks -Major loss of paging systems in the US (single satellite failure) -Corrupted data downloaded into the Internet’s Domain Name System (DNS) root servers* *disrupted conversion of Internet “names” (cbis.ece.drexel.edu) into Internet addresses (144.118.31.1) for ~several hours Copyright 2002 Stewart D. Personick. All rights reserved Recent examples of information assurance and network integrity problems: -Increasing numbers of virus/worm incidents -Intrusions into government/DoD systems -Denial of Service (DoS) attacks -Major loss of paging systems in the US (single satellite failure) -Corrupted data downloaded into the Internet’s Domain Name System (DNS) root servers* *disrupted conversion of Internet “names” (cbis.ece.drexel.edu) into Internet addresses (144.118.31.1) for ~several hours Copyright 2002 Stewart D. Personick. All rights reserved Types of attacks • Eavesdropping: - I read your message while it is passing through a network - I listen in on your conversation with one or more other person(s) - I monitor which Web pages you are accessing - I monitor how many messages you send, and to whom they are sent (traffic analysis) - I monitor where you are, by looking at your messages Copyright 2002 Stewart D. Personick. All rights reserved Types of attacks • Unauthorized “read” access: I read a file that is stored on one of your servers or other computers This requires that I obtain access to your computer, either via a network, or by some other means. E.g., I physically access your computer; I loan you a floppy disk that contains a malicious application, that copies your files on to the disk…which you return to me (Trojan horse attack) Copyright 2002 Stewart D. Personick. All rights reserved Types of attacks • Content tampering: -I change the content of a message passing through a network, or I change the contents of a database (e.g., I change the information on one of your Web pages) Tampering with a message in transit can be done by substitution Tampering with the contents of a computer requires access and “write” privileges Copyright 2002 Stewart D. Personick. All rights reserved Types of attacks • Impersonation: -I send you a document or a message that appears to have been sent by someone else The ability to prove that a message is “authentic” : the sender is who he or she claims to be, and the content has not been modified since it was created by the authentic sender is called “non-repudiation” Copyright 2002 Stewart D. Personick. All rights reserved Types of attacks • “Denial-of-service”: -I prevent your messages from being delivered by attacking one or more routers or by attacking the domain name system -I cause congestion your network that prevents you from doing what you want to do (e.g., I send you a gigantic E-mail file, and clog your mail server) -I bombard you with junk messages -I disable your network’s password authentication system Copyright 2002 Stewart D. Personick. All rights reserved Types of attacks • “Insider” attacks: -I have access privileges that I abuse -I steal the access privileges of a trusted person Copyright 2002 Stewart D. Personick. All rights reserved Prognosis • Of all of these attacks, denial-of-service attacks, and insider attacks are the most problematic, on a forward-looking basis • The attacker has the advantage. He or she only has to find one vulnerability to exploit. The defender needs to anticipate all possible attacks. Copyright 2002 Stewart D. Personick. All rights reserved Cryptography • Using mathematically-based methods to protect information from being read and/or modified by unauthorized persons Copyright 2002 Stewart D. Personick. All rights reserved Cryptography Secret Key Secret Key Encrypt Decrypt Copyright 2002 Stewart D. Personick. All rights reserved The concept of a cipher Four score and seven years ago … Gpvs tdpsf boe tfwfo zfbst bhp ... Copyright 2002 Stewart D. Personick. All rights reserved Cryptography • The simple substitution cipher is easy to “break” • We need a much more secure approach for real-world applications Copyright 2002 Stewart D. Personick. All rights reserved Cryptography • Most cryptographic methods are based on -A cryptographic algorithm that is assumed to be widely known (the algorithm itself is not secret) -A secret cryptographic “key” that is known only to those who are authorized to have the secret key Copyright 2002 Stewart D. Personick. All rights reserved Cryptography • Most cryptographic methods are based on -A cryptographic algorithm that is assumed to be widely known (the algorithm itself is not secret) -A secret cryptographic “key” that is known only to those who are authorized to have the secret key Copyright 2002 Stewart D. Personick. All rights reserved Details • Nobody knows for sure how “hard” it is to “break” modern encryption methods … however mathematicians are able to make statements about the comparative difficulty of breaking one method vs. another • Increasing computing power makes brute force methods feasible… leading to the need for longer keys Copyright 2002 Stewart D. Personick. All rights reserved Desired Properties of an Encryption Algorithm • It should be very difficult (computationally) to decrypt a message without having the secret key • It should be reasonably easy to encrypt and decrypt a message, if you have the secret key Problem: secret key distribution Copyright 2002 Stewart D. Personick. All rights reserved Public-key Cryptography • In the 1970’s cryptographic researchers came up with some amazing results/concepts that have had a remarkable impact on the ability to build practical cryptographic systems • These results/concepts helped address the key management problem Copyright 2002 Stewart D. Personick. All rights reserved The concept of a 1-way function • A one-way function is one for which it is easy to compute y = f(x), where y and x are sequences of binary digits (1s and 0s) … … but it is very “hard” to compute what x is, given that you have access to y • A one way function is analogous to a padlock… … I can easily snap it shut, but I can’t open it (without a key or a combination) Copyright 2002 Stewart D. Personick. All rights reserved The Concept of Public-key Cryptography • Public key encryption Public Key Secret Key Encrypt Decrypt Copyright 2002 Stewart D. Personick. All rights reserved Digital Signatures • Problem -How can I be sure that a message with your name associated with it: really came from you hasn’t been altered since you sent it Copyright 2002 Stewart D. Personick. All rights reserved Digital Signatures Sender’s private key Message Hash Misc Encrypt Copyright 2002 Stewart D. Personick. All rights reserved Digital Signatures Sender’s private key Message Hash Misc Encrypt Copyright 2002 Stewart D. Personick. All rights reserved Digital Signatures • The hash is a summary of my message • Given the message, anyone can compute the hash • When I encrypt the hash and my signature, using my secret key, anyone can decrypt it using my public key • However, no one can change the message without producing a mismatch between the hash derived from the changed message, and the hash that I sent in my encrypted hash/signature file • Furthermore, no one can create a fake hash/ signature file that will decrypt properly with my public key Copyright 2002 Stewart D. Personick. All rights reserved Access Control • Control access using some combination of: -what you know (e.g. a password) -who you are (e.g., your fingerprints) -what you have (e.g., a smart card) Copyright 2002 Stewart D. Personick. All rights reserved Passwords • A basic method of protecting individual files or information systems from unauthorized access is through the use of passwords • There are numerous pitfalls associated with the use of passwords in real world applications…e.g., Guessing passwords • A basic problem with passwords is that we can’t remember them unless they are also relatively easy to guess Copyright 2002 Stewart D. Personick. All rights reserved Biometric Access Controls • • • • • Voice recognition Fingerprint scanning/recognition Face scanning/recognition Iris scanning/recognition DNA analysis Copyright 2002 Stewart D. Personick. All rights reserved Iris Scanning sdp Feb22 scan parameters Iris Scanner Data base of Iris Scan parameters associated with ID’s Iris Copyright 2002 Stewart D. Personick. All rights reserved Iris Scanning sdp Feb22 scan parameters Iris Scanner Data base of Iris Scan parameters associated with ID’s Iris Copyright 2002 Stewart D. Personick. All rights reserved Smart Cards: Electronic Commerce ABC Bank Transaction data (from merchant) Encrypted output (to bank) Microprocessor, memory, I/O, secret key, OS, applications, private data, other data Copyright 2002 Stewart D. Personick. All rights reserved Malicious Code • What’s the problem we are trying to address? How do we keep people from inserting harmful computer code into our computers? Copyright 2002 Stewart D. Personick. All rights reserved Viruses and Worms • Virus: extraneous executable code that attaches itself to an executable file (e.g., a Word document) or an application, and can reproduce itself (when the host application executes) to infect other files or applications • Worm: a stand-alone executable program that can replicate itself, and that can utilize system/network resources to spread to multiple systems Copyright 2002 Stewart D. Personick. All rights reserved Polymorphic Viruses • Change with each new infection • Are (for example) comprised of two parts – A decryptor – An encrypted virus file • Both the decryptor and the encrypted file change each time the virus replicates…so that neither one has a fixed signature Copyright 2002 Stewart D. Personick. All rights reserved Infected application Decryptor Encrypted virus file App. 1 Copyright 2002 Stewart D. Personick. All rights reserved How does it work? Infected app. Decryptor Executing 1 Decryptor Encrypted virus file Virus version xyz App. 1 App. 1 Mutator Engine 1. The decryptor executable will decrypt the encrypted virus file Copyright 2002 Stewart D. Personick. All rights reserved How does it work? Decryptor New Decryptor Virus version xyz App. 1 New Decryptor Virus version xyz+1 Mutator Engine Mutator Engine 2 3 4 Encrypted virus file New Decryptor Encrypted virus file 2. Virus1 finds the victim(App.2) 3. Mutator Engine creates a new Decryptor, a new virus file, and encrypts the new virus file 4. Virus2 is prepended to App. 2 App. 2 Copyright 2002 Stewart D. Personick. All rights reserved Detecting Viruses ref: Stalling pp 510-514 • Look for a known virus signature • Heuristic methods: look for structures in a file that look like they may be associated with a virus (e.g., an decryption loop) • Checksums (easily defeated using compression and de-compression techniques or by changing the checksum) • Digital signatures Copyright 2002 Stewart D. Personick. All rights reserved Detecting Viruses ref: Stalling pp 510-514 • Look for a known virus signature • Heuristic methods: look for structures in a file that look like they may be associated with a virus (e.g., an decryption loop) • Checksums (easily defeated using compression and de-compression techniques or by changing the checksum) • Digital signatures Copyright 2002 Stewart D. Personick. All rights reserved Protecting Against Malicious Code • Applications from Trusted Sources -Trusted sources can use digital signatures or other means to protect against unauthorized changes to their software But… how does the trusted source ensure that its own, authorized employees and contractors have not inserted malicious code into its products? Copyright 2002 Stewart D. Personick. All rights reserved Protecting Against Malicious Code • Finding non-specific malicious code within an application -A very difficult, unsolved problem... e.g., malicious code could be activated by its combination with specific data that is entered at a future date Copyright 2002 Stewart D. Personick. All rights reserved Protecting Against Malicious Code • The concept of a “sandbox” Create a virtual machine on which the code executes (runs). Ensure that the code can only have access to tightly controlled and monitored (e.g., level of usage) resources. Securely save the machine’s configuration information. Don’t allow the code to leave behind any remnants, other than data stored in carefully controlled memory locations. Restore the rest of the machine (system) to its original state Copyright 2002 Stewart D. Personick. All rights reserved Protecting Against Malicious Code • The concept of a “sandbox” Create a virtual machine on which the code executes (runs). Ensure that the code can only have access to tightly controlled and monitored (e.g., level of usage) resources. Securely save the machine’s configuration information. Don’t allow the code to leave behind any remnants, other than data stored in carefully controlled memory locations. Restore the rest of the machine (system) to its original state Copyright 2002 Stewart D. Personick. All rights reserved Protecting Against Malicious Code • The concept of a “sandbox” Create a virtual machine on which the code executes (runs). Ensure that the code can only have access to tightly controlled and monitored (e.g., level of usage) resources. Securely save the machine’s configuration information. Don’t allow the code to leave behind any remnants, other than data stored in carefully controlled memory locations. Restore the rest of the machine (system) to its original state Copyright 2002 Stewart D. Personick. All rights reserved Network-launched Denial-of-Service Attacks • Distributed Denial of Service (DDNS) Attacks The attacker places malicious code in “zombie machines”; and then launches the attack by activating the zombie machines and overloading networks and servers with zombie-generated traffic (e.g., bytes or transactions) Copyright 2002 Stewart D. Personick. All rights reserved Firewalls • A firewall is a mechanism through which we can attempt to protect a collection of computers and networks within an enclave from attacks launched from outside of the protected enclave • Firewalls can also be used to provide barriers between subsets of computers and networks within an enclave • With current Internet protocols, it is difficult to extract enough trustworthy information from incoming packets to push back denial of service attacks Copyright 2002 Stewart D. Personick. All rights reserved Firewalls Gateway computer The rest of cyberspace ENCLAVE Copyright 2002 Stewart D. Personick. All rights reserved Firewalls Gateway computer The rest of cyberspace ENCLAVE Copyright 2002 Stewart D. Personick. All rights reserved Time is Critical • Note that, from the perspective of legitimate network users… An attack-induced outage that lasts 20 milliseconds will probably be un-noticeable for most applications An attack-induced outage that lasts 20 seconds will be noticeable, but not serious, for most users and applications An attack-induced outage that lasts 5.5 hours (20,000 seconds) will generally be very serious for most users Copyright 2002 Stewart D. Personick. All rights reserved Responding • How long it takes to recover is very much a function of: -the nature of the damage done -the cause of the initial damage (e.g., how to eliminate malicious code from trusted hosts) -the availability, trustworthiness, and accessibility of data that can be used to diagnose the damage and the cause of the damage Copyright 2002 Stewart D. Personick. All rights reserved Responding • How long it takes to recover is very much a function of: -the nature of the damage done -the cause of the initial damage (e.g., how to eliminate malicious code from trusted hosts) -the availability, trustworthiness, and accessibility of data that can be used to diagnose the damage and the cause of the damage Copyright 2002 Stewart D. Personick. All rights reserved Generic Intrusion Detection & Malicious Insider Detection System Network System or Network Element Network System or Network Element Observations Intrusion Detection Engine Data Policies Reports, alerts, autonomous actions Copyright 2002 Stewart D. Personick. All rights reserved Generic Intrusion Detection & Malicious Insider Detection A critical, but subtle aspect of the intrusion detection and malicious insider detection strategy is to neutralize the attacker’s advantage by drawing on the concerted resources of large numbers of defenders…both in terms of the data they can provide, and in terms of the defense mechanisms they can conceive Copyright 2002 Stewart D. Personick. All rights reserved Intrusion Detection Data • Historical data related to (anonymous) network traffic and usage patterns • Historical data related to specific users or applications • User profiles: including trust levels, access privileges and roles (job descriptions) • Signatures of known attacks • Signatures of patterns considered to indicate a possible attack Copyright 2002 Stewart D. Personick. All rights reserved Intrusion Detection Data • Signatures of activities or patterns considered to indicate a possible attack: Politician: “People say I am a crook; do you think I am a crook” Advisor “I don’t know if you are a crook, but I know a lot of crooks who act like you” Copyright 2002 Stewart D. Personick. All rights reserved