JP6897203B2 - 組み込み装置および組み込み装置の制御方法 - Google Patents

組み込み装置および組み込み装置の制御方法 Download PDF

Info

Publication number
JP6897203B2
JP6897203B2 JP2017056245A JP2017056245A JP6897203B2 JP 6897203 B2 JP6897203 B2 JP 6897203B2 JP 2017056245 A JP2017056245 A JP 2017056245A JP 2017056245 A JP2017056245 A JP 2017056245A JP 6897203 B2 JP6897203 B2 JP 6897203B2
Authority
JP
Japan
Prior art keywords
unit
security function
embedded device
main body
security
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
JP2017056245A
Other languages
English (en)
Other versions
JP2018160041A (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2017056245A priority Critical patent/JP6897203B2/ja
Publication of JP2018160041A publication Critical patent/JP2018160041A/ja
Application granted granted Critical
Publication of JP6897203B2 publication Critical patent/JP6897203B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、セキュリティ機能を有する組み込み装置および組み込み装置の制御方法に関する。
近年、組み込み装置のファームウェアをネットワーク経由で操作できることが一般的となり、セキュリティの重要性が増大してきている。それに伴い、OpenSSLに代表される既存のセキュリティ技術の実装に対する新たな脆弱性の発見と修正が年間数回行われるようになり、それを使用している組み込み装置のファームウェアの更新の頻度が増大している。
関連する技術として、例えば特許文献1や特許文献2には、ファームウェアの更新方法が記載されている。
特開2011−141696号公報 特開2015−108864号公報
従来、組み込み装置のファームウェアにおける外部ネットワークに対するセキュリティ機構は、図5に示すように、外部と通信を行うモジュール(例:Webサーバ部401)にセキュリティライブラリ402がリンクされることによって実現されている。このような構成では、セキュリティ機能を更新するためには、セキュリティライブラリ402だけでなく、モジュール本体も更新し、セキュリティライブラリ402のヘッダファイルを参照して再コンパイルしたものに置き換える必要がある。
こうしたモジュールは複数存在するが、組み込みファームウェアではストレージ容量の制約からパッケージ管理システムを導入していないことが一般的である。そのため、セキュリティ機能だけを更新したいときでも、ファームウェア400全体の更新が必要となる。また、本体制御部403の更新により、組み込み装置500の再起動が必要となる。
組み込み装置の運用中に本体制御部403の更新を行うことはリスクが高いと判断するユーザが多い。そのため、定期的なメンテナンス時期にしか更新しない、または制御に問題がないのであれば更新したくない、などの理由で更新を延期し、更新しないことによるセキュリティ上のリスクが高まる場合がある。
特許文献1,2に記載された装置では、セキュリティのためのモジュールが独立して設けられていないため、上記のような課題が存在する。
そこで、本発明は、組み込み装置の運用に影響を与えることなく、ファームウェアのセキュリティ機能を更新することができる組み込み装置および組み込み装置の制御方法を提供することを目的とする。
本発明による組み込み装置は、セキュリティ機能を有する組み込み装置であって、組み込み装置の制御を行う本体制御部と、セキュリティ機能を実現するセキュリティ機能部と、セキュリティ機能部の管理を行う管理部とを備え、本体制御部、セキュリティ機能部および管理部は、互いに独立して設けられ、本体制御部、セキュリティ機能部および管理部は、互いに独立して動作可能であり、管理部は、セキュリティ機能部を停止させた後に、セキュリティ機能部を更新し、更新したセキュリティ機能部を起動させる制御を行うことが可能であり、本体制御部は、セキュリティ機能部を停止させているときにも動作可能であることを特徴とする。
本発明による組み込み装置の制御方法は、セキュリティ機能を有する組み込み装置の制御方法であって、管理部が、組み込み装置の制御を行本体制御部とは独立して動作可能であってセキュリティ機能を実現するセキュリティ機能部を停止させた後に、セキュリティ機能部を更新し、更新したセキュリティ機能部を起動させ、本体制御部が、セキュリティ機能部が停止しているときにも動作可能であることを特徴とする。
本発明によれば、組み込み装置の運用に影響を与えることなく、ファームウェアのセキュリティ機能を更新することができる。
本発明による組み込み装置の構成の一例を示すブロック図である。 ファームウェアの起動処理の一例を示すフローチャートである。 外部からの組み込み装置の制御処理の一例を示すフローチャートである。 セキュリティモジュールの更新処理の一例を示すフローチャートである。 一般的な組み込み装置の構成例を示すブロック図である。 組み込み装置の最小の構成例を示すブロック図である。
以下、本発明の実施形態を、図面を参照して説明する。図1は、本発明による組み込み装置の構成の一例を示すブロック図である。図1に示すように、本実施形態では、組み込み装置300のファームウェア101は、Webサーバ部102と、本体制御部103と、セキュリティモジュール104と更新用UI(ユーザインタフェース)部105とを含み、互いに独立して動作可能に構成されている。例えば、不揮発性メモリ等の記憶部において、互いに独立したプログラムとして異なる記憶領域に記憶されている。以下、Webサーバ部102や本体制御部103、セキュリティモジュール104、更新用UI(ユーザインタフェース)部105が動作を行うとの表現を用いるが、具体的には、単一または複数のマイクロプロセッサ等の組み込み用CPU(Central Processing Unit )が、単一または複数の不揮発性メモリ等の記憶部(図示せず)に記憶されたプログラムに従って処理を実行することにより実現される。
セキュリティモジュール104は、組み込み装置300の外部に設置されるコンソール200とのインターフェースとしての機能を備えている。すなわち、セキュリティモジュール104は、インターネット等の通信ネットワークを介して、組み込み装置300の外部に設置されるコンソール200と情報を送受信する機能を備えている。セキュリティモジュール104は、例えば、外部ネットワークと内部モジュールを仲介するプロキシサーバ(または、stunnnelのようなトンネリングサービス)として実装されている。
セキュリティモジュール104は、コンソール200から通信ネットワークを介して入力された情報により指定されるアドレスに応じて、Webサーバ部102と更新用UI部105とのいずれかに接続する(すなわち接続先を切り替える)機能を備えている。また、セキュリティモジュール104は、コンソール200から通信ネットワークを介して入力された暗号文を平文に復号する機能を備えている。
Webサーバ部102は、コンソール200から通信ネットワークおよびセキュリティモジュール104を介して入力された情報に応じて、本体制御部103に組み込み装置300を制御するための指示を出力する機能や、本体制御部103を介して組み込み装置300に関する情報を取得する機能を備えている。
本体制御部103は、組み込み装置300に関する情報を取得する機能や、組み込み装置300の操作等の制御を行う機能を備えている。
更新用UI部105は、コンソール200から通信ネットワークおよびセキュリティモジュール104を介して入力された情報に応じて、記憶部(図示せず)において、セキュリティモジュール104を実現するためのプログラムが格納されている記憶領域を更新する(すなわちプログラムを更新する)機能や、Webサーバ部102や本体制御部103から独立してセキュリティモジュール104を起動および停止させる機能を備えている。
次に、組み込み装置の動作を説明する。
図2は、ファームウェアの起動処理の一例を示すフローチャートである。図1に示す組み込み装置300の電源が投入されると、図2に示すように、ファームウェア101の本体制御部103、Webサーバ部102、更新用UI部105、セキュリティモジュール104の順に起動処理が実行される(ステップS11〜S14)。
図3は、外部からの組み込み装置の制御処理の一例を示すフローチャートである。ファームウェア101の起動後、外部に設置されたコンソール200からの組み込み装置300の制御は、図3に示す順序で実行される。
具体的には、組み込み装置300において所定の制御を行う場合、ユーザは組み込み装置300の外部に設けられたコンソール200を用いて、所定の制御に対応する入力操作を行う。すると、コンソール200は、通信ネットワークを介して、Webサーバ部102を特定するためのアドレスを指定して、セキュリティモジュール104に暗号化された本体制御指示情報を送信する(ステップS21)。
次いで、セキュリティモジュール104は、コンソール200から受信した本体制御指示情報を復号し、Webサーバ部102に出力する(ステップS22)。
次いで、Webサーバ部102は、セキュリティモジュール104から出力された本体制御指示情報を入力する(ステップS23)。ステップS21〜S23の処理により、Webサーバ部102は、コンソール200から送信された本体制御指示情報を取得する。
次いで、Webサーバ部102は、本体制御指示情報を本体制御部103に出力する(ステップS24)。
次いで、本体制御部103は、Webサーバ部102から出力された本体制御指示情報を入力し、本体制御指示情報に従って組み込み装置300の制御を行う(ステップS25)。例えば、本体制御部103は、本体制御指示情報に従って、組み込み装置300を動作させたり、組み込み装置300に関する情報を取得したりする。
図3に示すような処理により、組み込み装置300の外部に設置されたコンソール200から送信された暗号文による本体制御指示情報は、ファームウェア101内部で平文に復号される。そして、本体制御指示情報に従って組み込み装置300の制御が行われる。
図4は、セキュリティモジュールの更新処理の一例を示すフローチャートである。セキュリティの脆弱性などの対応のためのセキュリティ機能の更新は、図4に示す順序で行われ、セキュリティモジュール104のみ更新される。
具体的には、組み込み装置300のセキュリティ機能を更新する場合、ユーザは組み込み装置300の外部に設けられたコンソール200を用いて、セキュリティ機能を更新するための入力操作を行う。すると、コンソール200は、通信ネットワークを介して、更新用UI部105を特定するためのアドレスを指定して、セキュリティモジュール104に暗号化された更新用情報(例えば、更新用プログラムを含む)を送信する(ステップS31)。
セキュリティモジュール104は、コンソール200から受信した更新用情報を復号し、更新用UI部105に出力する。そして、更新用UI部105は、コンソール200から送信された更新用情報を取得する(ステップS32)。
次いで、更新用UI部105は、セキュリティモジュール104の動作を停止させる処理を行う(ステップS33)。
次いで、更新用UI部105は、更新用情報にもとづいて、記憶部において、セキュリティモジュール104を実現するためのプログラムが格納されている記憶領域を更新する(ステップS34)。すなわち、セキュリティモジュール104を実現するためのプログラムが格納されている記憶領域に更新用プログラムを格納する。換言すれば、更新用UI部105は、セキュリティモジュール104を実現するためのプログラムが格納されている記憶領域の内容を書き換える。
次いで、更新用UI部105は、更新したプログラムにもとづいてセキュリティモジュール104を起動させる(ステップS35)。
この実施の形態では、セキュリティモジュール104は、Webサーバ部102、本体制御部103および更新用UI部105とは独立して設けられている。すなわち独立して動作可能なプログラムとして、それぞれ異なる記憶領域に記憶されている。例えば、Webサーバ部102は、Webサーバ機能を実現するためのWebサーバ部用プログラムに従って動作し、本体制御部103は、組み込み装置300の制御を行うための本体制御部用プログラムに従って動作し、セキュリティモジュール104は、セキュリティ機能を実現するためのセキュリティモジュール用プログラムに従って動作し、更新用UI部105は、セキュリティモジュールの更新機能を実現するための更新用UI部用プログラムに従って動作する。そして、Webサーバ用プログラム、本体制御プログラム、セキュリティプログラムおよび更新用UIプログラムは、それぞれ異なる記憶領域に記憶されている。そのため、Webサーバ部102、本体制御部103および更新用UI部105を動作させたまま、ステップS33〜S35の処理により、セキュリティモジュール104の停止、更新および起動を行うことができる。
また、本実施の形態では、組み込み装置300において通常の制御を行う場合には、図3のステップS21で示すように、Webサーバ部102を特定するアドレスを指定するが、セキュリティ機能の更新を行う場合には、図4のステップS31で示すように、更新用UI部105を特定するアドレスを指定する。そのため、ユーザにとっては別のファームウェアとして認識されることになる。
このようにして、組み込み装置300の制御とは独立してセキュリティ機能を更新できると同時に、外部からは別の独立したファームウェアとしてみえるようになる。
以上に説明したように、本発明による組み込み装置は、セキュリティ機能部をモジュールに組み込むのではなく、図1のように独立したセキュリティモジュール104として外部ネットワークと内部モジュールを仲介するプロキシサーバ(あるいはstunnnelのようなトンネリングサービス)として実装すると同時に、セキュリティモジュール104を更新するために独立した更新用UI部105を追加し、ファームウェア全体とは別に更新作業を行えるように構成されている。
したがって、本発明による組み込み装置は、組み込みのファームウェアの外部ネットワークのセキュリティ機構について、セキュリティの機能と、当該機能の更新機能を他の機能から独立させることで、装置全体の運用中にセキュリティ機能を容易に更新可能にすることができる。
次に、本発明による組み込み装置の最小構成を説明する。図6は、組み込み装置の最小の構成例を示すブロック図である。図6に示されるように、組み込み装置1は、最小の構成要素として、本体制御部2と、セキュリティ機能部3と、管理部4とを備えている。
図6に示す最小構成の組み込み装置1では、本体制御部2は組み込み装置の制御を行い、セキュリティ機能部はセキュリティ機能を実現し、管理部4はセキュリティ機能部3の管理を行う。そして、本体制御部2、セキュリティ機能部3および管理部4は、互いに独立して設けられている
したがって、最小構成の組み込み装置によれば、組み込み装置の運用に影響を与えることなく、セキュリティ機能を更新することができる。
なお、本実施形態では、以下の(1)〜(5)に示すような組み込み装置の特徴的構成が示されている。
(1)セキュリティ機能を有する組み込み装置(例えば、組み込み装置300)であって、組み込み装置の制御を行う本体制御部(例えば、本体制御部103により実現され、組み込み装置300に関する情報を取得したり、組み込み装置300の操作等の制御を行う)と、セキュリティ機能(例えば、コンソール200から入力された暗号文を復号したり、入力内容に応じて接続先を切り替えたりする機能)を実現するセキュリティ機能部(例えば、セキュリティモジュール104により実現される)と、セキュリティ機能部の管理を行う管理部(例えば、更新用UI部105により実現される)とを備え、本体制御部、セキュリティ機能部および管理部は、互いに独立して設けられている(例えば、不揮発性メモリ等の記憶部において、互いに独立して動作可能なプログラムとして異なる記憶領域に記憶されている。図1参照)ことを特徴とする。
(2)組み込み装置において、本体制御部、セキュリティ機能部および管理部は、互いに独立して動作可能であり、管理部は、セキュリティ機能部を停止させた後に、セキュリティ機能部を更新し、更新したセキュリティ機能部を起動させる制御を行うことが可能であり(図4参照)、本体制御部は、セキュリティ機能部を停止させているときにも動作可能であるように構成されていてもよい。
(3)組み込み装置において、本体制御部は、組み込み装置の制御を行うための本体制御プログラム(例えば、本体制御部用プログラム)に従って動作し、セキュリティ機能部は、セキュリティ機能を実現するためのセキュリティプログラム(例えば、セキュリティモジュール用プログラム)に従って動作し、セキュリティプログラムと本体制御プログラムとを異なる記憶領域において記憶する記憶部を備えているように構成されていてもよい。
(4)組み込み装置において、管理部は、セキュリティ機能部を更新するときに、記憶部の記憶領域のうちのセキュリティプログラムが格納された記憶領域のみ更新するように構成されていてもよい。
(5)組み込み装置において、セキュリティ機能部は、組み込み装置外部からの入力(例えば、指定されるアドレス)に応じて接続先を本体制御部(例えば、Webサーバ部102を介して本体制御部103に接続する)と管理部とのいずれかに切り替える(図3,図4参照)ように構成されていてもよい。
本発明は、ネットワークセキュリティ機構を有する組み込み装置、特に、エンタープライズサーバなど運用を止めないことが重要な分野で用いられるものに好適に適用可能である。
1 組み込み装置
2 本体制御部
3 セキュリティ機能部
4 管理部
101 ファームウェア
102 Webサーバ部
103 本体制御部
104 セキュリティモジュール
105 更新用UI部
200 コンソール
300 組み込み装置

Claims (5)

  1. セキュリティ機能を有する組み込み装置であって、
    組み込み装置の制御を行う本体制御部と、
    前記セキュリティ機能を実現するセキュリティ機能部と、
    前記セキュリティ機能部の管理を行う管理部とを備え、
    前記本体制御部、前記セキュリティ機能部および前記管理部は、互いに独立して設けられ
    前記本体制御部、前記セキュリティ機能部および前記管理部は、互いに独立して動作可能であり、
    前記管理部は、前記セキュリティ機能部を停止させた後に、前記セキュリティ機能部を更新し、更新した前記セキュリティ機能部を起動させる制御を行うことが可能であり、
    前記本体制御部は、前記セキュリティ機能部を停止させているときにも動作可能である
    ことを特徴とする組み込み装置。
  2. 本体制御部は、組み込み装置の制御を行うための本体制御プログラムに従って動作し、
    セキュリティ機能部は、セキュリティ機能を実現するためのセキュリティプログラムに従って動作し、
    前記セキュリティプログラムと前記本体制御プログラムとを異なる記憶領域において記憶する記憶部を備えた
    請求項1記載の組み込み装置。
  3. 管理部は、セキュリティ機能部を更新するときに、記憶部の記憶領域のうちのセキュリティプログラムが格納された記憶領域のみ更新する
    請求項記載の組み込み装置。
  4. セキュリティ機能部は、組み込み装置外部からの入力に応じて接続先を本体制御部と管理部とのいずれかに切り替える
    請求項1から請求項のうちのいずれかに1項に記載の組み込み装置。
  5. セキュリティ機能を有する組み込み装置の制御方法であって、
    管理部が、組み込み装置の制御を行本体制御部とは独立して動作可能であって前記セキュリティ機能を実現するセキュリティ機能部を停止させた後に、前記セキュリティ機能部を更新し、更新した前記セキュリティ機能部を起動させ
    前記本体制御部が、前記セキュリティ機能部が停止しているときにも動作可能である
    ことを特徴とする組み込み装置の制御方法。
JP2017056245A 2017-03-22 2017-03-22 組み込み装置および組み込み装置の制御方法 Active JP6897203B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017056245A JP6897203B2 (ja) 2017-03-22 2017-03-22 組み込み装置および組み込み装置の制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017056245A JP6897203B2 (ja) 2017-03-22 2017-03-22 組み込み装置および組み込み装置の制御方法

Publications (2)

Publication Number Publication Date
JP2018160041A JP2018160041A (ja) 2018-10-11
JP6897203B2 true JP6897203B2 (ja) 2021-06-30

Family

ID=63795636

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017056245A Active JP6897203B2 (ja) 2017-03-22 2017-03-22 組み込み装置および組み込み装置の制御方法

Country Status (1)

Country Link
JP (1) JP6897203B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5297848B2 (ja) * 2009-03-18 2013-09-25 株式会社日立ソリューションズ プログラム動的更新システム、管理サーバ、組込み機器及びプログラム
US8589904B2 (en) * 2009-08-10 2013-11-19 Symantec Corporation Systems and methods for updating a software product
KR20160127478A (ko) * 2015-04-27 2016-11-04 삼성전자주식회사 소프트웨어 업데이트 방법 및 시스템

Also Published As

Publication number Publication date
JP2018160041A (ja) 2018-10-11

Similar Documents

Publication Publication Date Title
Moran et al. A firmware update architecture for internet of things
JP6298732B2 (ja) マイクロコンピュータ及びセキュリティ設定システム
TWI380216B (en) System and method for automated operating system installation
US12050692B2 (en) Secure and flexible boot firmware update for devices with a primary platform
US11568088B2 (en) Method, processor and device for checking the integrity of user data
US9594915B2 (en) Information processing apparatus
WO2010116473A1 (ja) 管理サーバ、ブートサーバ、ネットワークブートシステム、ネットワークブート方法、ブートイメージ選択プログラムおよびブートイメージ提供プログラム
US20180314832A1 (en) Information processing apparatus and computer readable storage medium
JP2009123100A (ja) 画像処理装置及び再インストール方法
CN105162667B (zh) 虚拟机配置方法和装置
JP6354336B2 (ja) クライアント装置、サービス実行システム、及びプログラム
JP6195465B2 (ja) 同期サーバ側スクリプティングを用いた遠隔カードコンテンツ管理
US20210073397A1 (en) Computing device and method for operating same
JP6897203B2 (ja) 組み込み装置および組み込み装置の制御方法
CN107995230B (zh) 一种下载方法及终端
JP2019008592A (ja) セキュアエレメント、コンピュータプログラム、デバイス、os起動システム及びos起動方法
CN110928564B (zh) 安全更新应用的方法、业务服务器、集群及存储介质
JP6451086B2 (ja) 中継装置、サービス実行システム、及びプログラム
JP2019016281A (ja) セキュアエレメント、コンピュータプログラム、デバイス、サーバ及びトラステッドアプリケーションのインストレーション方法
KR102402373B1 (ko) 정보 처리 장치 및 정보 처리 방법
JP2016157245A (ja) 情報処理装置、システム設定方法、及び、コンピュータ・プログラム
JP2007042038A (ja) 端末機器の制御装置及び制御方法
US20180011727A1 (en) Virtualization system, server, terminal, virtualization method, and program recording medium
JP6904453B2 (ja) プログラマブルデバイス適用認証システム及び認証方法
JP6904452B2 (ja) プログラマブルデバイス適用認証システム及び認証方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210216

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210315

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: 20210511

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210524

R150 Certificate of patent or registration of utility model

Ref document number: 6897203

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150