CSE 569S: Recent Advances in Computer Security and Privacy

Spring 2021
In this class, students will learn about the latest research development in two main areas software/system security and cyber-physical security. Topics in software security focus on attack and defense in application-level software, while system security focuses on attack and defense in system software and hardware. Cyber-physical security studies vulnerabilities at the interface of cyber world and physical world. The primary objective of this course is to prepare students for research in cyber-physical system security. Recommended Pre-req: CSE 361S, CSE 433S, CSE 523S, CSE 571S

CSE 433S: Introduction to Computer Security

Fall 2020
Secure computing requires the secure design, implementation, and use of systems and algorithms across many areas of computer science. Fundamentals of secure computing such as trust models and cryptography will lay the groundwork for studying key topics in the security of systems, networking, web design, machine learning algorithms, mobile applications, and physical devices. Human factors, privacy, and the law will also be considered. Hands-on practice exploring vulnerabilities and defenses using Linux, C, and Python in studios and lab assignments is a key component of the course. Prerequisites: CSE 247 and either CSE 361 or CSE 332.

CSE 569S: Advanced IoT, Real-Time, and Embedded Systems Security

Fall 2019
This class focus on the theory and practice of secure embedded/IoT system. Students will be exploring security and privacy issues in deployed or emerging IoT systems, examining a rich variety of devices from drones and self-driving cars to smart home light bulbs and implanted pacemakers, across different layers of computing from network to wireless signal, from application to device kernel and driver. This class is organized with a set of pre-selected topics, with lecture and discussion on those topics. It is a project oriented class, where each student or teams of student will pick a topic of their interest within the scope of the class, then develop a project to a real world security issue on IoT/embedded system.

CSE 637S: Software Security

Spring 2019
In this course, students will be introduced to the foundations of software security. We will be exploring different classes of software vulnerabilities, analyzing the fundamental problems behind these vulnerabilities, and studying the methods and techniques to discover, exploit, prevent and mitigate these vulnerabilities. Topics of interest include buffer overflow, integer overflow, type confusion, use-after-free, etc. Throughout the course, we take a defense-in-depth mentality and see how systems can be protected. Students are expected to have a solid understanding of assembly language, C/C++ and operating system. Recommended Pre-req: CSE 361, feel free to join the class without pre-req as long as you are willing to pick up the low-level system knowledge in the first several weeks of the class.

CSE 571S: Network Security

Fall 2018
This course covers principles and techniques in securing computer networks. Real world examples will be used to illustrate the rationales behind various security designs. There are three main components in the course, preliminary cryptography, network protocol security and network application security. Topics include IPSec, SSL/TLS, HTTPS, network fingerprinting, network malware, anonymous communication, and blockchain. The class project allows students to take a deep dive into a topic of choice in network security.