ARMORE Applied Resiliency for More Trustworthy Grid Operation - - PowerPoint PPT Presentation

armore
SMART_READER_LITE
LIVE PREVIEW

ARMORE Applied Resiliency for More Trustworthy Grid Operation - - PowerPoint PPT Presentation

ARMORE Applied Resiliency for More Trustworthy Grid Operation Research(Update Tim$Yardley yardley@illinois.edu About Me Tim&Yardley,&Associate&Director&of&Technology


slide-1
SLIDE 1

ARMORE

Applied Resiliency for More Trustworthy Grid Operation

Research(Update

Tim$Yardley yardley@illinois.edu

slide-2
SLIDE 2

2

About Me

  • Tim&Yardley,&Associate&Director&of&Technology
  • Information&Trust&Institute,&University&of&Illinois&

Urbana>Champaign

  • Old&school&hacker,&Long&time&practitioner,&Current&

researcher

  • @timyardley,&yardley@illinois.edu
slide-3
SLIDE 3

3

UIUC’s Information Trust Institute

Providing$World6Wide$Excellence$in$Information$Trust$and$Security

Institute Vision: Trust&in&Complex&Systems Institute Personnel: Core&faculty&from&CS&and&ECE 90+&faculty,&28&departments,&11& colleges Primary Research Themes

  • Power Grid
  • Evaluation
  • Data Science
  • Systems and Networking

Background

  • Since 2004 startup ITI has

won $100M+ in research funding

  • Solutions for societal and

industrial problems

  • Major corporate partnerships
  • Led by the University of

Illinois College of Engineering

slide-4
SLIDE 4

4

Smart Grid Security Efforts @ Illinois

Highlighted) Projects

Smart)Grid)Subprogram (~$15M)effort)across)5)years)

Cybersecurity,)Microgrids,)DERs,)and)HANs

  • Drive)the)design)of)a)more)secure,)resilient,)and)safe)electric)power)

infrastructure

  • $7.5M)NSF)center)(2005)– 2010),)$18.8M)DOEROE)(CEDS))&)DHS)center)

(2010)–2015)

  • University)of)Illinois,)Washington)State,)Dartmouth,)Arizona)State

Trustworthy)Cyber)Infrastructure)for)the)Power)Grid ~$26.3M)effort)across)10)years Illinois)Center)for)a)Smarter)Electric)Grid(~$5M)effort)across)5)years)

  • Validation) of)IT)and)control)aspects)of)the)Smart)Grid
  • Operates) facilities)equipped)with)HW/SW)to)aide)in)the)validation)of)

emerging)smart)grid)systems

  • Focus)on)both)power)and)cyber)related)issues

Policy)Based)Configuration)(PBCONF) Software)Defined)Networking Applied)Resiliency)for)More) Trustworthy)Grid)Operation) (ARMORE) Collaborative)Defense)for)T&D) Devices)Against)Attack)(CODEF)

Centers

Assured)Cloud)Computing (~$6M)effort)across)6)years)

  • Leveraging)trustworthy)cloud)computing) for)critical)infrastructure

Science)of)Security)Systems (~$8.5M)effort)across)4)years)

  • Resiliency,)security,))and)trust)in)complex)engineered) systems

CyberRPhysical)Modeling)and)Analysis) for)a)Smart)and)Resilient)Grid)

…)and)many)more

slide-5
SLIDE 5

5

Overview

slide-6
SLIDE 6

6

Motivation

  • Industrial&Control&Systems&(ICS)&protocols&lack&

security&protection

  • Security&bolt>ons are&typically&implemented&via&

firewalls&and&VPNs

  • Little&if&any&visibility&as&to&what&these&systems&are&

actually&doing

  • Any&security&extensions&have&a&long>tail&

implementation&path&(or&never&at&all)

  • Deployments&are&often&much&more&costly&than&the&

capital&expenditures

slide-7
SLIDE 7

7

What is ARMORE?

  • Security&appliance&that&aims&to
  • Increase$visibility$and$awareness$on$ICS$networks
  • Augment$insecure$protocols$with$security$features
  • Inspect$and$(optionally)$enforce$defined$policies
  • Minimize$deployment$costs$while$creating$a$feasible$

adoption$path

