...

監査イベントで攻撃は予見可能

by user

on
Category: Documents
15

views

Report

Comments

Transcript

監査イベントで攻撃は予見可能
Copyright © 2013, OPC Council Japan, All Rights Reserved
Copyright © 2013, OPC Council Japan, All Rights Reserved
2
Copyright © 2013, OPC Council Japan, All Rights Reserved
3
Copyright © 2013, OPC Council Japan, All Rights Reserved
4
OPC-UA
OPC クラシック
MES
サーバー
MES システム
ewMII
CORBA
CORBA
ewMII
ewMII
PLC コネクタ
PLC コネクタ
OPC クライアント
OPC クライアント
ライン
PC
COM
COM
OPC サーバー OPC サーバー
OPC サーバー
S7 ドライバ ADS ドライバ
ADS ドライバ
イーサネット
PLC
イーサネット
PLC
イーサネット
PLC
Copyright © 2013, OPC Council Japan, All Rights Reserved
5
Specification
Certified
All
DA
46
861 (+10 :01%)
AE
0
324 (+18 :06%)
HDA
0
146 (+17 :13%)
21
145 (+20 :16%)
OPC .NET
0
22 (+02 :01%)
XML DA
0
91 (+05 :06%)
Batch
0
10 (+01 :11%)
DX
0
17 (+01 :06%)
UA
• かっこ内は2年前との比較
※2013年11月現在
Copyright © 2013, OPC Council Japan, All Rights Reserved
6
すでに運用中のOPCクラシック
発する脆弱性対策は?
Copyright © 2013, OPC Council Japan, All Rights Reserved
7
電動コント
ロール弁
現場計器
ボールバ
ルブ
配管
安全弁
フランジ
伝送器
ソケット
LG
1
LM
2
Tank2
TM
2
Valve4
LC1
Valve2
LG
1
TC1
Valve1
下部タンクのヒータで水を
温め,ポンプで上部タンク
へ供給する温水循環システ
ム
Valve3
FC
FM
名古屋工業大学御提供
H
PM
TM
1
”空焚き事故”は、
TC異常でのヒータ
の加熱継続とLC異
常による液面低下で
発生
Tank1
PUMP W
LM
1
センサ
[ LM1 LM2 TM1 TM2 PM FM ]
アクチュエータ [ V1 V2 H W ]
コントローラ [ LC1 TC1 FC ]
Copyright © 2013, OPC Council Japan, All Rights Reserved
TCとLCが同時に
サイバー攻撃
されないように
別ゾーンにして管理
8
名古屋工業大学御提供
OPC-DA(OPCクラシック)にはセキュリティー
機能は無い
OPC-DAの通信方式(COM-DCOM)は一
世代前のMicrosoftの通信技術 脆弱
OPC-UA(最新のIEC版)にはセキュリティー
機能があるが新規に実装する必要がある
Copyright © 2013, OPC Council Japan, All Rights Reserved
9
名古屋工業大学御提供
OPC-2のデーターを外部から
コントロールされ、
乗っ取りも認識出来ない
(攻撃デモ)コントローラが操作され、圧力上昇で
安全弁作動という事態が発生するものの
攻撃されたゾーンのSCADAでは変化観測されず
他のゾーンが生き残れば、
そこで検知可能
業務系
NW
192.168.1.0/24
192.168.11.0/24
制御系
NW
① インターネットから業務系ネットワークへ侵入
– Metasploitによるハッキング
• Nmapによる脆弱性スキャン
• 脆弱性をつくExploitによる攻撃
② 偵察
– 内部ネットワークの端末特定
– 脆弱性スキャン
– 脆弱性をつくExploitによる攻撃
③ クラッキング
– OPCサーバーの構成ファイルの改竄
– OPCサーバーの再起動
④ リモート操作と隠蔽による事故発生!
現場では、安全弁が吹き、パトライトが点灯するが、そのプラント
のコントロールルームでは、変化なし
(ただし、他のゾーンのSCADAでは変化を観測)
Gateway3
192.168.12.0/24
OPC2に侵入
操作・隠蔽
Copyright © 2013, OPC Council Japan, All Rights Reserved
10
すでに運用中のOPCクラシック
発する脆弱性対策は
Copyright © 2013, OPC Council Japan, All Rights Reserved
11
名古屋工業大学御提供
OPCクラシックをドメイン越えしたい
セキュリティー付で
OPC COM OPC COM
Server
Client
UA COM
Wrapper
UA COM
Proxy
制御系 LAN
DCOM
UA COM
Wrapper
UA COM
Proxy
OPC COM OPC COM
Server
Client
DCOM
SOAP/HTTP
or UA TCP
UA COM
Wrapper
UA COM
Proxy
OPC COM OPC COM
Server
Client
Copyright © 2013, OPC Council Japan, All Rights Reserved
12
OPC-UAには、クライアントからリード/ライトする方法と
サーバーのデータ変化に基づいてデータを配信する
データ収集のルーティング
データーリード&ライト(クライアント主体)
クライアントがサービス要求
①OPC-DAクライアント⇒ OPC-UAプロキシ
② OPC-UAプロキシ⇒OPU-UAラッパー
③OPC-UAラッパー⇒OPC-UAサーバー
サーバーがサービス
④OPC-UAサーバー⇒OPC-UAラッパー
⑤OPC-UAラッパー⇒OPC-UAプロキシ
⑥ OPC-UAプロキシ⇒OPC-DAクライアント
サブスクリプション(サーバー主体)
⑦OPC-UAサーバー⇒OPC-UAラッパー
⑧ OPC-UAラッパー⇒OPC-UAプロキシ
⑨OPC-UAプロキシ⇒OPC-DAクライアント
③
④
②
⑦
⑧
⑤
②
①
⑤
⑥
検証の対象
ラッパーとプロキシの追加処理
⑧
⑨
Copyright © 2013, OPC Council Japan, All Rights Reserved
13
OPC実装の多様性
HTTPではない
構成×アイテム数×アクセス方式×開発言語×マシンスペック×ネットワーク環境=無限
引用 IEC61784
Copyright © 2013, OPC Council Japan, All Rights Reserved
14
UAがインストール出来ない
 Win7 Win XP OS構造の違い
