The OS Friendly Microprocessor Architecture

The OS Friendly Microprocessor Architecture

Secure Computing Architecture: A Direction for the Future -- The OS Friendly Microprocessor Architecture Patrick Jungwirth, PhD 1; Philip Chan, PhD 2 US Army Research Lab Hameed Badawy, PhD 1 Computational and Information Sciences Directorate Klipsch School of Electrical and Computer Engineering 2 Survivability/Lethality Analysis Directorate US Army High Performance Computing Center Aberdeen Proving Ground, MD, USA New Mexico State University, Las Cruces, NM, USA [email protected] [email protected] [email protected] Abstract — We present a short historical review of computer memory computers include: Rice R2, 1972, [1], Burroughs security covering computer architectures and operating systems. B6500, 1969, employed a 3-bit type tag field [2], and Tools and techniques for secure architectures have been well Telefunken TR440, 1970, used a 2-bit memory type tag [3]. researched; however, attention has only focused on Today, there has been a renewed interest in tagged architectures microprocessor performance. for computer security. A new direction in computer security is microprocessor and In the classic 1975 computer security paper, Saltzer and OS co-design. The co-design approach needs to leave the insecure Schroeder [4] defined the properties for a secure computer von Neumann bus architecture in the past. Co-design also needs system. The most significant property is the principle of least to consider the application space. Embedded systems do not privilege: only give the user or application the absolute require extensive sharing rules. minimum privileges required. From the ‘80’s until recently, 1/4 mile top speed was the only metric of interest. Today, there is Co-design approach has renewed interest in tagged computer renewed interest in Saltzer and Schroeder’s security properties. architectures from the 60’s for computer security. Multics OS pioneered advanced computer security in the late 60’s. Multics Computer security requires a negative proof mindset. was considered too complicated for general computing According to Dijkstra, “[Software] testing shows the presence, applications. An “object oriented” microprocessor, i432 (with not the absence of bugs” [5]. Testing cannot prove software is hardware protection features), was developed in the 70’s. As a perfect. A formal proof-of-correctness [6]-[7] is required to research processor, i432 was a great success; however, 80’s demonstrate the highest level of computer security assurance. semiconductor design rules doomed the performance. The mindset of ‘too complicated,’ from past computer generations, is Computer security requires a leave-no-stone-unturned holding computer security back. approach (negative proof mindset). A strong defense against one class of cyber-attacks does not guarantee good computer Computer security needs to continue researching co-design security. The Greek army overcame a decade-long stalemate of and rediscover past wisdom. We will explore a new research Troy using a social engineering attack. The city of Troy direction: the OS Friendly Microprocessor Architecture (OSFA). welcomed the Trojan horse and its “attack package” [8]; We present three innovations that will help solve some of the thereby giving the Greek army victory. A cyber attacker only security issues facing cybersecurity. OS Friendly Microprocessor Architecture is a thread-safe architecture. The architecture’s needs to find one security vulnerability to enter a castle and take pipeline memory also addresses the context switch overhead the kingdom. In the cyber realm, you must understand cyber- problem and helps reduce OS complexity. attacks to defend against them: “the best defense is a good offense.” Keywords — Computer Security, Cybersecurity, Microprocessor, OS, Co-Design, Tagged Memory, Memory Pipeline, OS Friendly In my view, a defender who doesn’t know how to attack is no Microprocessor Architecture defender at all. W. Earl Boebert, Computer Security Pioneer [9] I. COMPUTER SYSTEM HISTORY What is old is new again. Many of the cyber security Information assurance consists of the five properties: problems of today, were studied and solved back in the ‘70’s. integrity, authenticity, confidentiality, traceability and As illustrated by Multics, circa 1969-1973, and the i432 availability. The properties define privacy and auditability of microprocessor, circa 1981, excellent computer security has information. been demonstrated; however, until recently, the only marketing hype was muscle car top speed. A. 1970’s Telephone Network The Rice Computer, R1, circa 1959, used a 2 bit tagged Poor network security, “security through obscurity” (do not memory architecture for debugging [1]. Other notable tagged publish any technical documents), is illustrated by 1970’s era in- This work was partially supported through funding provided by the U.S. Army Research Laboratory (ARL) under contract No. W911NF-07-2-0027. U.S. Government work not protected by U.S. copyright band signaling telephone network. Without any authentication, Hardware costs have dropped radically while software cost and it was impossible to tell the difference between a prankster and complexity has grown [63], [66]. We must now reconsider the the phone company. Two separate publications, Weaver et al. balance of hardware and software and to provide more specialized 1954 [10], and Breen et al. 1960 [11] provided the technical function[s] in hardware than we have previously, in order details to control the “open door” telephone network. The to drastically simplify the programming process [1] - [4]. security issues were compounded since any hobbyist could Feustel 1973 [17] easily build a “bluebox” [12] to control the telephone system. Gehringer and Keedy in 1985 [18] present a rebuttal of In-band signaling gave everyone administrator privileges. tagged computing architectures. Gehringer and Keedy did not In the cryptographic world today, open source algorithms are anticipate using hardware dynamic typing (memory tagging) considered essential for peer review, and only the encryption for computer and cyber security applications. Memory tagging key is undisclosed. NIST has published the Advanced provides for real-time type checking and least privilege Encryption Standard (AES) [13] algorithm, and anyone can enforcement across computations. review the algorithm and software codes. … fundamentally [memory tagging] it is just a mechanism for the architectural implementation of dynamic typing. … The important B. von Neumann Architecture point is that all the aims of tagging can be efficiently achieved The von Neumann bus architecture has its origins back in without hardware tagging …” the 1950’s. In a von Neumann architecture, there is no Gehringer and Keedy in 1985 [18] difference between program instructions and data. Instructions Forty plus years after Feustel’s 1973 paper and billions of and data share the same bus architecture and memory. As early transistor per chip, software costs are still climbing! Tagged as 1972, Feustel [1] points out the security flaw. computer architectures have emerged as a solution to the In the von Neumann machine, program and data are equivalent in software cannot secure software problem afflicting the the sense that data which the program operates on may be the computer world today. As Yogi Berra would have said: “It’s program itself. The loop which modifies its own addresses or déjà vu all over again.” Tagged memory architecture papers changes its own instructions is an example of this. While this [19]-[28] cover computer architectures, security policies, practice may be permissible in a minicomputer with a single user, secure pointers, information flow verification, and dynamic it constitutes gross negligence in the case of multi-user machine where sharing of code and/or data is to be encouraged. type checking for computer and cyber security applications. E. Feustel 1972 [1] D. i432 Microprocessor Cowan 2000 [14] illustrates the ease of buffer overflow The i432 microprocessor introduced several innovations to attacks in a von Neumann architecture: “By overflowing the 1 buffer, the attacker can overwrite the adjacent program state the microprocessor world; including, an “object-oriented” with a near-arbitrary [2] sequence of bytes …” Wagner et al. approach to microprocessor hardware. The semiconductor 2000 [15] states “Memory safety is an absolute prerequisite for design rules from the early ‘80’s led to trade-offs that drastically reduced performance. Commercially, the i432 was security, and it is the failure of memory safety [ protection] that is most often to blame for insecurity in deployed software.” In a failure; however, as a research processor, the i432 pioneered a von Neumann architecture, programs and instructions share some hardware based security concepts [29]. the same computer resources. The sharing violates Saltzer and As a research effort the 432 was a remarkable success. It proved Schroeder’s security principles. that many independent concepts such as flow-of-control, program modularization, storage hierarchies, virtual memory, message- Podebrad, et al. 2009 [16] analyzed information assurance passing, and process/processor scheduling could all be subsumed attributes (integrity, authenticity, confidentiality, traceability, under a unified set of ideas. and availability) for the von Neumann architecture. Podebrad, Coldwell and Jensen 1988 [29] et al. concluded: a no-execute bit was insufficient and “Only a fundamental re-evaluation of the objectives i.e. the Coldwell

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    8 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us