OMSCS - OMSCY - Introduction to Cyber-Physical Systems Security (CS 6263 - ECE 8813) - Summer 2022

Meeting times / place:

When: Up to you!

Where: All over the world!


Instructor: Dr. Raheem Beyah
Office Klaus 2308
Office hours By appointment
Email raheem.beyah@ece.gatech.edu

Head Teaching Assistant: Tohid Shekari
Email t.shekari@gatech.edu

Teaching Assistant: Anni Zhou
Email zhou.annie@gatech.edu

Teaching Assistant: Nathan Greer
Email nategreer@gatech.edu

Teaching Assistant: Owen Jones
Email ojones30@gatech.edu

Teaching Assistant: Jake Schu
Email jakeschu@gatech.edu

Teaching Assistant: Mahrukh Khan
Email mkhan359@gatech.edu

Teaching Assistant: Omar Elabd
Email abd@gatech.edu

The course covers introductory topics in cyber-physical systems security. The goal is to expose students to fundamental security primitives specific to cyber-physical sysytems and to apply them to a broad range of current and future security challenges. Much of the course is taught with the focus on one instance of cyber-physical sytems - Industrial Control Systems (ICSs). However, students will be expected to generalize the concepts for other cyber-physical systems.

Students will work with various tools and techniques used by hackers to compromise computer systems or otherwise interfere with normal operations. Students will also use tools that are uniques to interacting with cyber-physical systems. The purpose of the class is NOT to teach you how to be a hacker, but rather to teach you the approaches used by hackers so you can better defend against them. Students will be graded based upon exams and completion of assignments.


Policy on Commenting Software:
Fully commenting code, even code that you were given as a starting point is mandatory. This is one of the instructor's pet peeves. You must fully comment all code you turn in and must include comments to explain all of the code you turn in. (Even those parts of the code you did not write but were given as a starting point). You must include in the comments an explanation of what the purpose of the code is, the date the code was originally written, and the date the code was last modified must be in the comments. The last date modified must be correct and in the comments.


Policy on Handouts:
The handouts can be downloaded from the Canvas which requires authentication. Handouts with proprietary or copyrighted material will be put on the protected page and should not be made publicly available by students.


Prerequisites: computer networking class, information security class, and programming experience with C and Python. In case that you want to prepare early on the projects, we will use the following languages/tools in each project:


1. mini project #1: Factory IO (a software for design and implementation of controllers for industrial control systems) and block diagram programming
2. mini project #2: Ladder logic programming using OpenPLC (an educational platform for PLC programming)
3. mini project #3: mininet, python, Wireshark
4. mini project #4: Assembly x86, C, GDB debugger


1. Describe what cyber-physical systems are
2. Demonstrate what makes cyber-physical systems hard to secure
3. Analyze common methods used to secure cyber-physical systems
4. Evaluate the differences between securing traditional enterprise systems and cyber-physical systems


1. Develop the ability to interact with cyber-physical systems components
2. Develop the ability to interact with cyber-physical systems protocols
3. Develop the ability to conduct attacks on cyber-physical systems protocols and systems
4. Develop the ability to design cyber-physical systems and architectures that are resilient to attack

There are two required textbooks. We cover lots of really good material and no one textbook has it all. These are excellent references and will serve you well in future jobs or research projects. We will also occasionally review conference and journal publications. You can either buy these books or get access to them through Georgia Tech library's website. As students, you have access to all the journal articles and book services subscribed to by the university. You just have to log in similar you would in Canvas.

Text One: Required

    Industrial Network Security, Second Edition: Securing Critical Infrastructure Networks for Smart Grid, SCADA, and Other Industrial Control Systems (2nd Edition), by Eric D. Knapp and Joel Thomas Langill, ISBN: 978-0124201149

Text Two: Required

    Applied Cyber Security and the Smart Grid: Implementing Security Controls into the Modern Power Infrastructure (1st Edition), by Eric D. Knapp and Raj Samani, ISBN: 978-1597499989

Text three: Optional

    Hacking Exposed Industrial Control Systems: ICS and SCADA Security Secrets & Solutions (1st Edition), by Clint Bodungen, Bryan Singer, Aaron Shbeeb, Kyle Wilhoit, and Stephen Hilt, ISBN: 978-1259589713

Grading
Paper Presentation 10%
Mini Project #1 20%
Mini Project #2 20%
Mini Project #3 10%
Mini Project #4 10%
Midterm Exam 15%
Final Exam 15%
Total 100%
 
Grading Scale
90% - 100% A
80% - 89% B
70% - 79% C
60% - 69% D
< 60% F

Responsibility for Material:
Students are responsible for all material in assigned sections of texts and other materials, even if not explicitly covered in lecture. Students are also responsible for all material covered in lecture. Students are also expected to check Piazza and Canvas at least twice a week to receive class updates (course syllabus may slightly change during the semester). Please note that it is the student's responsibility for turning in the correct assignment by the due date. Submitting the wrong files will lead to ZERO grade in the assignment without any further consideration.