OPC-DAのVer2.02でなかった 日本製A社
OPC会員脱会 最新でない IOP非参加
ネイティブなコネクションとUAコネクションの混在 海外B社
SCADAが高機能で設定に手間取る 海外C社
開発の障害
ドキュメントが見つけられない
C#のSDKが無い 見つからない
Copyright © 2013, OPC Council Japan, All Rights Reserved
15
セキュリティー評価
Copyright © 2013, OPC Council Japan, All Rights Reserved
16
Network
Switch
#2 Achilles
DA Saver
UA Wrapper
Saver VMware
PC VMware
脆弱性評価ツール
2種使用
FW
UA Client
HUB
#1 Nmap
評価対象 UA Wrapper
HUB
HUB
PLC
PLC
UA TCP
Copyright © 2013, OPC Council Japan, All Rights Reserved
17
OPC Member Confidential
開放ポート
#1Nmap
135
Microsoft RPC,
139
NetBIOS-SSN
445
NetBIOS-SSN
4840
4843
5357
9980
48041
48042
48400
48404
49000
49001
49002
49003
49004
49005
51210
51211
51212
51213
52601
unknown
unknown
HTTP API
unknown
unknown
HTTP API
unknown
HTTP API
unknown
unknown
unknown
unknown
unknown
unknown
unknown
HTTP API
unknown
HTTP API
HTTP API
Microsoft
Microsoft
Microsoft
Microsoft
Microsoft
Microsoft
#2 Achilles
実際のサービス名
Microsoft
DCOM (Microsoft RPC)
RPCPROFINET
NetBIOS-SSN NetBIOS
Microsoft-DS SMB (Microsoft-DS)
OPCUA
OPCUA-TLS
unknown
unknown
unknown
unknown
unknown
unknown
unknown
unknown
unknown
unknown
unknown
unknown
unknown
unknown
unknown
unknown
unknown
UA Local Directory Server (OPC.TCP)
UA Local Directory
Server Confidential
(HTTP)
OPC Member
WinSystem(プリンタ・スキャナとの通信ポート)
DxpLink(OPC サーバの情報通信ポート)
UA Global
Discovery
Server Confidential
(OPC.TCP)
OPC
Member
UA Global Discovery Server (HTTP)
OPC UA COM Wrapper (OPC.TCP)
OPC UA COM Wrapper
(HTTP) Confidential
OPC Member
DCOM (PLC との通信用)
同上
同上
同上
同上
同上
OPC UA Sample Server (OPC.TCP)
OPC UA Sample Server (HTTP)
OPC Server
Member
Confidential
OPC UA OPC
Sample
(HTTPS)
Member
Confidential
OPC UA Sample Server (NoSecurityHTTP)
OPC Local Discovery Server (HTTP)
Copyright © 2013, OPC Council Japan, All Rights Reserved
18
評価項目と途中経過
クライアントアプリケーション
Remote サービスの呼び出し
サーバーアプリケーション
API 呼び出し(同期 or 非同期)
API 呼び出し
API 呼び出し
クライアント API
サーバ API
Message Encoding
Message Encoding
Encodeされたデータ
Byte array / XML Data
Secure Channel
暗号化されたデータ
Transport
Wire
Secure Channel
Transport
データ転送
(データは暗号化された状態)
Copyright © 2013, OPC Council Japan, All Rights Reserved
UA Stack
UA Stack
API で定義されたデータ構造
機能名
説明
Attribute Services UAサーバーが公開している情報モデル(Node)にアクセスするサービス
を提供します。
Discovery
Services
UAサーバーを外部に公開または検索するサービスを提供します。
Monitored Item
Services
特定のNodeを監視するサービスを提供します。
Security
特定のクライアントとの接続を可能にします。
・ユーザー名+パスワード
・証明書(Certificate )
Session Services
UAサーバーとのセッションを確立するサービスを提供します。
Subscription
Services
監視しているNodeの値が変更したときにクライアントへ通知するサービ
スを提供します。
View Services
アドレス空間(AddressSpace)のサブセットを提供するサービスです。
Copyright © 2013, OPC Council Japan, All Rights Reserved
20
セッション毎の認証情報
メッセージの最小化
開示情報の最小化
メッセージ妥当性の検
署名
暗号化
監視
権限
認証
対策
システム
脅威
メッセージの洪水
✔
✔
可用性
✔
不正なメッセージ
✔
Availability
✔
サーバーの分析
脅威
✔
セッションの乗っ取り
✔
偽サーバー
✔
✔
✔
ユーザー証明情報の盗難
✔
盗聴
✔
完全性
Integrity
機密性
Confidentiality
メッセージの捏造
✔
メッセージの改ざん
✔
不正な再送
✔
✔
✔
Copyright © 2013, OPC Council Japan, All Rights Reserved
21
提供
【販売代理店:日本コーネット・テクノロジー株式会社】
Copyright © 2013, OPC Council Japan, All Rights Reserved
22
【販売代理店:日本コーネット・テクノロジー株式会社】
テスト項目
#2 Achiless ATSを使用
・セッションの壁が破れず
・セキュアチャンネルを教えてDos攻撃
今回は48400を使用
接続が切れることが確認された
⇒UA Ver 1.02 にて解決済み
OPC-UA ラッパー仕様変更
・証明書認証やアカウント認証を
無効に設定し評価を継続
・結果はすべてPasssed
Passed
: 脆弱性が検出されなかった
obstruction: 異常が見つかった
Incomplete: テスト条件が満たせず
実行出来ない
認証有効
OPC UA TCP Massage Grammar
Passed
OPC UA Secure Conversation Header Grammar
Passed
OPC UA Service Header Grammar
Passed
OPC UA Service resource Exhaustion Storm
Passed
OPC UA Incomplete CreateSessionRequest Resource
Exhaustion
Passed
OPC UA Secure Channel Exhaustion
obstruction
OPC UA Discovery Service Grammar
Passed
OPC UA Incomplete GetEndPointsRequest Resource
Exhaustion
Passed
OPC UA Secure Channel Service Grammar
Passed
認証無効
OPC UA Session Service Grammar
Incomplete
Passed
OPC UA Session Exhaustion
Incomplete
Passed
OPC UA Node Management Service Grammar
Incomplete
Passed
OPC UA View Service Grammar
Incomplete
Passed
OPC UA Browse Request Loop
Incomplete
Passed
OPC UA Query Service Grammar
Incomplete
Passed
OPC UA Attribute Service Grammar
Incomplete
Passed
OPC UA Method Service Grammar
Incomplete
Passed
OPC UA Monitored Item Service Grammar
Incomplete
Passed
OPC UA Monitored Item Exhaustion
Incomplete
Passed
OPC UA Subscription Service Grammar
Incomplete
Passed
OPC UA Subscription Exhaustion
Incomplete
Passed
Copyright © 2013, OPC Council Japan, All Rights Reserved
23
Confidential
Copyright © 2013, OPC Council Japan, All Rights Reserved
24
Confidential
Copyright © 2013, OPC Council Japan, All Rights Reserved
25
Copyright © 2013, OPC Council Japan, All Rights Reserved
26
制御を知る人だから出来る
Copyright © 2013, OPC Council Japan, All Rights Reserved
27
監査イベントで攻撃は予見可能
監査イベントの仕様が規定
サーバ API
Message Encoding
Secure Channel
暗号解読
ポートサーチ
Transport
データ転送
UA Stack
UA
クライアント
UA
サーバー
UA
クライアント
UA
サーバー
UA
クライアント
UA
サーバー
A
イベント ID : Z
<クライアントAの処理を記録>
イベント ID : Y
クライアント名 : A
クライアント内 登録情報 ID : Z
<ゲートウェイBの処理を記録>
B
C
D
Copyright © 2013, OPC Council Japan, All Rights Reserved
イベント ID : X
クライアント名 : B
クライアント内 登録情報 ID : Y
<ゲートウェイCの処理を記録>
イベント ID : W
クライアント名 : C
クライアント内 登録情報 ID : X
<サーバーDの処理を記録>
ご清聴ありがとうございました。
Copyright © 2013, OPC Council Japan, All Rights Reserved
Fly UP