slide-8
SLIDE 8

8

How ARMORE Works

  • Passive
  • Span$port
  • Transparent
  • Inline$inspection,$optional$enforcement
  • Encapsulated
  • Inline$inspection,$encapsulated$transfer$with$optional$

encryption,$optional$enforcement

slide-9
SLIDE 9

9

What do you get?

  • Passive
  • Network$visibility$and$intelligence
  • Transparent&operation
  • Passive$plus…
  • Communication$endpoints$operate$without$any$changes
  • Optional$policy$enforcement
  • Encapsulated
  • Transparent$plus…
  • Encapsulation$and$Encryption
  • Security$augmentation$(access$control/filtering)
  • Optional$policy$enforcement
  • Fault$tolerance$and$resiliency$options
  • Other&value&adds
  • Enhanced$access$control
  • Payload$inspection
  • Data$processing$and$analysis
slide-10
SLIDE 10

10

ARMORE Conceptual Diagram

slide-11
SLIDE 11

11

In deployment…

slide-12
SLIDE 12

12

System Realization

Work$by$Steve$Granda

slide-13
SLIDE 13

13

ARMORE Software

  • OS:&Debian Wheezy&7.8&x64
  • Modified$3.12.0$Linux$Kernel
  • ARMORE&Proxy
  • Abstracted$middleware$encapsulator
  • Bro
  • Intrusion$Detection$System
  • NetMap
  • Kernel$Module$for$High$Speed$Packet$I/O
  • Management/Configuration
  • ZMQ
  • Middleware$layer
  • CurveZMQ
  • Authentication$and$Encryption$protocol$for$ZMQ
slide-14
SLIDE 14

14

Other ARMORE Support

  • BrocolliSharp
  • Bro>statsd
  • Rsyslogd
  • Etckeeper
slide-15
SLIDE 15

15

ARMORE Node installation

  • Original&installation&was&via&a&large&shell&script&which&

compiled&and&installed&software&from&source.&

  • Current&installation&is&with&our&debian repository
  • Allows&easier&dependency&

checking&and&updating&of& individual&components.

  • apt6get$install$armorenode
  • apt6get$update$armorenode
slide-16
SLIDE 16

16

Middleware

Work$by$Chris$Drew$and$Steve$Granda

slide-17
SLIDE 17

17

Scope in ARMORE

slide-18
SLIDE 18

18

ARMORE Proxy

  • Abstract&class&for&middleware&library&inclusion
  • ZeroMQ implemented$with$Curve$security
  • DDS$stubbed$but$not$implemented
  • Reason:$Open$source$libraries$are$currently$lacking$security$

extensions

  • Abstract&packet&capture&interface
  • PCAP
  • Netmap
  • Many&options&for&logging
  • MAC&address&translation&mode
slide-19
SLIDE 19

19

ZMQ

  • Asynchronous&messaging&library
  • Allows&many&types&of&communication&from&intra>process&to&

WAN

  • Removes&need&for&message&broker
  • API&values&simplicity&over&functionality
  • Encourages&user&to&implement&functionality&as&needed&
  • Available&in&over&30&languages&on&multiple&platforms
  • Open&source
  • Very&active&community&provides&extensive&support&for&

developing&and&debugging

  • Existing&documentation&provides&extensive&instruction&on&

various&communication&patterns

slide-20
SLIDE 20

20

ZMQ N Patterns

  • Provides&ability&to&create&many&

communication&patterns

  • ARMORE&is&utilizing&a&dealer/router&

pattern

slide-21
SLIDE 21

21

ZMQ Dealer/Router Pattern

slide-22
SLIDE 22

22

DDS vs. ZMQ

DDS

  • Commercial$Product
  • Desired$functionality$

built$in

  • Steep$learning$curve
  • Sightly$more$

resource$heavy

  • ~4$languages
  • Restricted$to$

pub/sub

ZMQ

  • Open$source
  • Some$functionality$

may$need$to$be$ written

  • Easy$to$learn
  • Lightweight
  • 30+$languages
  • Flexible$to$multiple$

patterns

slide-23
SLIDE 23

23

System Administration

Work$by$Chris$Drew

slide-24
SLIDE 24

24

