JP5757160B2 - 制御バスシステム - Google Patents

制御バスシステム Download PDF

Info

Publication number
JP5757160B2
JP5757160B2 JP2011121639A JP2011121639A JP5757160B2 JP 5757160 B2 JP5757160 B2 JP 5757160B2 JP 2011121639 A JP2011121639 A JP 2011121639A JP 2011121639 A JP2011121639 A JP 2011121639A JP 5757160 B2 JP5757160 B2 JP 5757160B2
Authority
JP
Japan
Prior art keywords
control bus
control
driver
control communication
windows
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2011121639A
Other languages
English (en)
Other versions
JP2012249238A (ja
Inventor
田中 幸治
幸治 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP2011121639A priority Critical patent/JP5757160B2/ja
Publication of JP2012249238A publication Critical patent/JP2012249238A/ja
Application granted granted Critical
Publication of JP5757160B2 publication Critical patent/JP5757160B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Description

本発明は、制御バスシステムに関し、詳しくは、プロセス制御分野で広く用いられている分散制御システムのHMI(Human Machine Interface:ヒューマン・マシン・インターフェース)ソフトウェアのプラットフォームとして採用されているMicrosoft社のWindows(登録商標)プラットフォーム上に実装される制御バスドライバへのなりすましなどによる不正アクセスに対するセキュリティ対策に関するものである。
プロセス制御分野で用いられる分散制御システムのHMIソフトウェアのプラットフォームとして、Microsoft社のWindowsプラットフォームが採用されることも多い。
図8は、Windowsプラットフォームが採用された従来の制御バスシステムの一例を示すブロック図である。図8において、制御通信アプリケーション10から制御バス上のコントローラや他の機器に対して送信される制御通信パケットP1は、実線で示すようにWindowsプラットフォーム上で動作する制御バスドライバ20を経由し、制御バスに接続された通信カード30へ送信される。なお、制御バスドライバ20は、Windowsプラットフォームにおけるプロトコルドライバ21とネットワークドライバ22とで構成されている。
パケットキャプチャツール40は、一般的に公開されているsnifferやwiresharkなどのソフトウェアインタフェースであり、パケットキャプチャアプリケーション41とパケットキャプチャプロトコルドライバ42とで構成されている。
このように構成されるパケットキャプチャツール40は、制御バスドライバ20内のパケットP1を、1点鎖線で示すようにキャプチャパケットP2としてキャプチャ(盗聴)することができる。そしてさらに、キャプチャパケットP2を、破線で示すように再送パケットP3として制御バスネットワークドライバ22に対してなりすまして再送することもできる。
図9は図8の制御バスドライバ20内部におけるパケットの流れ説明図であり、(A)は制御バスプロトコルドライバ21による本来の送信系統を示し、(B)はパケットキャプチャツール40によるキャプチャ再送系統を示している。
(A)に示す制御バスプロトコルドライバ21による本来の送信系統において、制御バスプロトコルドライバ21は、制御通信パケットをWindowsフレームに取り込んで制御バスネットワークドライバ22に送信する。制御バスネットワークドライバ22は、制御バスプロトコルドライバ21から受信したWindowsフレームから制御通信パケットを抜き出して、通信カード30に送信するための制御バスフレームに取り込む。
(B)に示すキャプチャ再送系統において、パケットキャプチャプロトコルドライバ42は、パケットキャプチャアプリケーション41から入力される制御通信パケットをWindowsフレームに取り込んで制御バスネットワークドライバ22に送信する。制御バスネットワークドライバ22は、パケットキャプチャプロトコルドライバ42から受信したWindowsフレームから制御通信パケットを抜き出し、(A)の場合と同様に、通信カード30に送信するための制御バスフレームに取り込む。
特許文献1には、プラント制御システムの操作性とセキュリティ性を両立可能なユーザ認証方法および装置などに関する技術が記載されている。
特開2006−195621号公報
しかし、図8に示す従来の制御バスシステムでは、一般的に公開されているパケットキャプチャツールを使用すれば、誰でも制御通信パケットをキャプチャできるとともに、キャプチャした制御通信パケットをなりすまして再送することもでき、さらに、キャプチャした制御通信パケットをなりすまして再送するのにあたって制御通信パケットの内容を変更することもできるので、制御バスのセキュリティを確保することができない。
本発明は、このような課題を解決するものであり、その目的は、Windowsプラットフォームを用いた制御バスシステムにおける正当な送信元以外のなりすましなどの不正アクセスに対するセキュリティ対策を実現することにある。
このような課題を解決するために、請求項1の発明は、
Windowsプラットフォームを用いて制御バスドライバと通信カードとの間で制御通信パケットを伝送する制御バスシステムにおいて、
前記制御バスドライバは一方を送信部として他方を受信部とするプロトコルドライバとネットワークドライバとで構成され、
前記送信部にはWindowsフレームに送信元を識別するための制御通信フラグとタイムスタンプを生成して付加する手段が設けられ、
前記受信部には受信したWindowsフレームから制御通信フラグと送信時刻情報を抽出して送信元の正当性を判断する手段が設けられ
前記制御通信フラグは、前記制御通信パケットが格納されているバッファの先頭アドレスであることを特徴とする。
請求項の発明は、請求項1に記載の制御バスシステムにおいて、
前記タイムスタンプは、前記制御通信パケットの送信時刻を表すことを特徴とする。
これらの構成により、Windowsプラットフォームを用いた制御バスシステムにおいて、正当な送信元以外の外部から不正アクセスによる制御通信パケットを送信できない仕組みが実現できる。
本発明で用いる制御バスドライバ20の一実施例を示すブロック図である。 図1の動作処理の流れを説明するフローチャートである。 図1の制御バスドライバ20内部におけるパケットの流れ説明図である。 本発明の他の実施形態にかかる制御バスシステムの構成図である。 本発明で用いる制御バスドライバ20の他の実施例を示すブロック図である。 図5の動作処理の流れを説明するフローチャートである。 図5の制御バスドライバ20内部におけるパケットの流れ説明図である。 Windowsプラットフォームが採用された従来の制御バスシステムの一例を示すブロック図である。 図8の制御バスドライバ20内部におけるパケットの流れ説明図である。
以下、本発明の実施形態について詳細に説明する。図1は、本発明で用いる制御バスドライバ20の一実施例を示すブロック図である。図1において、制御バスドライバ20の制御バスプロトコルドライバ21は、制御通信パケット生成部21a、制御通信フラグ生成部21b、タイムスタンプ生成部21c、Windowsフレーム編集部21d、Windowsフレーム送信部21eなどで構成されている。
そして、制御バスネットワークドライバ22は、Windowsフレーム受信部22a、制御通信パケット抽出部22b、制御通信フラグ確認部22c、タイムスタンプ確認部22d、制御バスフレーム編集部22e、制御バスフレーム送信部22fなどで構成されている。
制御バスプロトコルドライバ21において、制御通信パケット生成部21aは、通信カード30に送信すべき制御通信パケットを生成してWindowsフレーム編集部21dに出力する。
制御通信フラグ生成部21bは、送信元を識別するための制御通信フラグとして、制御通信パケットが格納されるバッファの先頭アドレスを生成し、Windowsフレーム編集部21dに出力する。
タイムスタンプ生成部21cは、タイムスタンプとして、Windowsフレーム送信部21eからWindowsフレームが送信される時刻情報を生成し、Windowsフレーム編集部21dに出力する。
Windowsフレーム編集部21dは、制御通信パケット生成部21aから入力される制御通信パケット、制御通信フラグ生成部21bから入力される制御通信フラグおよびタイムスタンプ生成部21cから入力されるタイムスタンプに基づき、内部に制御通信を判別するための制御通信フラグと制御バスプロトコルドライバ21からのWindowsフレームの送信時刻を示す時刻情報としてのタイムスタンプを有する所定のデータ形式のWindowsフレームを編集作成する。
Windowsフレーム送信部21eは、Windowsフレーム編集部21dで編集作成された所定のデータ形式のWindowsフレームを制御バスネットワークドライバ22に送信する。
制御バスネットワークドライバ22において、Windowsフレーム受信部22aは、Windowsフレーム送信部21eから送信されたWindowsフレームを受信する。
制御通信パケット抽出部22bは、Windowsフレーム受信部22aで受信したWindowsフレームから送信元を識別するための制御通信パケットを抽出する。
制御通信フラグ確認部22cは、Windowsフレーム受信部22aで受信したWindowsフレームから制御通信フラグを抽出し、そのフラグの値が制御通信パケットが格納されているバッファの先頭アドレスであるか否かのチェックを行う。フラグの値がバッファの先頭アドレスの場合には、正当な送信元である制御バスプロトコルドライバ21からのパケットと判断して以降の送信処理を続行実施するが、先頭アドレス以外の値の場合には、制御バスプロトコルドライバ21以外の不正アクセスにより送信されたWindowsフレームと判断して受信したWindowsフレームを破棄する。
タイムスタンプ確認部22dは、Windowsフレーム受信部22aで受信したWindowsフレームからタイムスタンプを抽出し、その時刻情報に基づき、受信したWindowsフレームが、制御バスプロトコルドライバ21から制御バスネットワークドライバ22への通知に想定される最大遅延時間以内のものかを確認判断して、最大遅延時間以上経過したWindowsフレームについては正当な送信元以外の不正アクセスにより送信されたWindowsフレームと判断して受信したWindowsフレームを破棄する。
制御バスフレーム編集部22eは、制御通信パケット抽出部22bで抽出された制御通信パケット、制御通信フラグ確認部22cにおける制御通信フラグの確認結果およびタイムスタンプ確認部22dにおけるタイムスタンプの確認結果に基づいて、制御通信パケットを通信カード30に送信するための所定のデータ形式の制御バスフレームを編集作成する。
制御バスフレーム送信部22fは、制御バスフレーム編集部22eで編集作成された所定のデータ形式の制御バスフレームを通信カード30に送信する。
図2は図1の動作処理の流れを説明するフローチャートであり、(A)は制御バスプロトコルドライバ21における動作処理の流れを示し、(B)は制御バスネットワークドライバ22における動作処理の流れを示している。
(A)に示す制御バスプロトコルドライバ21の動作処理の流れにおいて、制御通信フラグ生成部21bは、制御通信フラグとしてバッファの先頭アドレスをセットして(ステップS1)、Windowsフレームを編集するWindowsフレーム編集部21dに出力する。
タイムスタンプ生成部21cは、Windowsフレーム編集部21dで編集されたWindowsフレームがWindowsフレーム送信部21eから送信される時刻情報を正当な送信元からのタイムスタンプ情報として生成し(ステップS2)、Windowsフレームを編集するWindowsフレーム編集部21dに出力する。
Windowsフレーム送信部21eは、制御通信パケット生成部21aで生成された制御通信パケットと制御通信フラグ生成部21bで生成された制御通信フラグとタイムスタンプ生成部21cで生成されたタイムスタンプに基づきWindowsフレーム編集部21dで編集された所定の形態のWindowsフレームを、制御バスネットワークドライバ22に対して送信する(ステップS3)。
(B)に示す制御バスネットワークドライバ22の動作処理の流れにおいて、制御通信フラグ確認部22cは、Windowsフレーム受信部22aで受信したWindowsフレームから抽出した制御通信フラグの値が、制御通信パケットが格納されているバッファの先頭アドレスであるか否かのチェックを行う(ステップS1)。
フラグの値がバッファの先頭アドレスの場合には、正当な送信元である制御バスプロトコルドライバ21からのパケットと判断してステップS2のタイムスタンプ確認部22dにおけるタイムスタンプの正当性確認処理に移行する。
タイムスタンプ確認部22dは、Windowsフレーム受信部22aで受信したWindowsフレームから抽出したタイムスタンプの時刻情報に基づき、受信したWindowsフレームが、制御バスプロトコルドライバ21から制御バスネットワークドライバ22への通知に想定される最大遅延時間以内のものかを確認判断し(ステップS2)、最大遅延時間以内であれば正当な送信元からのWindowsフレームと判断して制御バスフレーム編集部22eで所定のデータ形式の制御バスフレームを編集作成して制御バスフレーム送信部22fを介して通信カード30に送信するステップS3の一連の送信処理に移行する。
ステップS1における制御通信フラグの値が制御通信パケットが格納されているバッファの先頭アドレスではなかった場合やステップS2におけるタイムスタンプが想定される最大遅延時間を超えている場合には、正当な送信元である制御バスプロトコルドライバ21以外の不正アクセスにより送信されたWindowsフレームと判断して、受信した制御通信パケットを含むWindowsフレームを破棄する(ステップS4)。
図3は図1の制御バスドライバ20内部におけるパケットの流れ説明図であり、(A)は制御バスプロトコルドライバ21による本来の送信系統を示し、(B)はパケットキャプチャツール40によるキャプチャ再送系統を示している。
(A)に示す制御バスプロトコルドライバ21による本来の送信系統において、制御バスプロトコルドライバ21は、制御通信パケット生成部21aで生成された制御通信パケットの他に、制御通信フラグ生成部21bで生成された所定の制御通信フラグおよびタイムスタンプ生成部21cで生成された所定のタイムスタンプをWindowsフレームに取り込んで制御バスネットワークドライバ22に送信する。
制御バスネットワークドライバ22は、制御バスプロトコルドライバ21から受信したWindowsフレームから制御通信パケットを抜き出して通信カード30に送信するための制御バスフレームに取り込むのにあたり、Windowsフレーム受信部22aで受信したWindowsフレームから抽出した制御通信フラグの値が制御通信パケットが格納されているバッファの先頭アドレスであるか否かのチェックと、Windowsフレーム受信部22aで受信したWindowsフレームから抽出したタイムスタンプの時刻情報が想定される最大遅延時間以内のものかについての確認判断を行う。
そして、両者のデータが正当な値であることを確認できた場合にのみ、制御バスフレームの編集を行い、編集された制御バスフレームを制御バスフレーム送信部22fを介して通信カード30に送信する。
これに対し、(B)に示すキャプチャ再送系統において、パケットキャプチャプロトコルドライバ42には、制御バスネットワークドライバ22の制御通信フラグ生成部21bおよびタイムスタンプ生成部21cと同等な機能ブロックは設けられていない。
したがって、パケットキャプチャプロトコルドライバ独自の制御通信フラグおよびタイムスタンプを生成することは不可能であって、パケットキャプチャアプリケーション41から入力される制御通信パケットをWindowsフレームに取り込んで制御バスネットワークドライバ22に送信するか、キャプチャされたWindowsフレーム全体を再送することになる。
制御バスネットワークドライバ22は、(A)で説明したように、パケットキャプチャプロトコルドライバ42から受信したWindowsフレームから制御通信パケットを抜き出すだけではなく、Windowsフレーム受信部22aで受信したWindowsフレームから抽出した制御通信フラグの値が制御通信パケットが格納されているバッファの先頭アドレスであるか否かのチェックと、Windowsフレーム受信部22aで受信したWindowsフレームから抽出したタイムスタンプの時刻情報が想定される最大遅延時間以内かの確認判断も行う。
そして、両者のデータのいずれかが正当な値ではないと判断すると、受信したWindowsフレームを破棄する。
これらの処理により、たとえば図8に示すように、パケットキャプチャツール40によりキャプチャされたWindowsフレーム全体が再送されたとしても、制御バスネットワークドライバ22において受信した制御通信パケットを含むWindowsフレームが破棄されるため、パケットキャプチャツール40によりキャプチャされた制御通信パケットやパケットキャプチャツール40で内容が変更された制御通信パケットが通信カード30に送信されることはなく、なりすましなどの不正アクセスに起因する問題発生を防止できる。
なお、上記実施例では、制御バスドライバ20から通信カード30に向けてWindowsフレームの通信を行う例について説明したが、図4に示すように通信カード30から制御バスドライバ20の逆方向に通信を行う場合には、図1とほぼ同様な図5の仕組みを用いればよい。
図5において、制御バスドライバ20の制御バスネットワークドライバ22は、制御通信パケット抽出部22g、制御通信フラグ生成部22h、タイムスタンプ生成部22i、Windowsフレーム編集部22j、Windowsフレーム送信部22kなどで構成されている。
一方、制御バスプロトコルドライバ21は、Windowsフレーム受信部21f、制御通信パケット抽出部21g、制御通信フラグ確認部21h、タイムスタンプ確認部21iなどで構成されている。
これら制御バスドライバ20を構成する各ブロックの動作は図1と同様であり、それらの説明は省略する。
図6は図5の動作処理の流れを説明するフローチャートであり、(A)は制御バスプロトコルドライバ21における動作処理の流れを示し、(B)は制御バスネットワークドライバ22における動作処理の流れを示している。なお、具体的な動作処理の流れは実質的には図2と同一であり、その説明は省略する。
そして、図7は図5の制御バスドライバ20内部におけるパケットの流れ説明図であって、具体的なパケットの流れは実質的には図3(A)と流れの方向が異なるだけであり、その説明は省略する。
以上説明したように、本発明によれば、Windowsプラットフォームを用いた制御バスシステムにおけるなりすましなどの不正アクセスに対するセキュリティ対策を実現できる。
10 制御通信アプリケーション
20 制御バスドライバ
21 制御バスプロトコルドライバ
21a 制御通信パケット生成部
21b 制御通信フラグ生成部
21c タイムスタンプ生成部
21d Windowsフレーム編集部
21e Windowsフレーム送信部
21f Windowsフレーム受信部
21g 制御通信パケット抽出部
21h 制御通信フラグ確認部
21i タイムスタンプ確認部
22 制御バスネットワークドライバ
22a Windowsフレーム受信部
22b、22g 制御通信パケット抽出部
22c 制御通信フラグ確認部
22d タイムスタンプ確認部
22e 制御バスフレーム編集部
22f 制御バスフレーム送信部
22h 制御通信フラグ生成部
22i タイムスタンプ生成部
22j Windowsフレーム編集部
22k Windowsフレーム送信部
30 通信カード
40 パケットキャプチャツール
41 パケットキャプチャアプリケーション
42 パケットキャプチャプロトコルドライバ

Claims (2)

  1. Windowsプラットフォームを用いて制御バスドライバと通信カードとの間で制御通信パケットを伝送する制御バスシステムにおいて、
    前記制御バスドライバは一方を送信部として他方を受信部とするプロトコルドライバとネットワークドライバとで構成され、
    前記送信部にはWindowsフレームに送信元を識別するための制御通信フラグとタイムスタンプを生成して付加する手段が設けられ、
    前記受信部には受信したWindowsフレームから制御通信フラグと送信時刻情報を抽出して送信元の正当性を判断する手段が設けられ
    前記制御通信フラグは、前記制御通信パケットが格納されているバッファの先頭アドレスであることを特徴とする制御バスシステム。
  2. 前記タイムスタンプは、前記制御通信パケットの送信時刻を表すことを特徴とする請求項1に記載の制御バスシステム。
JP2011121639A 2011-05-31 2011-05-31 制御バスシステム Active JP5757160B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011121639A JP5757160B2 (ja) 2011-05-31 2011-05-31 制御バスシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011121639A JP5757160B2 (ja) 2011-05-31 2011-05-31 制御バスシステム

Publications (2)

Publication Number Publication Date
JP2012249238A JP2012249238A (ja) 2012-12-13
JP5757160B2 true JP5757160B2 (ja) 2015-07-29

Family

ID=47469222

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011121639A Active JP5757160B2 (ja) 2011-05-31 2011-05-31 制御バスシステム

Country Status (1)

Country Link
JP (1) JP5757160B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11924360B2 (en) 2018-10-08 2024-03-05 Green Market Square Limited Blockchain timestamp agreement
CN111008402B (zh) 2018-10-08 2024-03-08 绿市广场有限公司 区块链时间戳协定

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100522138B1 (ko) * 2003-12-31 2005-10-18 주식회사 잉카인터넷 신뢰할 수 있는 프로세스를 허용하는 유연화된 네트워크보안 시스템 및 그 방법
US8752169B2 (en) * 2008-03-31 2014-06-10 Intel Corporation Botnet spam detection and filtration on the source machine
CA2789243A1 (en) * 2009-03-13 2010-09-16 Rutgers, The State University Of New Jersey Systems and methods for the detection of malware

Also Published As

Publication number Publication date
JP2012249238A (ja) 2012-12-13

Similar Documents

Publication Publication Date Title
CN107925569A (zh) 使用有组织地导出的同步过程的安全通信
CN102984196B (zh) 一种基于身份认证的车辆鉴权的车载终端
CN115396121B (zh) 安全芯片ota数据包的安全认证方法及安全芯片装置
CN106559405B (zh) 一种Portal认证方法和设备
CN102638468A (zh) 保护信息传输安全的方法、发送端、接收端及***
WO2004095716A3 (en) System and method for implementing safety instrumented systems in a fieldbus architecture
JP5757160B2 (ja) 制御バスシステム
CN109936566B (zh) 一种数据传输方法***、装置及计算机可读存储介质
WO2007076284A3 (en) System and method for implementing safety instrumented systems
CN107294704B (zh) 口令的生成方法、口令的执行方法及终端
JP6375962B2 (ja) 車載ゲートウェイ装置及び電子制御装置
JP2013078019A (ja) 通信装置、受信制御方法及び送信制御方法
CN113905012A (zh) 一种通信方法、装置、设备及介质
KR101705639B1 (ko) 차량 네트워크 시스템에서의 메시지 송수신 방법
CN103986716B (zh) Ssl连接的建立方法以及基于ssl连接的通信方法及装置
CN104618323B (zh) 基于网络过滤驱动的业务***传输安全加固方法
Carsten et al. A system to recognize intruders in controller area network (can)
CN107819597B (zh) 网络数据传输方法和前置机
US8750130B2 (en) Communication apparatus having network communication function, control method for the communication apparatus, and storage medium
CN112995508A (zh) 智能相机
CN113872949A (zh) 一种地址解析协议的应答方法及相关装置
CN101753353B (zh) 基于SNMP的安全管理方法、Trap报文的处理方法及装置
CN1921411A (zh) 在基本终端与串联连接的设备之间创建分割终端的方法
Ene et al. Implementing ECC on Data Link Layer of the OSI Reference Model
CN107864123A (zh) 一种网络对讲机安全传输方法及***

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140401

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150304

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150409

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150507

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150520

R150 Certificate of patent or registration of utility model

Ref document number: 5757160

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150