CSCI-4250/6250: Computer and Network Security  (Fall Semester, 2008)

Instructor:   Kang Li (kangli AT cs DOT uga DOT edu)
Office Hours: Monday 2:30~4:30pm (office at 219A BYOD GSRC)
TA: Kartheek <kartheek AT uga DOT edu>
TA Office Hours: Tuesday 10~11am (office at 301C Boyd GSRC)

Mailing-list:  Please go to http://snowball.cs.uga.edu/mailman/listinfo/cs4250 and subscribe

Course Description

This course provides a one-semester, in-depth coverage on the topic of network and system security. It is designed to help graduate and senior undergraduate CS students understand important aspects of network and system security, and participate in research in this area.

 

This course is to provide fundamental concepts and principles of computer network and system security to students. Combined with the experiences that they obtain from the course projects, students would improve their skills of developing secured network applications and systems that detect and defend against malicious attacks.

 

Technically, the course includes basic concepts of network and system security, with an emphasis on the threats and countermeasures relevant to Internet applications. Students will be prepared to evaluate the security of real network systems, and to develop strategies to detect and defend against attacks. In additional to the traditional security technologies, this course will also include discussions on problems of current research in network and system security.

 

Prerequisites

This course requires students having an understanding of basic networking and system concepts and programming. Students are recommended to take both network class and operating system before this class. No prerequisites of experiences in security.

 

Textbook

 

·   Simson Garfinkel, Gene Spafford, Practical Unix and Internet Security, O’REILLY, ISBN 0-596-00323-4

 

Evaluation

·   Class Projects      50%

·   Participation       10%

·   Exam                40%

 

Class Schedule:

Days

Time

Building

Room

Monday

11:15A ~ 12:05P

Boyd GSRC

306

Tuesday

11:00A ~ 12:05P

Boyd GSRC

306

Thursday

11:00A ~ 12:05P

Boyd GSRC

306

 

Course Outline (subject to change):

Date

Topic

Readings

Assignment

Slides

Week 1

Course Overview

Security Threats

E-Voting (Plan Due: Aug 25; Program Due: Sep 4)   quiz0_solution

lec1

Week 2

Host Security

Access Control, Password

DES measurements (Due: Sep 8)

lec2

Week 3

Cryptography

RSA, DES, Hashes and Message Digests

Brute-force Attack (Due: Sep 12) shadow file

lec3

Week 4,5

Network Security

IPsec, VPN

Trace Analysis (Due: Sep 22),  trace file

Team Project 1: Mystery Box (September 18, 5~6pm)

lec4

Week 6

Vulnerabilities and Attacks

Buffer Overflow, Stack Guard

Team Project 2: E-Voting Security (TBA)

lec6

Week 7,8

Web Security

HTTPS, SQL injection

Echo server with authentication (Due: TBA)

 

Week 9,10

DoS Attack and Defense

Backscatter

Team Project 3 (Overflow)  

 

Week 11

Wireless Security

WEP

 

 

Week 12

Other Security Topics

 

Forensics Project (Due: TBA) Images of compromised hosts will be released.

 

Week 13

Final Project and Exam

 

 

 

 


Class Projects (programming assignments)

This course will include both exams and projects. The evaluation of the student is going to emphasize more on projects and student participations.

 

Currently 9 projects are planned for this class (more projects will be added if time permits).

 

·   Host Access Control (Week 1~3)

o        E-voting

o        DES performance measurements

o        Password cracking and protection

·   Network Anomaly Detection (Week 4~6)

o        IP spoofing

o        Port Scan

o        Trace Analysis

·   Defending Common Vulnerability (Week 7~10)

o        Local buffer overflow exploit

o        Remote buffer overflow attack and defense

 

One or two competitions are also planned as team projects during this course. Details of the team project will be discussed during the course.

·   Team Project

o        E-Voting

o        CTF style of competition

 

Programming Assignment Turning In Procedure

 
To submit the files, you will need to use the submit program.  Your files
need to be under a common subdirectory, for example "4250_proj1" for the first project. 
If the 4250_proj1 subdirectory is directly under your home directory you
execute the following command line while in your home directory:
   submit 4250_proj1 cs4250
 
Please check the output of the submit program. If succeed, it will return you a file 
named recxxxx in your project directory. xxxx is a sequence number generated by the 
submit program. You are always welcome to email a tar ball of the project to 
<cs4250 at cs dot uga dot edu> if you encounter a problem with the submit program.
 

Late Policy

Submission after the project deadline would get a 0 points for that project. Students with difficulties or emergencies are highly encouraged to contact the instructor or the TA before the deadline.

 

Additional Requirement for Graduate Students

Graduate students that take this class as CSCI-6250 are expected to accomplish additional tasks. Graduate students are expected to either make presentations of recent research on computer security or prepare demonstrations on related projects. Please meet the instructor in the second week to discuss the topic.