OMSCS - OMCY - Introduction to Cyber-Physical Systems Security (CS 6263 - ECE 8813) - Fall 2021

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: Regina Pogosian
Email rpogosia3@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 and what it tries to accomplish. This will help us to give you the partial credit and also check for the plagiarism.


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. Further details on this assignment will be given at the end of the first week of the class.


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. The students are expected to perform all the necessary steps for online proctoring the exam, e.g., room scan, ID scan, etc. Failure to follow the aforementioned rule will lead to ZERO in the exam without any further consideration.


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. 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. Becuase of the huge working load on the TAs, we cannot accept unnecessary/invalid regrade requests. Therefore, for any invalid requests (a request which does not lead to a positive change in your grade) in each part of the project there will be 5 pts penalty. Before making a regrade request, check your program/submission for multiple times and make sure that we made an error while grading your project/assignment.


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.


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


Class Piazza page can be accessed through Canvas.


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

Class Deliverables

Week 1, Aug 23

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

  • L1 - Introduction to Cyber-Physical Systems
  • L2 - Overview of CPS

Required Readings/Activities:

  • None

Recommended Readings/Activities:

Week 2, Aug 30

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

  • L3a - Background - Networking
  • L3b - Background - Information Security
  • L3c - Background - Control Systems

Required Readings/Activities:

  • None

Recommended Readings/Activities:

  • None
Week 3, Sep 6

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

  • L4 - Industrial Networks

Required Readings/Activities:

  • Knapp and Langill (Chapters 1, 2)

Recommended Readings/Activities:

  • None
Week 4, Sep 13

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

  • L5 - Industrial Cyber Security History and Threats

Required Readings/Activities:

  • Knapp and Langill (Chapters 3)

Recommended Readings/Activities:

  • None
Week 5, Sep 20

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

  • L6 - Introduction to Industrial Control Systems And Operations

Required Readings/Activities:

  • Knapp and Langill (Chapters 4)

Recommended Readings/Activities:

  • None
Week 6, Sep 27

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

  • L7 - Ladder Logic Demo

Required Readings/Activities:

  • None

Recommended Readings/Activities:

  • Various ladder logic tutorials on the web
Week 7, Oct 4

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

  • L8 - Industrial Network Design and Architecture

Required Readings/Activities:

  • Knapp and Langill (Chapters 5)

Recommended Readings/Activities:

  • None
Friday, October 15th, 6pm Eastern Standard Time - Monday, October 18th, noon Eastern Standard Time

Midterm Exam You will have 50 minute window to take the test (multiple-choice and true/false questions)

Week 8, Oct 11

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

  • L9 - Industrial Network Protocols

Required Readings/Activities:

  • Knapp and Langill (Chapters 6)

Recommended Readings/Activities:

Week 9, Oct 18

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

  • L10 - Power Delivery Systems (Example Industrial Control System)

Required Readings/Activities:

  • Knapp and Samani (Chapters 1, 2)

Recommended Readings/Activities:

  • None
Week 10, Oct 25 AND Week 11, Nov 1

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

  • L11 - Hacking Industrial Control Systems

Required Readings/Activities:

Recommended Readings/Activities:

    Week 12, Nov 8 AND Week 13, Nov 15

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

    • L12 - Securing Industrial Control Systems

    Required Readings/Activities:

    Recommended Readings/Activities:

    • Specification-based IDS
    Week 14, Nov 22

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

    • L13 - Privacy in Cyber-Physical Systems

    Required Readings/Activities:

    Recommended Readings/Activities:

    Week 15, Nov 29

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

    • L14 - Threats to Cyber-Physical Systems in Other Domains

    Required Readings/Activities:

    Recommended Readings/Activities:

    • None
    Friday, Dec 3rd, 6pm Eastern Standard Time - Monday, December 6th, 11:59am Eastern Standard Time

    FINAL EXAM You will have a 50-minute window to take the test (multiple-choice and true/false questions)