An architectural framework for analyzing computer system security
2017-01-23T22:19:39Z (GMT) by
Computing systems are complex machines comprised of many disparate components working together to fulfill a higher purpose. While most systems can remain functional irrespective of minor errors in any one component, these minor errors can also be the source for much larger devious exploitation. Despite rapid advances in technology, many of the core operating aspects pertaining to computing systems have remained virtually unchanged, and this includes the underlying architecture. If various components can work independently, and various components can be compromised, logic entails that the overall security of the system is only as secure as each of its underlying components. This renders the existing operational infrastructure of modern computing systems flawed in their underlying design. With evolving technology comes newer measures of circumventing system security. So the question remains as to how can any architectural design account for this changing operating environment? While perfect security will always remain a fallacy, this thesis aims at presenting an architecture, termed as the ICS architecture, which entails two very important concepts. First, borrowing from the fields of biology and anthropology, a computing system is considered as a singular entity solely responsible for its own operations and well being - a knowledge of which it must always possess. Second, as the fundamental unit of all biological life is a cell, all digital systems must execute code. Collectively, these blocks of code work together to achieve a desired output. Thereby the most fundamental unit of operation within a computing system is established as a Block of Code. This thesis derives and asserts the ICS architecture in four stages. First, computing systems are represented as a set of independent components, irrespective of complexity or functionality. Second, a more applicable definition for the term ’Security’, within a computing system, is defined as a combination of independent characteristics. Third, each characteristic is defined as a set of properties applicable to a Block of Code, asserted for validity using first order logic, and enforced via a framework of monitors. And fourth, an integrated architecture is defined based on the prior three stages in order to alleviate the responsibility of system security from any one component within the computing system. This allows for attaining a higher level of security, is capable of handling change, and ensures security through architectural design rather than through obscurity.