3 Cr. (Hrs.:3 Lec.)
Provides students with an understanding of the theories and tools used for secure software design, threat analysis, secure coding, and vulnerability analysis. Students will study, in-depth, vulnerability classes to understand how to protect and secure software by applying secure software engineering principles. Students will work with various analysis and design techniques for improving software security applied to threat surfaces in the operating system, network stacks, web programming domain, database injection, malicious code, and remedies such as input validation, encryption, patch management, penetration testing, and secure coding practices. (2nd)