SI485H: Stack Based Binary Exploits and Defenses (F15)
Home Policy Calendar Resources
Course Policy
Instructors
Text Book
- Hacking: The art of exploitation , 2nd Edition. Jon Erickson. No Starch Press. (Required)
Extra Instruction
You are encouraged to come in for extra instruction (EI) when you
are having trouble. There is an open-door policy on EI. Any time my
door is open you may come for EI, although, I may not be directly
available. Appointments can also be made by email.
Meeting Times
- Lecture: Monday and Wednesday 4th period
- Lab: Thursday 3rd and 4th period
MGSP
There will be one MGSP student leaders to compliment extra
instruction. The times of the meetings are still to be
determined.
Course Objectives and Assessment
Learning Objectives
- Understand how programs are loaded and executed in a typical computing environment
- The ability to trace the execution of a program using standard tools (e.g., gdb, idaPro)
- The ability to identify, exploit, and fix vulnerable software
- Read, write, and understand x86 assembly programs
- Understand system level defenses (e.g., ASLR, stack cannaries) and how to circumvent them
- Develop and deploy stack based exploits (e.g., stack overflows, format string attacks, ROP)
Grading Policy
Grading Breakdown
- Final Grades
- 10%: Final Exam
- 5%: Final Exam Practicum
- 10% : 6-week and 12-week Written Exam
- 5% : 6-week and 12-week Practicum Exam
- 40% : Labs
- 25% : Homework
- 5% : Summary Reports
- 6-/12-Week Grades: 20% Exam, 10% Practicum, 40% Labs, 25% Homework, 5% Summary Report
Lab Submission and Grading Policy
There is no fixed due date for the labs, and you may complete labs
at any time during the semester, even well after they are
assigned. However, there will be three lab assessment dates at which
point your progress will be measured and a grade assigned. These dates
correspond to the exam periods:
- 2 Oct 2015: 6-Week Assessment
- 6 Nov 2015: 12-Week Assessment
- 22 Dec 2015: Final Assessment
All labs will be graded on a strict PASS/FAIL bases. No partial
credit will be provided for lab submission; however, each part of a
lab will be separately graded based on the number of points
assigned to each part. Your overall lab grade will be based on the
total number of points earned from completing parts of the labs.
Homework Submission and Grading Policy
Homeworks for each week will post on Monday nights, and are
due the following Monday at the start of lecture. Homeworks must
be submitted in hard copy to the instructor. Late homework
will not be accepted without prior arrangement with the
instructor
Homework will be self graded, in-class under the direction of
the instructor. You are expected to honestly and carefully assess
your work and answers. Improper self-grading will be considered a
potential honor violation.
Summary Report Submission Policy
Summary reports will be assigned in class and posted on the
course calendar with the due date noted. Submission must occur via
hard copy.
A summary report will comprise of a one-to-two paragraph
summary of the technical readings. A one paragraph summary of
measurements and results. And, one paragraph describing an item
you found surprising and an item you found lacking or
insufficient.
Summary reports will be graded on a sufficient or insufficient
basis. An insufficient summary may be resubmitted for partial
credit at the discretion of the instructor.
Honor, Collaboration and Classroom Conduct Policy
The honor and collaboration policy of this class references
and adapts the language of Computer Science Department
Instruction 1531.1D, Policy
Concerning Programming Projects. We make the following
course-specific adaptations and revisions below; however, when
not explicitey stated, the policy of the departments policy
holds.
Homework Assignment Collaboration
- You may work freely with classmates on the
homework. This includes working together and solving problems
together.
- You are required to indicate all collaborators on your
homework assignments.
- Each student must submit an individual assignment,
and the pencile-to-paper/fingers-to-keyboard work must be your
own. Even when collaborating, in many situations, we do not
expect two students to produce the same answer.
- Copying of homework assignments is strictly forbidden and
is considred an honor violation. We define copying as the act of
viewing or discussing another's answers, copying down those
answers without having completed the work
individually.
Lab Assignment Collaboration Policy
- You may collaborate on all lab assignments for the purpose of
discussion and problem exploration; however, each student must
individually solve each of the lab assignments and submit their
own solution.
- You are not allowed to share code or other solution material
with others. However, you may discuss the main concepts and
solution techniques with others and collaborate on developing
solution processes. Sharing specific solutions, however, is
strictly against this policy.
- You are required to indicate all collaborators on your lab
assignments via an appropriate mechanism (e.g., by submitting a
README file). Collaborating and not indicating your
collaborators is in violation of this and the departments
policy.
Classroom Decorum
- Beverages are permitted in classrooms and labs provided they
are in closed containers. No food or smokeless tobacco is permitted
in classrooms or labs.
- Vulgar language and classroom disruptions will not be
tolerated. A student who disrupts the class for those reasons will
be asked to leave immediately and will be marked has having left
early in the attendance roster and may be considered for a conduct
offense.
APPROVED
__________________________
Asst. Prof. Adam J. Aviv
Course Coordinator
___________________
CDR Mike Bilzor
CS Department Chair
Last modified: Mon Aug 24 11:55:31 EDT 2015