U. of CINCINNATI DEPT. ELECTRICAL ENGINEERING & COMPUTER SYSTEMS DECEMBER 2013 20-CS-XXXX CYBER DEFENSE OVERVIEW Catalog Data: 20-CS-XXXX. Cyber Defense Overview. Credits 3. Hands-on treatment of techniques for hardening computer systems and components against attacks, principally via the internet, and for controlling damage and possibly launching countermeasures in case of attack. Textbooks: Randy Weaver, Dawn Weaver, Guide to Network Defense and Countermeasures, Cengage Learning, 3rd edition, ISBN-13: 978-1133727941, 2013. Debra S. Herrmann, Using the Common Criteria for IT Security Evaluation, Auerbach Publications, 1st edition, ISBN-13: 978-0849314049, 2002. References: Schneier, Applied Cryptography: Protocols, Algorithms, and Source Code in C, John Wiley & Sons, New York, 2nd Edition, 1996. Prasanta Gogoi, D.K. Bhattacharyya, B. Borah and Jugal K. Kalita, “A Survey of Outlier Detection Methods in Network Anomaly Identiļ¬cation,” The Computer Journal, 54(4):570-588, 2011. Hyunsang Choi, Bin B. Zhu, and Heejo Lee, "Detecting malicious web links and identifying their attack types," Proceedings of the 2nd USENIX conference on Web application development. USENIX Association, 2011. Detecting Network Reconnaissance with the Cisco Cyber Threat Defense Solution 1.0, Cisco Systems, 2012. Siraj A. Shaikh, Howard Chivers, Philip Nobels, John A. Clark, and Hao Chen, "Network reconnaissance,” Network Security, 11:12-16, 2008. Robert J. Houghton, Chris Baber, Richard McMaster, Neville A. Stanton, Paul Salmon, Rebecca Stewart, and Guy Walker, "Command and control in emergency services operations: a social network analysis," Ergonomics 49(12-13):1204-1225, 2006. Diego Fernandez Vazquez, Sarah Brown, Emily Reid, Oscar P. Acosta, and Christopher Spirito, "Conceptual framework for cyber defense information sharing within trust relationships," Proc. 4th International Conference on Cyber Conflict. IEEE, 2012. Lawrence C. Miller, “Network Security in Virtualized Data Centers,” John Wiley and Sons, 2012. DoD dictionary of military terms http://www.dtic.mil/doctrine/dod_dictionary/ W. S. Harrison, N. Hanebutte, P. Oman, and J. Alves-Foss, “The MILS Architecture for a Secure Global Information Grid,” CrossTalk 18(10):20–24, 2005. National Information Assurrance Partnership Common Criteria Evaluation and Validation Scheme. https://www.niap­ccevs.org/Documents_and_Guidance/cc_docs.cfm? &CFID=18260059&CFTOKEN=30454721dc0fd4ce­17EDC205­D7AB­F40D­ A4FE067F47B1A7AA EC-Council, Certified Network Defense Architect http://www.eccouncil.org/Certification/certified­network­defense­ architects U. of CINCINNATI DEPT. ELECTRICAL ENGINEERING & COMPUTER SYSTEMS DECEMBER 2013 Common Criteria project. http://www.commoncriteriaportal.org/cc/ Coordinator: John Franco, Professor, Computer Science Knowledge and Comprehension Goals The student will know: 1. Network security methods, protocols, and systems to achieve confidentiality, integrity, and authentication, and kinds of network attacks 2. Where to use firewalls and how to configure them to achieve a desired level of security 3. Techniques for detecting intruders 4. How to detect network reconnaissance operations that may be initiated by an intruder 5. Techniques for preventing intruders from entering a local network 6. How to detect and identify malicious code, especially via signatures 7. How to detect and identify anomalies 8. How to establish and evaluate command and control procedures and operations to be better able to withstand and recover from an attack 9. System architectures that better support network security, including MILS 10. Challenges in securing a virtualized data center and how to address them 11. Levels of trust and how to establish trust to a desired level 12. How to design a layered defense strategy Application Goals: The student will be able to: 1. Design secure authentication/handshake protocols and explain how they are resistant to well-known attacks 2. Design secure protocols which, when added to existing infrastructure, do not compromise security 3. Develop and use tools to detect intrusion 4. Develop and use tools to detect and identify anomalous behavior that is likely due to malware 5. Use firewalls to secure as well as possible a virtualized data center 6. Determine that an attack is imminent under certain circumstances, for example by detecting reconnaissance operations originating from outside the secured perimeter 7. Be able to design procedures and operations that minimize damage and recovery time in case of some catastrophe – such procedures may span multiple systems Prerequisites by The usual programming courses that a senior will have taken including 20-CS-2029, Software Development in C++ and 15-MATH-2053, Calculus 3. The student is Topic: expected to be experienced in C coding, particularly kernel programming, and Object Oriented Programming in C++ and Java. Also, the Essential Information Security Concepts course, the Network Security course, and the Vulnerabilities course are highly recommended. Topics by the week: 1. Overview of network security including public-key cryptography, secret-key cryposystems, PKI, KDC, block ciphers, stream ciphers 2. Continuation of network security overview including protocols (e.g. OtwayReese) and systems (e.g. Kerberos) plus firewalls, their levels of protection, and configuration of firewalls (expanded later). 3. Overview of classes of network attacks, such as Return Oriented Programming, what these attacks rely on to succeed, for example buffer overflows, and how to mitigate and even prevent such attacks, for example through Address Space Layout Randomization. U. of CINCINNATI DEPT. ELECTRICAL ENGINEERING & COMPUTER SYSTEMS DECEMBER 2013 Continuation of classes of attacks with emphasis on attacks at all system levels including physical, authentication, protocols (e.g. ICMP), TCP (e.g. rougue packet), operating system, communication, and mechanisms and methods for protection such as VPN, auditing, logging, firewalls (expanded), routing and access control. Social-engineering attacks. Attacks against encrypted data. Spoofing. 5. Intrusion detection and identification. Standard tools for detecting intrusion. Changes in information flow. Signatures. Detection and identification of reconnaissance operations (which often preceed an attack), packet header inconsistencies. 6. Continuation of Intrusion detection and identification. Examples from industry (for example, defense contractors in the Cincinnati area). 7. Special consideration of mobile devices. Antennas, access points and gateways, remote wireless bridges. Man-in-the-middle attacks. Best practices, auditing, and other techniques to mitigate risk. 8. Malicious attack and anomaly detection and identification. Examples from industry (e.g. defense contractors in the Cincinnati area). 9. Trust levels and security policies. Needs assessment. Risk analysis. Security policies from risk assessment, identification of criminal computer actions, enforcement of policies. 10. System security architectures. Layered defenses. Adding a non-critical component to a system with a critical component. Multiple Independent Levels of Security. Defense-in-depth. 11. Security of applications that interface with the world wide web. Understanding the structure of the web. Social-engineering attacks, attacks against servers, attacks against users. SQL injection attacks. Countermeasures: hardening a DNS server, configuring a web server. 12. Securing virtualized servers, (distributed) data centers, and the cloud. Security challenges that arise due to the features that virtualization provide such as self-service resource activation, segmentation of different virtual machines with different trust levels, and the ability to associate security policies upon VM instantiation. Attack life cycle. Security solutions. Evaluation of security. 13. Recovery in case of disaster. Command-and-control operations and procedures. 14. One week is reserved for a mid-course examination 4. Sample Labs: 1. Given an actual piece of malicious code, determine the behavior of the code and the conditions under which it performs some malicious action and identify the action. 2. Monitor a linux or windows operating system for intrusions using off-the-shelf tools. Record times at which intrusions took place. This is a class contest: the student getting the least total difference in reported and actual times wins a prize. 3. Attempt to harden an android phone against being rooted. 4. Given binary code that is vulnerable to ROP and source code for an ROP attack, devise a countermeasure that will at least make it more difficult for the attack to succeed. 5. Three people design and develop a system, compliant with a given specification, that supports trades among several people, with authentication, integrity, and confidentiality features. A global monitor maintains a data base of transaction records and profits from the trades and established ownership of properties and wealth of all participants. Three other people design attacks on the first system that are intended to result in the transfer of U. of CINCINNATI DEPT. ELECTRICAL ENGINEERING & COMPUTER SYSTEMS DECEMBER 2013 ownership of the properties and wealth recorded by the monitor for the first system. Source code of the monitor is available to the attackers and the attacked. Players of the first system must trade to make money. But trading makes them vulnerable. They must devise a layered defense based on security policy definitions. If an attack is successful because a policy assumption was wrong or omitted, the attacking team wins a prize. Otherwise, the total wealth owned by the attackers and the attacked determines who wins the prize. The attackers start with zero wealth – they can only steal wealth. The attacked also start with zero wealth but they can accrue wealth through transactions with the monitor. Prepared by: John Franco., Ph.D. Date: December 2013