Paper Presentation:
In order to get on the cutting-edge research, you must keep up with recently published papers. To achieve this goal, each student will prepare a paper presentation video and post its YouTube link on piazza. Other students can watch the videos and ask questions about the presentations. You can either choose your paper from the provided spreadsheet in Piazza or find your favorite paper from top conferences. Looking at the related work section of the recommended papers is a good way to find other papers. Everyone should sign up (we already sent you an email containing the access link to the spreadsheet) for presentation as we will have (around) 10 presentations in each week. In order to get the full credit of this section, each student should ask at least three questions from the other presentations as well as preparing his/her own presentation. You will need to submit your presentation along with your slides and the chosen paper at the end of the semester. It is the students' responsibility to determine if their presentation has been chosen by another student. Choosing repetitive topics will lead to zero points in this assignment.


Exams, Makeup Exams, and Incompletes:
All exams are closed book. However, during exam 1, students can bring a single-sided (one side must be blank), 8.5 x 11, handwritten note sheet. During the final exam, students can bring two single-sided (one side of each paper must be blank, or one double-sided sheet), 8.5 x 11, handwritten note sheets. Failutre to follow these instructions will lead to zero points in the exams. As a rule, makeup exams will be offered at the discretion of the professor and only for scheduled absences that are requested in writing at least one week in advance. Medical emergencies are the only exception to this rule and in case of such an emergency, the student must contact the professor as soon as possible to discuss the makeup. Incomplete grades will be given only in extraordinary circumstances.


Late Turn-in and Re-grading:
Assignments can be turned in two days after the due date and will be subject to a 20% penalty (e.g., if you get 70/100, your grade after applying the penalty will become 50/100). The grade for the assignment will be zero after this window. Exams and projects will not be considered for re-grading later than 48 hours after they are returned (or grades released). Re-grading requests should be submitted in writing with a specific explanation of the possible grading error.


Academic Honesty:
Although students are encouraged strongly to communicate with each other to assist in learning the course material, all students are expected to complete course work individually (unless instructed otherwise), following all instructions stated in conjunction with exams and assignments. All conduct in this course will be governed by the Georgia Tech honor code. Additionally, it is expected that students will respect their peers and the instructor such that no one takes unfair advantage of any other person associated with the course. Any suspected cases of academic dishonesty will be reported to the Dean of Students for further action. Please see the school's full policy in here.

As a final point, publishing the course material, projects (write-up and solutions), and exams (questions and solutions) in any public repositories and platforms such as GitHub is a violation of the course honor code and could result in a final "F" grade in the course.


Excused Absence Policy
Link


Disability Services Statement
If needed, we will make classroom accommodations for students with documented disabilities. These accommodations must be arranged in advance and in accordance with the Office of Disability Services Link


A tentative schedule of lectures (subject to change) is provided below.

Class Deliverables

Week 1, May 16

Topic(s)/Lecture(s) to watch:

Required Readings/Activities:

Recommended Readings/Activities:

Week 2, May 23

Topic(s)/Lecture(s) to watch:

Required Readings/Activities:

Recommended Readings/Activities:

Week 3, May 30

Topic(s)/Lecture(s) to watch:

Required Readings/Activities:

Recommended Readings/Activities:

Week 4, June 6

Topic(s)/Lecture(s) to watch:

Required Readings/Activities:

Recommended Readings/Activities:

Week 5, June 13

Topic(s)/Lecture(s) to watch:

Required Readings/Activities:

Recommended Readings/Activities:

Week 6, June 20

Topic(s)/Lecture(s) to watch:

Required Readings/Activities:

Recommended Readings/Activities:

Friday, June 17th, 6pm Eastern Standard Time - Monday, June 20th, noon Eastern Standard Time

Midterm Exam You will have 50 minutes to take the test

Week 7, June 27

Topic(s)/Lecture(s) to watch:

Required Readings/Activities:

Recommended Readings/Activities:

Week 8, July 4

Topic(s)/Lecture(s) to watch:

Required Readings/Activities:

Recommended Readings/Activities:

Week 9, July 11

Topic(s)/Lecture(s) to watch:

Required Readings/Activities:

Recommended Readings/Activities:

Week 10, July 18

Topic(s)/Lecture(s) to watch:

Required Readings/Activities:

Recommended Readings/Activities:

Week 11, July 25

Topic(s)/Lecture(s) to watch:

Required Readings/Activities:

Recommended Readings/Activities:

Friday, July 29th, 6pm Eastern Standard Time - Monday, August 1st, noon Eastern Standard Time

FINAL EXAM You will have 50 minutes to take the test