Skip to content
lectern.tv
MIT6.858Systems & CSgraduate· 2014

Computer Systems Security

Prof. Nickolai Zeldovich

Graduate-caliber engineering study of buffer overflows, privilege separation, capabilities, sandboxing, OS kernel isolation, web security models, network attacks, and side channels.

Start Lecture 122 lectures · 30h total
Syllabus progress0 of 22 watched
MIT 6.858: Computer Systems Security

Syllabus

22
Lecture 1· 1:17:12

1. Introduction, Threat Models

This introductory lecture establishes the foundational concepts of computer systems security, outlining course organization and the critical framework of threat models for analyzing system vulnerabilities and attacker capabilities.

Lecture 2· 1:27:38

2. Control Hijacking Attacks

This lecture continues the discussion on buffer overflows, detailing various methods for control hijacking attacks, including stack smashing and return-to-libc attacks, and introduces defenses like non-executable stacks and ASLR.

Lecture 3· 1:21:37

3. Buffer Overflow Exploits and Defenses

This lecture from MIT's advanced computer security course details classic buffer overflow vulnerabilities, examining techniques such as baggy bounds handling and advanced return-oriented programming (ROP) for exploit construction and mitigation.

Lecture 4· 1:23:29

4. Privilege Separation

This lecture introduces the architectural principles and practical implementations of privilege separation, examining how operating systems and applications can isolate components to mitigate security vulnerabilities and enforce the principle of least privilege.

Lecture 5· 1:21:57

6. Capabilities

This lecture continues the discussion of privilege separation in computer systems, focusing on the architectural implications and security benefits of capability-based models for controlling access rights and managing system resources.

Lecture 6· 1:23:21

7. Sandboxing Native Code

This lecture introduces the Native Client system, detailing its architectural approach to software fault isolation and secure execution of native code within a browser environment.

Lecture 7· 1:22:48

8. Web Security Model

This lecture from MIT's advanced Computer Systems Security course introduces the foundational principles of the web security model, focusing on client-side application vulnerabilities and the architectural security mechanisms within web browsers.

Lecture 8· 1:22:08

9. Securing Web Applications

This lecture, part of MIT's advanced computer systems security course, delves into the principles and common vulnerabilities encountered when designing and implementing secure web applications. Topics include protection against prevalent attack vectors such as injection flaws and cross-site scripting.

Lecture 9· 1:22:16

Lecture 10: Symbolic Execution (6.858)

This lecture delves into the foundational concept of symbolic execution, a powerful program analysis technique for automatically exploring execution paths to find vulnerabilities.

Lecture 10· 1:20:04

Lecture 11: Ur/Web (6.858)

This session introduces Ur/Web, a functional programming language designed to build secure, full-stack web applications with robust static guarantees.

Lecture 11· 1:18:26

Lecture 12: Network Security (6.858)

This lecture explores the fundamentals of network security, tracing the historical evolution of TCP/IP and its implications for secure communication protocols.

Lecture 12· 1:21:03

Lecture 13: Network Protocols (6.858)

This session focuses on the Kerberos authentication service, dissecting its architecture and mechanisms for secure network authentication across untrusted networks.

Lecture 13· 1:18:18

Lecture 14: SSL and HTTPS (6.858)

This lecture details the cryptographic protection of network communications using SSL/TLS and HTTPS, integrating these mechanisms into the broader web security model.

Lecture 14· 1:15:31

Lecture 15: Medical Software (6.858)

Kevin Fu delivers a guest lecture on the unique security challenges and critical vulnerabilities inherent in medical software and embedded medical devices.

Lecture 15· 1:22:16

Lecture 16: Side-Channel Attacks (6.858)

This lecture focuses on side-channel attacks, with a particular emphasis on timing attacks and their exploitation of physical implementation characteristics of cryptographic algorithms.

Lecture 16· 1:19:48

Lecture 17: User Authentication (6.858)

This session examines various user authentication schemes, discussing their underlying principles, practical implementations, and inherent security trade-offs.

Lecture 17· 1:20:13

Lecture 18: Private Browsing (6.858)

This lecture discusses the multifaceted challenges of privacy within the context of web browsers and the broader web security landscape, including tracking mechanisms.

Lecture 18· 1:20:13

Lecture 19: Anonymous Communication (6.858)

Nick Mathewson provides a guest lecture on anonymous communication systems, detailing the design principles and operational mechanics of Tor.

Lecture 19· 1:22:00

Lecture 20: Mobile Phone Security (6.858)

This lecture analyzes the security architecture of the Android platform, dissecting its core design principles and mechanisms for mobile phone security.

Lecture 20· 1:19:38

Lecture 21: Data Tracking (6.858)

This session explores taint tracking as a method for information flow analysis, specifically examining its application within the Android platform to monitor data propagation.

Lecture 21· 1:26:51

Lecture 22: Information Security at MIT IS&T (6.858)

Mark Silis and David LaPorte from MIT IS&T deliver a guest lecture outlining practical information security practices and institutional roles within a large university environment.

Lecture 22· 1:17:25

Lecture 23: Security Economics (6.858)

This lecture applies economic principles to cybersecurity, specifically analyzing the economic incentives and structures underpinning the spam ecosystem.