YASIR: A Low-Latency, HighIntegrity Security Retrofit for Legacy SCADA Systems Patrick P. Tsang and Sean W. Smith Department of Computer Science Dartmouth College NH 03755 USA Dartmouth Computer Science Technical Report TR2007-603 Presented by Jeremy Lewis

Research Problem ●







Legacy SCADA systems need to be secured against attackers but rely on insecure protocols Replacing the systems is not cost efficient as most systems are intended to last at least 20 years Bump-in-the-wire(BITW) retrofits for SCADA systems are one method of achieving a higher level of security Current BITW retrofits are not adequate for time critical systems, or do not provide adequate security

Hypothesis By using the native error detection in protocols like MODBUS and DNP3, in conjunction with encryption, authentication, and sequencing, we can build a BITW retrofit that provides a high level of security, confidentiality, and authenticity, while keeping any added latency to a minimum

Assumptions ●

The underlying SCADA protocol must contain error checking that is enforced, and is one of two types –

Type 1: The protocol appends a CRC to every frame, and checks this against what it receives and drops the frame if the CRC is incorrect



Type 2: The frame has a header that gives the length of the frame, if the header length and the frame length do not match up, the frame is discarded

Related Works ●





The SEL-3021 Serial Encrypting Transceiver, Schweitzer Engineering laboratories

The American Gas Association's SCADA Cryptographic module

Pacific Northwest National Laboratory's Secure SCADA Communications Protocol

Related Works

Design ●

YASIR – Yet Another Security Retrofit

Confidentiality ●

The encryption method chosen for YASIR is AES-CTR using 128 bit shared keys between transmitter and receiver



The keys are to be changed on a regular basis



A nonce is needed for this mode of AES

Authentication ●





The HMAC-SHA-1-80 is calculated using a 160 bit shared key Rather than operate directly on the frame, the HMAC is computed from the SHA-1 hash of the encrypted frame To avoid replay attacks, a 4 byte sequence number is added towards the end of the frame

Transmission On input of an incoming frame F = S || H || P || E, the YASIR Transmitter T does the following:

1. Output the corresponding transformed frame ~F = S||CTXT||E||mac||seq||E, where –

CTXT = EncryptSK(SEQT, H||P),



mac = HMACHK(Hash(CTXT||SEQT), and



seq = SEQT

2. Increment SEQT by 1.

Reception On input a transformed frame ˜F' = S||CTXT'||E||mac'||seq'||E, the YASIR Receiver R does the following: 1. Compute H'||P' = EncryptSK(SEQR,CTXT'), and mac'' = HMACHK(Hash(CTXT')||SEQR) 2. (Case I.) If mac' = mac'', output the corresponding original frame F' = S||H'||P'||E, and increment SEQR by 1 3. (Case II.) Otherwise, (a) Output a malformed frame F'' = S||H'||P'||err||E , where err is any octet-string such that, in the case of Type-I protocols, CRC(F00) is invalid, or, in the case of Type-II protocols, the length of F00 is different from what is indicated in H0.

(b) If seq0 > SEQR and mac0 = HMACHK(Hash(CTXT0)||seq0), assign seq0 + 1 to SEQR.

Validation

Result ●





Latency incurred is 10+2te byte-times, with te typically less than 4 Confidentiality is guaranteed as long as the keys are kept secret Integrity is guaranteed as long as AES-CTR and SHA1-80 are secure

Future Works ●





A micro-controller based prototype was in development Predictive YASIR extends this concept to lower latency even more Would like to see an implementation

Conclusion ●





Presents a clear, well thought out solution for adding protection to legacy SCADA Does not defend against direct compromise of a node Some of the reasoning is not explained and must be inferred

YASIR: A Low-Latency, High- Integrity Security Retrofit ...

On input a transformed frame ˜F' = S||CTXT'||E||mac'||seq'||E, the YASIR Receiver R does the following: 1. Compute. H'||P' = EncryptSK(SEQR,CTXT'), and.

293KB Sizes 0 Downloads 214 Views

Recommend Documents

No documents