Virginia Tech®home

ECE 5590 - System and Software Security (3C)

Course Description

Secure software design, memory and file system security, operating system security for various platforms. Program classification, anomaly detection, malware detection and analysis. Technical challenges and problems in securing operating systems and software. Classic and modern algorithms, models, principles, and tools for system and application software security. Actual security examples.

Why take this course?

Security problems represent an enormous challenge to the usability and safety of modern computing systems. Cyber security is critical to a broad array of societal concerns, including personal privacy, financial accountability and national security. Many career paths open to computer science and engineering graduates require them to have a good understanding of challenges arising in the context of system and software security and the methods used to improve the security of computing systems(including personal computers, high-end computing clusters, mobile devices, as well as the applications running on them).

Learning Objectives

  • Identify classes of security problems in computer systems and programs.
  • Model threats, ricks, attacks, and security goals.
  • Identify causes of system and application vulnerabilities.
  • Describe classic and modern security approaches and techniques.
  • Compare pros and cons of various security solutions in terms of their security guarantees.
  • Design and implement solutions for achieving secure operating systems, mobile applications, and software.
  • Evaluate the security, robustness, usability, and efficiency of security tools.