Lecture 3

Design Principles for Security-conscious Systems

Administrivia
From time to time, we may discuss vulnerabilities in widely-deployed computer systems. This is not intended as an invitation to go exploit those vulnerabilities. It is important that we be able to discuss real-world experience candidly; students are expected to behave responsibly.

Berkeley's policy (and our policy) on this is clear: you may not break into machines that are not your own; you may not attempt to attack or subvert system security. Breaking into other people's systems is inappropriate; and the existence of a security hole is no excuse.

Economy of Mechanism

Bellovin's Fundamental Theorem of Firewalls
Axiom 1 (Murphy)
All programs are buggy.

Theorem 1 (Law of Large Programs)
Large programs are even buggier than their size would indicate.

Corollary 1.1
A security-relevant program has security bugs.

Theorem 2
If you do not run a program, it does not matter whether or not it is buggy.

Corollary 2.1
If you do not run a program, it does not matter if it has security holes.

Theorem 3
Exposed machines should run as few programs as possible; the ones that are run should be as small as possible.

The sendmail wizard hole
Credits: Bellovin.

The ftpd/tar hole

Fail-safe Defaults

Canonicalization Problem

Canonicalization Problem, cont.

Complete Mediation

Incomplete mediation in NFS

Imperfect bookkeeping in sendmail
Credits: Bellovin.

Mediation in Java

Separation of Privilege

Anonymous Remailers

Least Privilege

Tractorbeaming wu-ftpd
Credits: Wietse Venema.

Sandboxes and code confinement

Least Common Mechanism

Eudora and Windows

Psychological Acceptability

Work Factor

Work factor, cont.

Compromise Recording

Compromise Recoding, cont.

About this document ...

This document was generated using the LaTeX2HTML translator Version 96.1 (Feb 5, 1996) Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.

The command line arguments were:
latex2html 0902-www.

The translation was initiated by David Wagner on Fri Sep 18 16:52:48 PDT 1998


David Wagner
Fri Sep 18 16:52:48 PDT 1998