Real-Time Operating System Security T
Total Page:16
File Type:pdf, Size:1020Kb
Real-Time Operating System Security Weider D. Yu (Dipti Baheti, Jeremy Wai) Computer Engineering Department, San Jose State University, San Jose, CA 95192-0180 6.0 COMMERCIAL SYSTEM DESIGN .......................... 11 Abstract — Real Time Operating Systems 6.1 GREEN HILLS SOFTWARE , INC . .................................. 11 lie at the heart of most embedded systems. 6.2 LYNUX WORKS , INC . ................................................ 12 Connectivity of these systems enable user to 6.3 WIND RIVER , INC . .................................................. 12 monitor and control these systems remotely. 6.4 MICROSOFT , INC . ................................................... 13 This report show current systems have 7.0 SOME KNOWN CASES OF SECURITY LAPSE ......... 13 many faults in which the system is connected to each other, and to the world. 7.1 SECURITY IN VEHICLE NETWORKS .............................. 13 An analysis shows these systems could be 7.2 RISKS IN SCADA SYSTEMS ....................................... 14 significantly more secure if security policies 7.3 ATTACKS ON MOBILE PHONES .................................. 14 were followed and if current computer 8.0 LESSONS LEARNED ............................................. 15 networking security techniques are applied. 9.0 CONCLUSION ..................................................... 15 10.0 REFERENCES ..................................................... 16 Index 0.0 OUR CONTRIBUTIONS .......................................... 1 0.0 OUR CONTRIBUTIONS 1.0 INTRODUCTION .................................................... 1 2.0 DEFINITIONS ........................................................ 2 We contributed to Sections: 3.0 RELATED TECHNOLOGIES AND WORK .................. 3 5.1 Enforcement of security policies 5.2 Improving Existing SCADA 4.0. CURRENT SECURITY ISSUES IN RTOS .................... 4 5.3 Dynamic Security policies through 4.1 INSECURE SCADA .................................................... 5 Heuristics 4.2 CODE INJECTION ...................................................... 6 8.0 Lessons Learned 4.3 INEFFICIENCY OF ENCRYPTION ..................................... 6 4.4 EXPLOITING SHARED MEMORY ................................... 6 4.5 PRIORITY INVERSION ................................................. 7 1.0 INTRODUCTION 4.6 DENIAL OF SERVICE ATTACKS ...................................... 7 4.7 ATTACKING INTER -PROCESS COMMUNICATION .............. 8 he Real Time Operating System (RTOS) 5.0. COMMON APPROACHES AND SOLUTIONS .......... 8 Tis a computing environment used in 5.1 ENFORCEMENT OF SECURITY POLICIES .......................... 8 systems that require a response within very 5.2 IMPROVING EXISTING SCADA .................................... 9 specific time constraints. The correctness of 5.3 DYNAMIC SECURITY POLICIES THROUGH HEURISTICS ....... 9 the system depends not just on the correct 5.4 USE OF PRIVILEGE LEVELS .......................................... 9 logical result but also on the delivery time of 5.5 PROTECTING MEMORY E ! B . RROR OOKMARK NOT DEFINED the result. For most applications, real time 5.6 PRIORITY INHERITANCE PROTOCOL ............................ 10 5.7 MILS (M ULTIPLE INDEPENDENT LEVELS OF SECURITY )... 10 performance is the main criterion in evaluation of RTOS. RTOS employ several methods to ensure that it meets the real time system 1 requirements. This makes RTOS mostly a SCADA, and this may have an even a bigger single purpose system. impact to the industry as SCADA networks requires high rate of reliability and RTOS often There are two folds to security relating to controls sensitive equipments that cannot RTOS. Firstly, security within the RTOS malfunction. revolves around the ability to keep jobs separate so one task does not interrupt another. This problem becomes more complex as RTOS 2.0 DEFINITIONS is needed for more complex applications while still keep its deadline requirement. Security of RTOS – Real-Time Operating System, real a RTOS also relates to the stability of the time in the sense that a process running will overall system because insecure tasks can finish within the deadline specified, or else cause the system to fall into an unknown state even if the process returns useful function, and crash. This is unwanted because RTOS are it would be too late. An example would be often used as mission and safety critical the antilock brake system in a car. If it components of certain applications. returns wheel slip information too late, it would be useless. The second security issue has to do with RTOS in a network. RTOS seldom operate alone in Embedded Systems – Usually has a modern day industry. It usually controls certain microcontroller at the heart of the system. automated machinery and are often linked to a It can vary in function depending on its monitoring system that connects to other programming. But for this article, it is the RTOS for management of an entire facility. It physical component that a RTOS sits. is used in wide variety industry include electrical power grids, traffic signals, water Deadlines – In an RTOS, deadlines are the management systems, oil refineries, chemical amount of time that the system can perform plants, and pharmaceutical manufacturing. a process and return the results. If it cannot These control networks are often called return the results before the deadline, the supervisory control and data acquisition results might as well be incorrect. (SCADA) or distributed control system (DCS). These fields are merging as technology SCADA – Supervisory Control and Data advances. They connect to their companies’ Acquisition, it is a network of machine’s database and mainframes running other control units tied together to a workstation. operations, which are also connected to the The workstation is able to read relevant internet. This meant that RTOS can potentially machine data. Workstation can optionally be reprogrammed by intruders to either crash send commands to the machines. Machines or do harm to those RTOS that controls could be anything from sensors, to motors physical machinery. The obscurity of SCADA opening and closing valves. in the public eye gives SCADA the illusion of anonymity, but this is not security. DCS – Distributed Control System, a network of controllers where each one controls one Security of both intra-RTOS communication or more machinery. A system of controllers and SCADA are similar to that of non real time forms a network for monitoring and operating systems and computer networks. As changes. Availability of off-the-shelf parts technology of control systems merge to that of has made SCADA and DCS virtually the computer networks, problems that control same. system encounters will mirror that of the computer network counterpart. This is a Virus – A computer virus is a small software blessing and a curse because problems that program that spreads from one computer to plague computer networks will also plague another computer and that interferes with 2 the computer operation. A computer virus download new games and features on demand. may corrupt or delete data on a computer, Household appliances can be connected to a use an e-mail program to spread the virus to network to automate management of lighting, other computers, or even delete everything heating and also security. on the hard disk. One of the first examples of a functional Real Denial-of-Service attack – Denial of Service Time Operating System implemented on a (DoS) is an attempt to make a computer large scale was the Transaction Processing resource unavailable to its intended users. Facility developed by IBM. Since then, Real A common method is to flood the target Time Systems have evolved and undergone machine with false requests so that it many changes. Now there are several hundreds cannot respond to legitimate traffic. of Real Time OSs available. Some of these are Usually a DoS attack does not intend very powerful and can be used for several information theft or other security losses, general purpose applications while there are but it can cost the target a great deal of time some simple implementations that are designed or money. for only one particular purpose. Irrespective of the design of the Real Time System, its Encryption – A way to hide plain data with consistent ability to accept and complete a task keys or passwords to deny unauthorized within a limited time remains its key access into sensitive data. characteristic feature. VLSI – Very Large Scale Integration. It is the The connection of embedded systems to process of creating integrated circuits on a networks means that they are not only single chip by combination of very large susceptible to security issues caused by their number of transistor based circuits. own design, but also to security issues faced as a result of interfacing to external networks. The widespread use of RTOS in various domains 3.0 RELATED TECHNOLOGIES AND WORK makes security a critical aspect in their design. Security issues within a RTOS system pose a With advances in VLSI technology, embedded problem that could slow the performance of the systems have become very inexpensive. system. This is why most RTOS systems are Complex circuits can be achieved on chips of especially configured to handle a certain job. very small sizes. Therefore, embedded systems This way, the whole system is optimized to do can be found in devices ranging from aircraft one and only one task, and thus would excel at and military systems to industrial equipment, it. automobiles,