Web API

  • Front&end&connects&UI&with&ARMORE&node&internals
  • Read/set$configuration
  • Subsystem$status
  • Node$topology
  • Display$data$for$user
  • Statistics
  • Logs
  • Alerts
  • Communicate&with&back&end&via&JSON&messages
  • Testing
  • Janus$6 Rest$API$server
  • Bottle$6 Python$Web$Framework
slide-25
SLIDE 25

25

Example Endpoints

  • armore/config/zmq/5&(NOTE:&node&id&5)

{ "Encryption":$True, "Reliability":$"Best$Effort", "Durability":"Transient Local”$ }

  • armore/notifications/bro

{"eventIds":$[{ 12:${ "time":$"7/13/2013$12:45:01", "srcNode":$"Node_2”, .... 58:${ "time":$"9/3/2013$12:45:01", "srcNode":$"Node_91", … }]}

slide-26
SLIDE 26

26

Dynamic and Smart Traffic Analyzer for Smart Grid

Work$by$Wenyu Ren

slide-27
SLIDE 27

27

Introduction

  • What&is&it?
  • An$analyzer$that$provides$dynamic$and$intelligent$analytics$for$SCADA$

protocols,$increasing$visibility$into$the$system$behavior

  • What&is&it&using?
  • Bro's$scripting$engine
  • What&protocols&does&it&support&at&the&moment?

! DNP3 ! Modbus ! Extensible$to$any$other$protocol

slide-28
SLIDE 28

28

Structure

Network Traffic

Traffic Statistics Collector Traffic Statistics Counter Anomaly Detection Framework Pattern-based Identity Recognition

slide-29
SLIDE 29

29

Traffic Statistics Collector

  • Input:&network&traffic
  • Output:&two&kinds&of&events

" item_seen:$instantaneous,$item$contains$incomplete information$of$the$ packet " item_gen:$delayed,$item$contains$complete information$of$the$packet

slide-30
SLIDE 30

30

Traffic Statistics Collector

Network Traffic Traffic Statistics Collector

Traffic Statistics Counter Pattern-based Identity Recognition Log item_seen item_gen

slide-31
SLIDE 31

31

Traffic Statistics Collector

  • Trace:&synthetic&Modbus&traces

Subject Value

Average'Packet'Interval 6ms'876us Average'Burst'Interval 1s'824ms Average'Burst'Length 32 Total Valid'Time 1h'2min Total'Packet'Number 60227

slide-32
SLIDE 32

32

Traffic Statistics Collector

  • 5&level

Total&Runtime

slide-33
SLIDE 33

33

Traffic Statistics Collector

  • 5&level
slide-34
SLIDE 34

34

Traffic Statistics Collector

  • 3>4&level

Total&Runtime

slide-35
SLIDE 35

35

Traffic Statistics Collector

  • 3>4&level

4&level 3 level

slide-36
SLIDE 36

36

Traffic Statistics Collector

  • 1>2&level

Total&Runtime

slide-37
SLIDE 37

37

Traffic Statistics Collector

  • 1>2&level

2 level 1&level

slide-38
SLIDE 38

38

Traffic Statistics Collector

  • Total&Runtime
slide-39
SLIDE 39

39

Traffic Statistics Counter

  • Multi>level&Statistics
  • Data&Structure:&Tree&of&depth&6

Level Subject 1 Sender 2 Receiver 3 Protocol 4 Function 5 Target

Function&Name Request&or&Response Response&Ratio&(if&request) Response&Delay&(if&request)

slide-40
SLIDE 40

40

Traffic Statistics Counter

  • Item&process&time&T5 is&calculated&per&item_seen event.&We&further&add&all&

the&item&process&time&according&to&the&same&packet&to&calculate&a&total&item& process&time&per&packet&T5’

slide-41
SLIDE 41

41

Traffic Statistics Counter

  • Time&flow&comparison&of&the&collector&when&running&different&programs
slide-42
SLIDE 42

42

Traffic Statistics Counter

  • Total&item&process&time&per&packet&with&different&number&of&levels

Subject Number Sender 8 Receiver 8 Protocol 1 Function 262 Target 37

slide-43
SLIDE 43

43

Traffic Statistics Counter

  • Aggregation&time&with&different&number&of&levels&and&different&aggregation&

period&Tp Subject Number Sender 8 Receiver 8 Protocol 1 Function 262 Target 37

slide-44
SLIDE 44

44

Anomaly Detection Framework

  • Each&logging&of&traffic&statistics&will&generate&a&data&structure&like&a&B>tree.&

Level 5 Level 4 Level 3 Level 2 Level 1 Level 0

Root Sender1 Receiver1 Protocol1 Function1 Target1 Receiver2 Protocol2 Function2 Target2 Sender2 Receiver3 Protocol3 Function3 Target3 Target4

Count Children[] Each Node:

Count: Number of events represented by this node which happened in this logging period Children[]: Pointers to children of this node

slide-45
SLIDE 45

45

Anomaly Detection Framework

" SCADA&traffic&is&periodic " May&vary&in&short&time,&but&has&a&pattern&over&time. " Construct&“normal”&tree&and&use&it&as&a&criterion " When&to&send&notice

Treei Treei+1 Treei+2 …&Treei+k Treei+k+1 Treenormal

Unseen Node Threshold Check Send Notice

slide-46
SLIDE 46

46

Anomaly Detection Framework

  • Anomaly&detection&time&with&different&number&of&levels&and&different&

aggregation&period&Tp Subject Number Sender 8 Receiver 8 Protocol 1 Function 262 Target 37

slide-47
SLIDE 47

47

PatternNBased Identity Recognition

slide-48
SLIDE 48

48

PatternNBased Identity Recognition

  • Time&flow&comparison&of&the&collector&when&running&different&programs
slide-49
SLIDE 49

49

Example Uses of Analytics

  • If&one&can&inspect&the&communications,&one&can&
  • bserve&patterns&and&behaviors
  • E.g.,$DNP3$SBO$message,$with$affirmative$response…
  • Probably$a$relay
  • With&inspection,&one&can&then&enforce
  • What’s&going&on&in&your&network?
  • Future&planning
  • Encryption
  • Fault>tolerance
slide-50
SLIDE 50

50

System Testing

Work$by$Chris$Drew$and$Steve$Granda

slide-51
SLIDE 51

51

Physical Test bed Overview

slide-52
SLIDE 52

52

Proxy Testing Procedures

  • With&the&armoreconfig service&running&on&armorenodes we&generate&

traffic&with&iperf on&the&blue&node&to&the&red&node. Iperf –c&192.168.2.15&–i 1

  • In&the&above&example&we’ll&listen&for&generated&traffic&with&tcpdump
  • n&red&node:

tcpdump –i eth0

slide-53
SLIDE 53

53

Testing Procedures

  • Once&the&ARMORE&Nodes&are&configured&we&use&the&pkt>gen&script&

to&send&data&on&a&netmap pipe:& ./pkt6gen$–i netmap:eth0}0$–f$rx

  • Anything&listening&on&netmap pipe&eth0}0&should&be&able&to&

transparently&receive&data.&

slide-54
SLIDE 54

54

Server Room

slide-55
SLIDE 55

55

slide-56
SLIDE 56

56

SCADA/ICS Testing

  • DNP3&and&Modbus&Protocol&Test&Harnesses
  • Will$generate$typical$traffic$and$verify$back$and$forth$

connectivity

  • Leveraging$open$stacks$for$implementation
  • Might$also$be$able$to$leverage$compliance$testing$suites
slide-57
SLIDE 57

57

ModBus Traffic Visualization

slide-58
SLIDE 58

58

Future Work

  • Example&policy&creation
  • And$“policy$builder”
  • Enforcement&actions
  • iptables hooks
  • More&advanced&analytics&processing
  • Smarter$anomaly$detection
  • Passive$device$profiling$and$determination
  • Network$mapping
  • Integration&with&Debian 8&Jessie&x64
  • More$testing$needs$to$be$done$with$systemd$and$4.0$Linux$Kernel$before$

pushing$to$our$repository.$

  • Bro/Broker
  • Broccoli$is$being$phasing$out$and$will$be$replaced$by$Broker.$
  • Visualization
  • Integration$of$web$base$monitoring$with$bro6statsd to$aid$in$monitoring$

traffic$of$an$ARMORE$node.$

slide-59
SLIDE 59

59

Interested?

yardley@illinois.edu