Presentation is loading. Please wait.

Presentation is loading. Please wait.

Philip K. McKinley Software Engineering and Network Systems Laboratory Department of Computer Science and Engineering Michigan State University RAPIDware:

Similar presentations


Presentation on theme: "Philip K. McKinley Software Engineering and Network Systems Laboratory Department of Computer Science and Engineering Michigan State University RAPIDware:"— Presentation transcript:

1 Philip K. McKinley Software Engineering and Network Systems Laboratory Department of Computer Science and Engineering Michigan State University RAPIDware: Adaptive Software for Critical Infrastructure Protection

2 Critical Infrastructures Examples:  Electric power grids  Telecommunication networks  Water systems  Nuclear facilities, hydroelectric dams  Command and control networks  Financial networks, and so on… Managed by distributed computing facilities, connected to the Internet Hence, they are at risk of cyber attack. The consequences could be catastrophic.

3 RAPIDware Project Five-year, $3.1M project in CSE SENS Laboratory Funded by U.S Office of Naval Research  Adaptable Software / Critical Infrastructure Protection Program  Outgrowth of Presidential Decision Directive 63 (May ’98) Goal: Software (middleware) that can protect itself from:  Cyber attack  Hardware and software component failures  Changing environmental conditions  Dynamic application/user requirements (e.g. security policies) RAPIDware supports:  5 CSE faculty members  10 graduate research assistants Middleware for “Internet Speed” development and evolution of applications must support:  Multiple dimensions of adaptability  Autonomous execution of middleware components  Dynamic composition of middleware services “Principled” methods (compiler/language support, code generation, reflection, run-time checks, etc) needed to help ensure reliability, correctness, reusability, security

4 RAPIDware Investigators Phil McKinley - distributed computing, network protocols, adaptive middleware, anomaly detection Kurt Stirewalt - software analysis, interactive systems, model checking Laura Dillon - formal methods for concurrent systems, real- time systems Betty Cheng - software engineering, formal methods, object-oriented development Sandeep Kulkarni - fault tolerance, security

5 What is Middleware? Interconnected Computer Networks Distributed Computer Applications MIDDLEWARE (CORBA, J2EE,.NET,…) Internet Protocols (TCP/IP)

6 Adaptive Middleware Adaptive middleware can manage nonfunctional aspects of the system in coordinated fashion:  actively monitor the system, execute security policies  provide fault tolerance for specified components  adapt to changing environmental conditions  manage energy consumption in battery-powered devices  insulate the application from device/network differences “Always On” systems  E.g., command and control, many critical infrastructure systems  require dynamic adaptation in ways not envisioned during development. Enables systems to Operate Through Attacks

7 RAPIDware Approach Adaptive middleware must support  Multiple dimensions of adaptability  Autonomous execution of middleware components  Dynamic composition of middleware services “Principled” methods  Automated software development (e.g., code generation)  Formal methods support for composition and adaptation Needed for reliability, correctness, security We focus on mobile computing systems  Problem is “harder” than in wired systems  Expected to dominate Internet access

8 Mobile Computing Testbed Multiple-cell wireless LAN Various laptop, handheld, and wearable computers

9 Isolating Adaptive Functionality APPLICATION LAYER observers responders Proxy node (e.g., desktop) Application Host computer (desktop) core middleware components Application Host computer (wearable) Application Host computer (palmtop) data paths MIDDLEWARE LAYER NETWORK LAYER

10 Adaptive Java Many adaptive middleware approaches involve  computational reflection  ability of a process to reason about (and alter) its behavior We developed Adaptive Java  Extension of Java programming language  Provides language-level support for adaptability Example use: Meta(morphic) sockets that can:  report behavior to intrusion detection system  insert forward error correction for wireless networks  change socket behavior to save power

11 MetaSocket Configuration Application or Middleware Base Code MetaSocket Layer To Network Adaptive Logic

