Comments
Description
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