産業制御システムのセキュリティ技術(PDF:499KB)

セキュリティ
産業制御システムの
セキュリティ技術
キーワード
平田敏樹
Toshiki Hirata
アプリケーションセキュリティ,静的解析,電子署名,通信制限,通信秘匿
社会的な重要性から,産業制御システムはインターネットに
概 要
接続されずにローカルネットワークで運用されることが多かっ
た。近年のクラウドコンピューティング技術の発展で,産業制御
システム構成ツール
アプリケーション構成
電子署名・TLS鍵
デプロイポリシー
システム構造
ポリシー
ライブラリ
アプリケー
制御
システム ションA
アプリケー
ションE
アプリケー
ションD
アプリケーション
コード
アプリケー
ションB
システムをインターネットに接続し,外部システムと連携する
ことによって,様々な付加価値を得ることができるようになっ
た。外部ネットワークと産業制御システムを接続することで,
新たなセキュリティリスクが生み出されることになり,産業制
アプリケー
ションC
開発したセキュリティ技術の概要
御システムへのセキュリティ対策の重要性は高まっている。
本技術は,制御システムソフトウェアやシステム構成の改ざ
んに対応するために開発したセキュリティ技術である。制御シ
ステムを構成するアプリケーションの完全性と通信の機密性を
保証し,不正使用や意図しない誤使用からシステムを防御する。
1 ま え が き
産業制御システムのセキュリティインシデント
本稿では,主に制御システムソフトウェアやシス
テム構成の改ざんに対応するために開発したセキュ
リティ技術を紹介する。
は,年々増加している。2010年に海外で発生したス
タックスネットは,産業制御システムに対する標的
型攻撃として注目を集めた。
クラウドコンピューティング技術の発展で,近年
の産業制御システムはインターネットに接続し,外
2 セ キ ュ リ テ ィ 技 術 の 概 要
開発したセキュリティ技術は,以下の5つの要素
から構成される。
部システムと連携して稼働する事例が増えつつあ
る。また産業制御システムは,汎用のOS・ソフト
42
2.1 コード検証ツール
ウェア・プロトコルを使用して構築されるように
アプリケーションコード,ライブラリに対して静的
なった。これらの点から,産業制御システムへのセ
解析を行うツールである。静的解析では,アプリケー
キュリティ対策の重要性は高まっている。
ションごとに定義された使用可能な関数リストを用
当社はNIST Special Publication 800−83 ⑴を参
いる。ソフトウェアのぜい弱性につながるOSの関数
考に,起こりうるセキュリティインシデントを分析
呼び出しや,ライブラリの関数呼び出しを制限する
し,対策となるセキュリティ技術の研究開発を進め
役割がある。コード検証ツールは,アプリケーショ
ている。
ンに限られた関数のみを使用させることで,アプリ
明電時報 通巻 347 号 2015 No.2
ケーションのぜい弱性を作り込まないようにする。
階目(第 1 図 ②)ではデプロイ仕様書,3段階目
(第 1 図 ③)では電子署名と TLS(Transport
2.2 デプロイ可能なアプリケーション
Layer Security)通信に使用する
をアプリケー
デプロイ可能なアプリケーションとは,アプリ
ションに組み込む。システム構造仕様書には,アプ
ケーションに様々なポリシー・認証情報・設定情報
リケーションの通信先の定義情報・通信種別などの
を付加し,一つにまとめたものである。本技術を用
情報が含まれている。またデプロイ仕様書には,ア
いる制御システム内で,唯一起動できるアプリケー
プリケーションを本番環境に展開する時に必要にな
ションの型となる。
る具体的なホスト設定情報が含まれている。
デプロイ可能なアプリケーションは,アプリケー
第 2 図にデプロイ可能なアプリケーションの構成
ションコード・ライブラリを,システム設定に関す
を示す。システム構成ツールに入力する仕様書を使
る仕様書とともにシステム構成ツールに入力するこ
用して,セキュリティポリシーが作成され,アプリ
とで作成される。
ケーションに組み込まれている。また電子署名はデ
第 1 図にデプロイ可能なアプリケーションの作
プロイ可能なアプリケーションが不正に改ざんされ
成順序を示す。作成にはシステム構成ツールを用い
ていないことを確認するために組み込まれている。
る。システム構成ツールは3段階の作業を行う。1段
階目(第 1 図 ①)ではシステム構造仕様書,2段
2.3 アプリケーション起動機能
第 3 図にアプリケーション起動機能の概要を示
す。アプリケーション起動機能は,デプロイ可能な
①
システム構造
仕様書
アプリケーションコード,
ライブラリ
システム構成
ツール
アプリケーション
テンプレート
②
③
を使用せず,デプロイ可能でないアプリケーション
電子署名
TLS鍵
の起動は行われない。
第 4 図にアプリケーション起動機能の順序を示
デプロイ可能な
アプリケーション
デプロイ
仕様書
す。アプリケーション起動機能は,デプロイ可能なア
プリケーションに含まれている電子署名を検証し,
アプリケーションの内容が変更されていないことを
第 1 図 デプロイ可能なアプリケーションの作成順序
システム構成ツールを用いてデプロイ可能なアプリケーションを作成する
順序を示す。
確認する。電子署名の検証後,アプリケーション起
動機能はデプロイ可能なアプリケーションを新規に
展開し,アプリケーションが起動できる状態にする。
デプロイ可能な
アプリケーション
電子署名・TLS鍵
デプロイポリシー
システム構造ポリシー
デプロイ仕様書
を基に作成され
るポリシー
ライブラリ
アプリケーションコード
第 2 図 デプロイ可能なアプリケーションの構成
システム構成ツールで作成したデプロイ可能なアプリケーションの構成を
示す。
べてのアプリケーションの起動は,アプリケーショ
ン起動機能を通して行われる。システム構成ツール
システム構成
ツール
システム構造仕
様書を基に作成
されるポリシー
アプリケーションを起動させるために使用する。す
アプリケーションA
を起動する
アプリケーション
起動機能
デプロイ可能でない
アプリケーションA
(a)デプロイ可能でないアプリケーションの場合
アプリケーションA
を起動する
アプリケーション
起動機能
デプロイ可能な
アプリケーションA
(b)デプロイ可能なアプリケーションの場合
第 3 図 アプリケーション起動機能の概要
アプリケーション起動機能の役割を示す。
明電時報 通巻 347 号 2015 No.2
43
2.4 アプリケーションの通信制限
第 5 図にアプリケーションの通信制限の概要を
示す。アプリケーションが指定された通信先と通信
するように制限する機能である。デプロイ可能なア
プリケーションは,アプリケーションの通信先の定
3 セ キ ュ リ テ ィ 技 術 の 特 長
第 1 表に本技術の対策するセキュリティ脅威を
示す。
本技術は先に紹介した5つの要素を以下のように
義情報を含んでいる。アプリケーションの通信が開
組み合わせることで,セキュリティ対策となる。
始される時には,定義情報にある通信相手・通信種
⑴ コード検証ツールを用いて,ぜい弱性を作り込
別であるかのどうかの確認が行われる。アプリケー
まないようにアプリケーションを開発する。
ションの通信先の定義情報には他のアプリケーショ
⑵ システム構成ツールを用いて,信頼性の高いア
ンだけでなく,データベースやファイルなどのリ
プリケーションをデプロイ可能なアプリケーション
ソースへのアクセス制限情報も含まれている。
にする。
⑶ アプリケーション起動機能を用いて,デプロイ
2.5 アプリケーションの通信秘匿
アプリケーションの行う全ての通信は,TLSに
よって暗号化される。
可能なアプリケーションを起動させる。起動するア
プリケーションは,アプリケーション起動機能によ
る電子署名の検証によって,システム構成ツールを
使用した状態からアプリケーションの内容が変更さ
アプリケーションAを起動する
れていないことが保証される。
⑷ アプリケーションが通信を開始する時,通信先
アプリケーション起動機能がアプリ
ケーションAの電子署名を確認する
の検証が行われる。アプリケーションは,仕様書に
含まれる定義情報の制限内の通信のみ許可される。
アプリケーションA
の電子署名は正しい?
No
アプリケーションAの
起動が失敗する
Yes
⑸ アプリケーションは,許可された通信先とTLS
によって暗号化されたデータをやり取りする。
アプリケーション起動機能がアプリ
ケーションAを新規に展開する
第 1 表 セキュリティ技術の対応範囲
アプリケーションAが起動する
セキュリティ技術で対策できるセキュリティ脅威と対策となる要素を示す。
第 4 図 アプリケーション起動機能の順序
セキュリティ脅威
システム構成ツール
デプロイ可能な
アプリケーションA
各アプリケーションの
通信先を制限する
デプロイ可能な
アプリケーションE
デプロイ可能な
アプリケーションD
デプロイ可能な
アプリケーションB
デプロイ可能な
アプリケーションC
システム構成ツールによるアプリケーションの通信制限の概要を示す。
明電時報 通巻 347 号 2015 No.2
中間者攻撃(MITM)
:盗聴又は不 TLS 1.2 を使用した通信で通信
正操作を目的とした通信の中継及 の完全性を確保
び妨害
メッセージ攻撃:不正もしくは無 TLS 1.2 を使用した通信で攻撃
効な要求又は応答の送信
を軽減
データの引き出し:制限のない アプリケーションコード・ラ
ネットワークの使用では,アプリ イブラリに静的解析を行い,ぜ
ケーションがデータを不正に送信 い弱性を作り込まない対策を
する恐れがある。
第 5 図 アプリケーションの通信制限の概要
44
対策
通信の乗っ取り:不正な第三者に エンドポイント認証の TLS 1.2
よる通信の横取り
を使用
アプリケーション起動機能の状態遷移図を示す。
講じる。
アプリケーションコードの置き換 アプリケーション起動機能によ
え:不正なアプリケーションコー る電子署名の認証で,不正に改
ドを実行
ざんされたアプリケーションは
実行されない。
コードインジェクション攻撃:ア ぜい弱性の作り込みを防ぐため
プリケーションに悪意のあるコー に静的解析を行い,インジェク
ドを挿入
ションによるリスクを軽減
4 む す び
本稿では,制御システムソフトウェアやシステム
構成の改ざんに対応するために開発したセキュリ
《参考文献》
⑴ NIST Special Publication 800-82,“Guide to Industrial
Control Systems(ICS)Security,
” 2011,(http://csrc.nist.
gov/publications/nistpubs/800-82/SP800-82-final.pdf)
(2014 年 12 月 2 日閲覧)
ティ技術を紹介した。今後も制御システムを安心し
て使用できるように,アプリケーションレベルでの
必要なセキュリティ技術の開発を続けていく。
《執筆者紹介》
平田敏樹
・本論文に記載されている会社名・製品名などは,それぞれの
会社の商標又は登録商標である。
Toshiki Hirata
ICT 製品 ・ サービス統括本部開発部
産業制御システムのセキュリティ技術開発に従事
明電時報 通巻 347 号 2015 No.2
45