12 MetaSocket Structure Application can insert and remove filters that manipulate the data stream Some base-class methods are occluded Socket Send- Socket InsertFilter RemoveFilter GetStatus close send filter with thread and buffer MetaSendSocket

13 Examples: Error Control and Component Auditing Adaptive Java makes it possible to change components dynamically. Effectively, any component can be made more robust, or more secure at run time. Nature of auditing can be determined after development. On-demand auditing may be especially useful to mobile systems.

14 Wired Network Wireless Network Trader Notifying event Refraction or transmutation Component Loader Decision Maker (DM) Information Event Mediator DM A B C Informer DM Decision Maker

15 Experimental Configuration Second source begins transmitting to multicast address during audio conversation Access Point Wireless iPAQ Receivers Audio Stream Legitimate Source... Malicious/errant Source

16 Adaptive Metasocket Behavior Loss thresholds set to 30% and 10%.

17 Detection of Second Source Second source starts at packet 349, detected at packet 379. Filter inserted automatically to remove “noise.”

18 Summary RAPIDware is an ONR-funded project in the CSE Dept. Addresses adaptive middleware to protect critical infrastructures from:  Cyber attacks  Component failures  Dynamic external conditions Particular focus on wireless, collaborative computing systems Adaptive Java  Programming language support for adaptability  Enables dynamic reconfiguration and auditing of components in deployed systems

19 Ongoing Work Adaptive Java and MetaSockets:  Dynamic auditing of components  Dynamic energy consumption management  Quality of service for wireless networks Higher-level languages for adaptability Middleware/Operating System cooperation for  Security  Energy management Anomaly detection using statistical methods Wireless network protocols (video, audio, data) Security and robustness of peer-to-peer networks

20 Potential Collaboration We are always looking for new research collaborators Security/robustness of mobile computing systems  Emergency services  Command and control  Medical applications Intrusion/anomaly detection and monitoring Control of:  Telecommunication networks  Water distribution systems  Power grids  Business/financial systems “Smart” physical infrastructures: buildings, bridges, dams, etc. Traceability of software development and usage for  Computer forensics?  Tracking intruders Cognitive/Decision-making processes

21 Related Papers P. McKinley, U. Padmanabhan, N. Ancha, “Experiments in composing proxy audio services for mobile users,” Proc. ACM/IFIP International Conference on Distributed Systems Platforms (Middleware’01), Heidelberg, Germany, Nov. 2001. P. K. McKinley, et al., Realizing multi-dimensional software adaptation,'' in Proceedings of the ACM Workshop on Self-Healing, Adaptive and self- MANaged Systems (SHAMAN), (New York), June 2002. E. Kasten, et al., “Separating introspection and intercession to support metamorphic distributed systems,” Proc. IEEE Workshop on Aspect- Oriented Programming for Distributed Computing Systems (AOPDCS’02), Vienna, Austria, July 2002. P. K. McKinley, S. Sadjadi, E. P. Kasten, and R. Kalaskar, “Programming language support for adaptable wearable computing,‘” in Proceedings of the Sixth International Symposium on Wearable Computers, Seattle, Washington, October 2002. Z. Yang, et al., “An aspect-oriented approach to dynamic adaptation,” in Proceedings of the ACM SIGSOFT Workshop on Self-Healing Systems (WOSS02) (Charleston, South Carolina), November 2002.

22 Acknowledgements U.S. Department of the Navy, Office of Naval Research, Grant No. N00014-01-1-0744. U.S. National Science Foundation grants: CDA- 9617310, NCR-9706285, CCR-9912407, EIA- 0000433, and EIA-0130724 This work was supported in part by:

23 Further Information Software Engineering and Network Systems Lab: www.cse.msu.edu/sens RAPIDware Project: www.cse.msu.edu/rapidware Email contact: mckinley@cse.msu.edu


Download ppt "Philip K. McKinley Software Engineering and Network Systems Laboratory Department of Computer Science and Engineering Michigan State University RAPIDware:"

Similar presentations


Ads by Google