Securing Critical Software with Replication and Virtualization

Download Report

Transcript Securing Critical Software with Replication and Virtualization

Critical Software Security
Through Replication and
Virtualization
A Research Proposal
Dennis Edwards
Sharon Simmons
Arangamanikkannan Manickam
Original Work
Multi-Level Security Model Architecture
Secure national power distribution grid
Designed for “System after next”, “Beyond SCADA”
Supported by
Department of Energy
FSU – Center for Advanced Power Systems Research
July 9, 2009
NCA09 - BIOCOMS
2
Background
Combine ideas into new architecture
Software mutation – agent diversity
Computation replication – fault tolerance
Software voting – fault detection
Focus on strengthening security triad
Prevention : anticipate and thwart attacks
Detection : recognize penetrations
Correction : recover while limiting consequences
Evolve security to prevent / deter recurrence
July 9, 2009
NCA09 - BIOCOMS
3
Security Model
Hardware Protected
SCADA
network
Source
Communication
Computational
Agent
Mutation
Agent
Distribution/
Voting
Agent
Sensors &
Actuators
serial
Monitor/
Resurrection
Agent
Normal I/O
Replicated
Computational
Agent
Fall 2009 Showcase
Replicated
Computational
Agent
Replicated
Computational
Agent
UWF - Simmons
Control
Signals
4
Previous Results
 Computational agents




Mutated and replicated
Different random mutation for each
Prevents multiple Byzantine failures
Faults result in crash failures
 Distribution/Voting agent
 Replicate input to computation agents
 Combines output into majority decision
 Identifies faulty/failed computational agents
Fall 2009 Showcase
UWF - Simmons
5
Previous Results
 Communication agent
 Implements encryption, validation
 Only entrance into system
 Monitor/resurrection agent
 Monitors health of other agents
 Rebuilds faulty/failed agents
 Implemented in hardware
Fall 2009 Showcase
UWF - Simmons
6
Model Limitations
 Specialized prevention
 Buffer overflow attacks
 Software failures
 Designed for agent-based systems
 Dynamic port binding not supported
 Server processes not supported
 Operating system remains vulnerable
 Required hardware protection
 M/R agent is single-point-of-failure
Fall 2009 Showcase
UWF - Simmons
7
Proposed System
 Multi-layered security model
 Build from previous success
 Provides for replication and voting
 Replicated processes




Computationally equivalent
Executed on different virtual platforms
Platform targeted attack ineffective
Implementation targeted attack ineffective
 Platform weaknesses mitigated
 Failures isolated and identified
 Failed system recovered
Fall 2009 Showcase
UWF - Simmons
8
Proposed System
 Guest OS
 Assigned private IP address
 Monitors health of server processes
 Server processes
 Perform duties as if in isolation
 Results used as votes
 Host OS




Assigned public IP address
Uses NAT to map public  private Ips
Monitors health of guest OSes
Limites consequences of attack to Guest OS
Fall 2009 Showcase
UWF - Simmons
9
Proposed Model
network
Host OS
Communication
Interface
Virtual Machine
NAT
Server
Server
Server
Guest OS 1
Guest OS 2
Guest OS 3
Fall 2009 Showcase
UWF - Simmons
10
Prototype
 Host OS
 Macintosh OS X
 Virtual Machine
 Sun’s Virtual Box
 Guest OSes
 Windows XP
 Linux Fedora 10
 Solaris
 Server
 Apache web server (httpd)
 Each server on port 80 of private IP
Fall 2009 Showcase
UWF - Simmons
11
Prototype
 External communication
 Via communication interface
 Port 80 on well-known IP
 Specialized NAT replicated input (NAT now client)
 Responses from Apache
 Sent to NAT (client)
 NAT tallies votes and returns decision to real client
 Prototype status
 In experimentation/design phase
 Communication with dual servers
 Voting not yet implemented
Fall 2009 Showcase
UWF - Simmons
12
Demonstration Prototype
network
OS X
Communication
Interface
(Distribution & Voting)
VirtualBox
NAT
Apache
Apache
Apache
Windows XP
Linux F10
Solaris
Fall 2009 Showcase
UWF - Simmons
13
Summary
• Previous success with power distribution grid
• Known limitations of system
• Proposed system will
– Take advantage of multiple execution cores
– Use virtualization for system replication
– Provide distinct execution bases for each replicate
– Use voting to identify faulty components
– Recover from faults with no externally visible effects
– Contain consequences to virtual host
Fall 2009 Showcase
UWF - Simmons
14
Contact Information
Dennis Edwards
[email protected]
Sharon Simmons
[email protected]
Fall 2009 Showcase
UWF - Simmons
15