M1: Advanced UNIX Security: Threats and Solutions
Matt Bishop, University of California, Davis
Intended audience: System administrators, system programmers, and
users, especially those interested in the underpinnings of UNIX
system security; those needing to write programs which change
privileges of their users; those worried about computer worms,
viruses, and other nasties and who want to learn how to limit
their damage; and those interested in more than a simple cookbook
list of ways to protect a UNIX system.
Prerequisites: an understanding of the basic protection mechanisms
of UNIX systems (real and effective UIDs and GIDs, file protection
modes, etc.)
Topics include:
- UNIX and passwords: how passwords are stored, details of
the hashing (password encryption) algorithm, password cracking,
password management; schemes for selecting and/or assigning
passwords. This section involves a somewhat technical
discussion of the cryptographic techniques used in the UNIX
password hashing function.
- How to manage privileges: managing a super-user account;
managing less powerful system management accounts; managing
system resources.
- Writing setuid programs: when not to use them; when to use
them; approaches, alternatives, common pitfalls, considerations,
some details about which library functions and system calls are
safe to use, and which have dangerous effects or side effects. A
setuid program designed to give temporary privileges will be
examined.
- Trojan horses, computer worms, and other malicious logic:
how malicious logic works, how UNIX security mechanisms
interact with it; ways to protect yourself and your system;
some famous incidents (Internet worm of 1988, etc.) and what
lessons they teach.
- UNIX and network security: overview of Kerberos,
Privacy-Enhanced electronic mail, and Secure RPC (including a
technical discussion of the role of cryptography, and how the
ciphers work) NFS and NIS (formerly YP); how to forge and
intercept network traffic; network-based daemons; well-known
security holes and why they arise; the many lives of UUCP.
- X11 Window System security: how to set it up, and its
limits and benefits.
- Some of the better-known and pernicious security holes and
how to plug them or detect their use.
- Suggestions for detecting intrusions, what to look for,
and what to do; planning for an attack; resources.
Matt Bishop received his PhD from Purdue University where he
specialized in computer security. Besides computer and network
security, his research and teaching areas include operating
systems and software engineering. He chaired the first two UNIX
Security Workshops, and his column on computer security appears
regularly in the Best Practises newsletter.