MS in Computer Science - Cyber Security Courses
Students pursuing the Cyber Security concentration in the MSCS program will take 4 courses (12 credit hours) from the list below plus 1 elective course (3 credit hours) for a total of 15 credit hours.
CPSC-50600 Cyber Security Essentials (3)
Fundamentals of information, computer and network security are introduced. Topics include access control, authentication, trusted computing, software and hardware security and vulnerabilities, operating system security models, how various kinds of malware function, network security devices and architecture, database vulnerability and security, computer hacking techniques and countermeasures, intrusion detection, cryptography, wireless security, and network security protocols. Students will use software and tools they learn in this course to complete a graduate level final project/paper that reflects the skills and tools they learned in the course.
CPSC-50700 Advanced Cyber Security (3)
This second course in cyber security explores advanced technological techniques and tools in cybersecurity. Students will use these technologies and skills to identify different categories of threats, and implement corresponding countermeasures. Student will build knowledge of the tools and protocols needed to perform, encryption and authentication of data, operating system and application security, malware operation and analysis, code-level exploits, reverse engineering, security design principles, techniques for reducing complexity, and formal security models. In addition students will gain insight into the legal, social, and political dynamics of the cyber universe. Students will use software and tools they learn in this course to complete a graduate level final project/paper that reflects the skills and tools they learned in the course.
CPSC-51500 Operating Systems and Distributed Systems (3)
This course will present the concepts and principles of multiple user operating systems: memory, CPU, I/O device allocation, scheduling and security, memory hierarchies, performance evaluation, analytic models, simulation, concurrent programming and parallel processors. It will also discuss distributed computing principles, theory, implementations and security; models of distributed systems, interprocess communications, distributed objects and remote invocation, coordination and agreement, distributed transactions, interoperability and replication; component frameworks and middleware such as CORBA and DCE. Security problems in distributed application environments will be analyzed and solutions will be discussed.
CPSC-52000 Intrusion Detection, Response and Recovery (3)
Information security ultimately depends on identifying and applying available security features appropriately. This course discusses the development of a secure information infrastructure consisting of servers, networks, firewalls, workstations and intrusion detection systems. It also covers principles and practice related to secure operation of existing distributed systems.
CPSC-52500 Encryption and Authentication (3)
This course will present key cryptologic terms, concepts and principles. Traditional cryptographic and cryptanalytic techniques are covered plus perspective on successes and failures in cryptologic history, including both single-key algorithms and double-key algorithms. Issues in network communications, network security and security throughout the different layers of the OSI model for data communications will also be discussed in detail, as well as the use of cryptologic protocols to provide a variety of security services in a networked environment. Authentication, access control, non-repudiation, data integrity and confidentiality issues will also be covered, plus key generation, control, distribution and certification issues.
CPSC-54000 Large-Scale Data Storage Systems (3)
The design and operation of large-scale, cloud-based systems for storing data. Topics include operating system virtualization, distributed network storage, distributed computing, cloud models (IAAS, PAAS and SAAS), and techniques for securing cloud and virtual systems.
CPSC-55500 Distributed Computing Systems (3)
Architecture and programming of parallel processing systems; distributed data storage techniques; multithreading and multitasking; redundancy; load balancing and management; distributed system event logging; programming techniques for maximizing the importance of distributed systems.
CPSC-56000 Securing Windows (3)
This is a hands-on course that focuses on current strategies crackers use to attack Windows systems and how system administrators may counteract such attacks.
CPSC-56100 Securing Linux (3)
This is a hands-on course that focuses on current strategies crackers use to attack Linux systems and how system administrators may counteract such attacks.
CPSC-58000 Communications and Networking (3)
This course covers various topics, with areas of concentration on communications devices, protocols, standards, networking topologies, hardware, software, design, installation and setup, maintenance and security. The advantages, disadvantages and implementation issues of Microsoft Windows and Unix are explored.
CPSC-62700 Programming for Penetration Testing (3)
The best way to defeat a hacker is to code like one. That means being able to build, extend, and manipulate scripts and applications that compromise systems. This course presents a number of techniques for exploiting vulnerabilities in a variety of computer systems. Students will build port scanners, construct botnets, write exploits, create their own forensic analysis and network traffic analysis tools, develop web reconnaissance applications, implement scripts for examining and exploiting a wireless network, and craft malware that evade antivirus tools.
CPSC-62800 Programming for Digital Forensics (3)
While many tools exist for examining digital systems, the frenetic pace at which the cyber threat evolves means that hackers are constantly discovering new ways to hide their tracks. Digital forensics specialists who lack a programmer's understanding of how data are stored and hidden and how tools are written to examine these systems will forever be limited to using the tools others create. This course prepares digital forensics experts who can write their own digital forensics tools.
CPSC-63000 Database Systems (3)
File storage structures, relational database management systems, entity relationship diagrams, relational algebra, relational calculus, SQL, database security, concurrency control, distributed and cloud storage solutions, coding database-supported web sites using PHP and XML.
CPSC-65500 Cloud Computing and Virtualization (3)
An introduction to the concepts and techniques of implementing cloud computing through the use of virtualization and distributed data processing and storage. Topics include operating system virtualization, distributed network storage, distributed computing, cloud models (IAAS, PAAS, and SAAS), and cloud security.
CPSC-66400 Wireless Security (3)
This course explores the security of wireless data networks. It describes the standards that govern wireless communications and security, the physics of the various approaches to wireless data security, the attacks against wireless systems, and techniques for thwarting such attacks. The course discusses the various 80.11 technologies as well as cell phone, satellite, and Bluetooth approach.
CPSC-66500 Software Vulnerabilities and Defenses (3)
The discovery, exploitation and prevention of security flaws in web and mobile applications. This course examines vulnerabilities seen a wide variety of software technologies, including databases, file systems and web services.
CPSC-67000 Cloud and Virtualization Security (3)
An introduction to the concepts and techniques of implementing and securing cloud computing through the use of virtualization and distributed data processing and storage. Topics include operating system virtualization, distributed network storage, distributed computing, cloud models (IAAS, PAAS and SAAS) and techniques for securing cloud and virtual systems.
CPSC-67300 Digital Forensics (3)
The practice of digital forensics across multiple platforms and technologies. This course emphasizes the role of forensics in countering advanced persistent threats (APTs), which are sophisticated, coordinated attacks that employ a variety of techniques to attempt to compromise a system. Students will investigate case studies describing various kinds of attacks against an organization. In working through these case studies, students will learn how to perform forensic analyses of network traffic, mobile device file systems, memory, and malware. Students will learn how the engines of forensics tools work so that they can perform their analyses even as the use of anti-forensics techniques continue to grow.
CPSC-68000 Industrial and Critical Infrastructure Network Security (3)
The critical infrastructures of a nation are those systems that provide the goods, resources and services essential to modern life. These include utility systems like power, water and natural gas delivery systems, as well as transportation networks, banking and finance and emergency services. Historically, these infrastructures have been kept physically and logically separated from other networks and systems. They also have tended to use the same networking protocols as industrial and manufacturing control systems. However, the trend toward convergence and its promised efficiencies have introduced new vulnerabilities to both industrial and critical infrastructure systems. This course describes critical infrastructures and industrial control systems are supported by computer technology, identifies and explains in technical detail the vulnerabilities that affect this technology and explain how to design solutions to counteract these vulnerabilities.
CPSC-68500 Enterprise Network Security (3)
This course will focus on how to configure and operate numerous networking devices such as a switches, routers, and firewalls. Students will create their own functioning network and be able to apply features such as port blocking, AAA security, ACLs and NAT, PKI/cryptography, and threat mitigation/containment. Students will be introduced to different types of routing such as static, RIP, and BGP. In addition, there will be a heavy emphasis on IPv4 and IPv6 sub-netting.