Organization
The organization of this book reflects its philosophy. It begins with fundamentals and principles that provide boundaries within which security can be modeled and analyzed effectively. This provides a framework for expressing and analyzing the requirements of the security of a system. These policies constrain what is allowed and what is not allowed. Mechanisms provide the ability to implement these policies. The degree to which the mechanisms correctly implement the policies, and indeed the degree to which the policies themselves meet the requirements of the organizations using the system, are questions of assurance. Exploiting failures in policy, in implementation, and in assurance comes next, as well as mechanisms for providing information on the attack. The book concludes with the applications of both theory and policy focused on realistic situations. This natural progression emphasizes the development and application of the principles existent in computer security.
The first chapter describes what computer security is all about and explores the problems and challenges to be faced. It sets the context for the remainder of the book.
Chapters 2 and 3 deal with basic questions such as how "security" can be clearly and functionally defined, whether or not it is realistic, and whether or not it is decidable.
Chapters 4 through 7 probe the relationship between policy and security. The definition of "security" depends on policy. We examine several types of policies, including the ever-present fundamental questions of trust, analysis of policies, and the use of policies to constrain operations and transitions.
Chapters 9 through 12 discuss cryptography and its role in security, focusing on applications and issues such as key management, key distribution, and how cryptosystems are used in networks. A quick study of authentication completes this part.
Chapters 13 through 16 consider how to implement the requirements imposed by policies using system-oriented techniques. Certain design principles are fundamental to effective security mechanisms. Policies define who can act and how they can act, and so identity is a critical aspect of implementation. Mechanisms implementing access control and flow control enforce various aspects of policies.
Chapters 17 and 18 present concepts and standards used to ascertain how well a system, or a product, meets its goals.
Chapters 19 through 22 discuss some miscellaneous aspects of computer security. Malicious logic thwarts many mechanisms. Despite our best efforts at high assurance, systems today are replete with vulnerabilities. Why? How can a system be analyzed to detect vulnerabilities? What models might help us improve the state of the art? Given these security holes, how can we detect attackers who exploit them? A discussion of auditing flows naturally into a discussion of intrusion detectiona detection method for such attacks.
Chapters 23 through 26 present examples of how to apply the principles discussed throughout the book. They begin with networks and proceed to systems, users, and programs. Each chapter states a desired policy and shows how to translate that policy into a set of mechanisms and procedures that support the policy. This part tries to demonstrate that the material covered elsewhere can be, and should be, used in practice.
Each chapter in this book ends with a summary and some suggestions for further reading. The summary highlights the important ideas in the chapter. Interested readers who wish to pursue the topics in any chapter in more depth can go to some of the suggested readings. They expand on the material in the chapter or present other interesting avenues.
 |