(57)【要約】      （修正有）【課題】プログラム実行時のプログラム検証機能により、システムのセキュリティを確保しつつ、情報処理装置の可用性を低下させずに利用可能な情報処理装置を提供する。【解決手段】情報処理装置における起動モードと対応するプログラムを格納する領域を起動モード毎に持つ格納手段と、前記情報処理装置において複数の起動モードによって起動できる起動制御手段３１７と、起動制御手段３１７によってマウントする領域を決定する決定手段３１８と、外部記憶装置に配置されるプログラムの実行時にプログラムを検証する検証手段３５１と、検証手段３５１において使用する実行を許可するプログラムのリストを生成する生成手段３１５と、生成手段３１５利用時に現在の起動モード以外の領域をマウントする領域マウント手段３１８と、を有する。【選択図】図３
2020197773.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置における起動モードと対応するプログラムを格納する領域を起動モード毎に持つ格納手段と、
前記情報処理装置において複数の起動モードによって起動できる起動制御手段と、
前記起動制御手段によってマウントする領域を決定する決定手段と、
前記外部記憶装置に配置されるプログラムの実行時にプログラムを検証する検証手段と、
前記検証手段において使用する実行を許可するプログラムのリストを生成する生成手段と、
前記生成手段利用時に現在の起動モード以外の領域をマウントする領域マウント手段と、
を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムの改ざん検知機能において利用されるホワイトリストの生成方法および生成プログラムに関する。
【背景技術】
【０００２】
情報処理装置を制御するプログラムを第三者が改ざんし、情報処理装置内の情報資産を盗む攻撃や、プログラムが改ざんされた情報処理装置を踏み台に利用する攻撃が問題になっている。このような攻撃を防止するために、情報処理装置内にプログラムが第三者によって改ざんされていないことを検証する方法が考案されている。
【０００３】
ユーザが情報処理装置によって実現される機能を利用するときに情報処理装置内のプログラムが改ざんされていないことを保証するためには、その機能を実現するプログラムの実行の直前に検証する必要がある。これは、プログラムの検証と実行の間に時間差があると、その間に改ざんされる場合に対応できないためである。
【０００４】
プログラムの実行直前にプログラムを検証する方法の例として、特許文献１には、プログラムの実行要求をフックするフッキングプログラムとホワイトリストを用いる方法が提案されている。ホワイトリストとは、起動が許可されたプログラムの一覧を示すリストである。この方法では、プログラム起動前に、プログラムのハッシュ値を計算してホワイトリストと比較し、一致する場合のみプログラムを起動する。プログラムの検証に失敗した場合、プログラムの実行要求に対してエラーを返す。この時、プログラムの実行要求に対する一般的なエラーによりプロセスにエラーを返す。ホワイトリストがない場合、プログラムの検証時に全プログラムがホワイトリストに記載されていないとみなされるため、全プログラムの検証に失敗し実行させないので、プログラムの検証を有効化する前にホワイトリストの作成が必須である。
【０００５】
この方法では、マルチプロセスでプログラムを実行する情報処理装置において、プログラムを実行する各プロセスがプログラムを実行する度にプログラムの検証を行う必要がなく、フッキングプログラムに検証を任せることができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２５９１６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
情報処理装置では、外部記憶装置に通常起動するモード以外の起動モードを持つことがある。これは、通常起動モードで何らかの問題が発生したときに、通常起動モードとは別の起動モードで起動することで通常起動モードのファームウェアの復旧や通常起動モードの診断を行うために利用される。そのため、別の起動モードのファームウェアは通常起動モードのファームウェアが保存される外部記憶装置内の領域とは別の領域に保存される。
【０００８】
起動モードを複数持つ情報処理装置にホワイトリストによる検証機能の適用時には、ホワイトリストによる検証機能を搭載しない起動モードがセキュリティホールとなる可能性があるため、全起動モードに対してホワイトリストによる検証機能を搭載する必要がある。また、ホワイトリストによる検証機能をいずれかの起動モードで有効にした場合にも同様の理由から全ての起動モードでホワイトリストによる検証機能を有効にする。ホワイトリストはユーザがホワイトリストによる検証機能の有効化した時に情報処理装置が生成する。
【０００９】
通常起動モードでの起動時にホワイトリストによる検証機能を利用するために通常起動モードのみのホワイトリストを作成すると、通常起動モード以外で起動した場合にホワイトリストがないため、そのモードで起動できなくなり可用性が低下する。
【００１０】
そのため、ホワイトリストによる検証機能を有効化した後に別の起動モードで初回起動するときにホワイトリストを作成する必要がある。しかし、別のモードでの初回起動までにその起動モードのファームウェアが改ざんされると、その起動モードのホワイトリストを改ざんされた状態で作成してしまう可能性がある。
【００１１】
以上から、複数の起動モードを持つ情報処理装置において、ホワイトリストによる検証機能を有効化した起動モードとは別の起動モードで初回起動時にその起動モードのホワイトリストを作成すると、可用性を確保できるもののセキュリティが低下する問題がある。
【００１２】
本発明の目的は、実行要求をフックすることでプログラムの起動前にプログラムの検証を実施する情報処理装置において、複数の起動モードを持つ場合に可用性を保ちつつセキュリティを確保することにある。
【課題を解決するための手段】
【００１３】
上記の目的を達成するために、本発明に係る情報処理装置は、
情報処理装置における起動モードと対応するプログラムを格納する領域を起動モード毎に持つ格納手段（４０１，４１１）と、
前記情報処理装置において複数の起動モードによって起動できる起動制御手段（３１７）と、
前記起動制御手段によってマウントする領域を決定する決定手段（３１８）と、
前記外部記憶装置に配置されるプログラムの実行時にプログラムを検証する検証手段（Ｓ１００６）と、
前記検証手段において使用する実行を許可するプログラムのリストを生成する生成手段（Ｓ４００４）と、
前記生成手段利用時に現在の起動モード以外の領域をマウントする領域マウント手段（Ｓ４００３）と、
を有することを特徴とする。
【発明の効果】
【００１４】
本発明に係る情報処理装置によれば、ユーザがプログラムの実行直前に検証されるプログラム実行検証手段を備えた情報処理装置を用いるときに、情報処理装置の可用性を下げずセキュリティを保ちつつユーザが利用可能にする。
【図面の簡単な説明】
【００１５】
【図１】本発明に係わるＭＦＰとＰＣの接続形態を示すブロック構成図である。
【図２】ＭＦＰのコントローラ部の内部構成図である。
【図３】ＭＦＰのコントローラ内で実行されるソフトウェアのブロック構成図である。
【図４】ＦｌａｓｈＲＯＭに配置されるデータの例である。
【図５】本発明のＭＦＰ側の処理を実施するフロー図である。
【図６】本発明のＭＦＰ側の処理を実施するフロー図である。
【図７】設定に係る画面構成図である。
【発明を実施するための形態】
【００１６】
以下、本発明を実施するための形態について、図面を参照しながら説明する。
【実施例１】
【００１７】
本実施例では、情報処理装置がプログラムを実行するときの実行時検証処理、及び検証失敗時の情報処理装置の制御処理について説明する。本書の実施例では情報処理装置の例としてＭＦＰ（Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎａｌ  Ｐｅｒｉｐｈｅｒａｌ：複合機）について記述するが、本発明は複合機以外の情報処理装置にも適用可能な技術である。
【００１８】
図１は本発明に係るＭＦＰとクライアントＰＣの接続形態を示すブロック図である。
【００１９】
ＭＦＰ１００とクライアントＰＣ１１０はＬＡＮ１２０を介して接続されている。ＭＦＰ１００はユーザとの入出力を行う操作部１０２を有する。ＭＦＰ１００は電子データを紙媒体に出力するプリンタ部１０３を有する。ＭＦＰ１００は紙媒体を読み込み電子データに変換するスキャナ部１０４を有する。操作部１０２とプリンタ部１０３とスキャナ部１０４はコントローラ部１０１に接続され、コントローラ部１０１の制御に従い複合機としての機能を実現する。クライアントＰＣ１２０はＭＦＰ１００に対してプリントジョブの送信といった処理を行う。
【００２０】
図２はＭＦＰのコントローラ部１０１の詳細を示すブロック図である。
【００２１】
ＣＰＵ２０１はコントローラ内の主な演算処理を行う。ＣＰＵ２０１はバスを介してＤＲＡＭ２０２と接続される。ＤＲＡＭ２０２はＣＰＵ２０１が演算する過程で演算命令を表すプログラムデータや、処理対象のデータを一時的に配置するための作業メモリとしてＣＰＵ２０１によって使用される。ＣＰＵ２０１はバスを介してＩ／Ｏコントローラ２０３と接続される。Ｉ／Ｏコントローラ２０３はＣＰＵ２０１の指示に従い各種デバイスに対する入出力を行う。Ｉ／Ｏコントローラ２０３にはＳＡＴＡ（Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）Ｉ／Ｆ２０５が接続され、その先にＦｌａｓｈＲＯＭ２１１が接続される。ＣＰＵ２０１はＦｌａｓｈＲＯＭ２１１をＭＦＰの機能を実現するためのプログラム、およびドキュメントファイルを永続的に記憶するために使用する。Ｉ／Ｏコントローラ２０３にはネットワークＩ／Ｆ２０４が接続され。ネットワークＩ／Ｆ２０４の先には、有線ＬＡＮデバイス２１０が接続される。
【００２２】
ＣＰＵ２０１はネットワークＩ／Ｆ２０４を介して有線ＬＡＮデバイス２１０を制御することで、ＬＡＮ１５０上の通信を実現する。Ｉ／Ｏコントローラ２０３にはパネルＩ／Ｆ２０６が接続され、ＣＰＵ２０１はパネルＩ／Ｆ２０６を介して操作部１０２に対するユーザ向けの入出力を実現する。Ｉ／Ｏコントローラ２０３にはプリンタＩ／Ｆ２０７が接続され、ＣＰＵ２０１はプリンタＩ／Ｆ２０７を介してプリンタ部１０３を利用した紙媒体の出力処理を実現する。Ｉ／Ｏコントローラ２０３にはスキャナＩ／Ｆ２０８が接続され、ＣＰＵ２０１はスキャナＩ／Ｆ２０８を介してスキャナ部１０４を利用した原稿の読み込み処理を実現する。Ｉ／Ｏコントローラ２０３にはＵＳＢ  Ｉ／Ｆ２０９が接続され、ＵＳＢ  Ｉ／Ｆに接続された任意の機器の制御を行う。ＲＯＭ２２０はＣＰＵ２０１とバスで接続されていて、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）を実現する制御プログラムが記憶している。
【００２３】
コピー機能を実施する場合は、ＣＰＵ２０１がＳＡＴＡ  Ｉ／Ｆ２０５を介してＦｌａｓｈＲＯＭ２１１からプログラムデータをＤＲＡＭ２０２に読み込む。ＣＰＵ２０１がＤＲＡＭ２０２に読み込まれたプログラムに従いパネルＩ／Ｆ２０６を介して操作部１０２に対するユーザからのコピー指示を検出する。ＣＰＵ２０１はコピー指示を検出するとスキャナＩ／Ｆ２０８を介してスキャナ部１０４から原稿を電子データとして受け取りＤＲＡＭ２０２に格納する。ＣＰＵ２０１はＤＲＡＭ２０２に格納した画像データに対して出力に適した色変換処理などを実施する。ＣＰＵ２０１はＤＲＡＭ２０２に格納した画像データをプリンタＩ／Ｆ２０７を介してプリンタ部１０３に転送し、紙媒体への出力処理を実施する。
【００２４】
ＰＤＬ印刷を実施する場合は、クライアントＰＣ１２０がＬＡＮ１５０を介して印刷指示を行う。ＣＰＵ２０１はＳＡＴＡ  Ｉ／Ｆ２０５を介してＦｌａｓｈ２１１からプログラムデータをＤＲＡＭ２０２に読み込み、ＤＲＡＭ２０２に読み込まれたプログラムに従いネットワークＩ／Ｆ２０４を介して印刷指示を検出する。ＣＰＵ２０１はＰＤＬ送信指示を検出するとネットワークＩ／Ｆ２０４を介して印刷データを受信し、ＳＡＴＡ  Ｉ／Ｆ２０５を介してＦｌａｓｈＲＯＭ２１１に印刷データを保存する。ＣＰＵ２０１は印刷データの保存が完了すると、ＦｌａｓｈＲＯＭ２１１に保存した印刷データをＤＲＡＭ２０２に画像データとして展開する。ＣＰＵ２０１はＤＲＡＭ２０２に格納した画像データに対して出力に適した色変換処理などを実施する。ＣＰＵ２０１はＤＲＡＭ２０２に格納した画像データをプリンタＩ／Ｆ２０７を介してプリンタ部１０３に転送し、紙媒体への出力処理を実施する。
【００２５】
図３はＭＦＰのコントローラ部１０１で実行されるソフトウェアの構造をあらわすブロック図である。
【００２６】
コントローラ部１０１で実行されるソフトウェアは全て、ＣＰＵ２０１が実行する。
コントローラ部１０１のソフトウェアはカーネル３５０とコントローラソフト３０１から構成される。
【００２７】
カーネル３５０はカーネルの制御ソフトとしてプログラム検証部３５１を有する。プログラム検証部３５１はプログラム実行要求部３１１からのＦｌａｓｈＲＯＭ２１１上に配置されるプログラム４０１の実行要求をカーネル空間でフックし、実行要求されたプログラムファイルの検証を行う。プログラム検証部３５１が実行要求されたプログラムの検証に成功した場合は、ＭＦＰ１００が実行要求されたプログラムを実行する。プログラム検証部３５１が実行要求されたプログラムの検証に失敗した場合は、ＭＦＰ１００が実行要求されたプログラムを実行させない。
【００２８】
コントローラソフト３０１の構成要素について説明する。操作制御部３０２は操作部１０２にユーザ向けの画面イメージを表示、およびユーザ操作の検知と画面上に表示したボタン等の画面部品に紐づけられた処理を実行する。データ記憶部３０３は他の制御部からの要求でデータをＦｌａｓｈＲＯＭ２１１に記憶、および読み出しを行う。例えば、ユーザが何らかの機器設定を変更したい場合は、操作部１０２にユーザが入力した内容を操作制御部３０２が検知し、操作制御部３０２からの要求でデータ記憶部３０３が設定値としてＦｌａｓｈＲＯＭ２１１に保存する。ネットワーク制御部３０８はデータ記憶部３０３に記憶された設定値に従い、システム起動時や、設定変更検出時にＩＰアドレスなどネットワーク設定をＴＣＰ／ＩＰ制御部３０９に行う。
【００２９】
ＴＣＰ／ＩＰ制御部３０８は他の制御からの指示に従い、ネットワークＩ／Ｆ２０４を介して、ネットワークパケットの送受信処理を行う。ジョブ制御部３０４は他の制御部からの指示に従って、ジョブ実行の制御を行う。画像処理部３０５はジョブ制御部３０４からの指示に従って、画像データを用途ごとに適した形式に加工する。印刷処理部３０６はジョブ制御部３０４からの指示に従い、プリンタＩ／Ｆ２０７を介して、紙媒体に画像を印刷し出力する。読み取り処理部３０７はジョブ制御部３０４からの指示時に従い、スキャナＩ／Ｆ２０８を介して、設置された原稿を読み込む。ＵＳＢ制御部３１０はＵＳＢ  Ｉ／Ｆ２０９を制御し、ＵＳＢ接続された任意の機器の制御を行う。プログラム実行要求部３１１はＦｌａｓｈＲＯＭ２１１上のプログラム４０１を実行することをカーネル３５０に対して要求する。プログラム更新部３１６はコントローラソフト３０１を構成するプログラム４０１を、設置環境で更新する処理を行う。
【００３０】
ホワイトリスト管理部３１５は、ユーザがプログラムの実行時検証機能の有効化／無効化するときに、ホワイトリスト４０５の生成／更新を行う。起動モード判別部３１７は、システム起動時にＦｌａｓｈＲＯＭ２１１に記録された起動モードフラグ４２１を読み取り、通常起動モードか、セーフモードかを判別し起動する。マウント部３１８に起動モード判別部によって判断されたモードにあわせた起動モード領域をマウントする。例えば、コピー機能を実行する場合は、コピー機能を持つアプリケーションを起動して操作制御部３０２にコピー画面の表示を指示する。操作制御部３０２がコピー機能の開始要求を検知し、ジョブ制御部３０４にコピーを指示する。ジョブ制御部３０４は読み取り処理部３０７に原稿読み取りを指示し、スキャン画像を取得する。ジョブ制御部３０４は画像処理部３０５に指示し、スキャン画像を印刷に適した形式に変換する。ジョブ制御部３０４は印刷処理部３０６に印刷を指示し、コピー結果を出力する。
【００３１】
図４に、ＦｌａｓｈＲＯＭ２１１に配置されるデータの例を示す。
【００３２】
通常起動モード領域４０１には実行可能プログラム４０２、ホワイトリスト４０５が配置される。実行可能プログラム４０２にはＯＳのプログラムおよび機能を提供するプログラムおよびＭＦＰ上で動作するアプリケーション機能を実現するプログラムが含まれる。ホワイトリスト４０５はプログラム検証部３５１が通常起動モード領域のプログラムを検証するときに参照するリストである。
【００３３】
セーフモード領域４１１には実行可能プログラム４１２、ホワイトリスト４１５が配置される。実行可能プログラム４１２にはＯＳのプログラムおよび機能を提供するプログラムが含まれる。ホワイトリスト４０５はプログラム検証部３５１がセーフモード領域のプログラムを検証するときに参照するリストである。
【００３４】
表Ａにホワイトリスト４０５の例を示す。ホワイトリスト４０５はコントローラソフト３０１に含まれる通常起動モードの全ての実行可能プログラム４０２に対して、ファイルパス５０２とハッシュ５０６の組み合わせをリスト化したものである。データの内容としては、少なくともファイル名称、ファイルの配置場所（ディレクトリ上の位置）、ファイルから計算したハッシュ値を含むものとし、ハッシュ値等の情報がリスト化される。ユーザが操作部１０２からプログラムの実行時検証を有効化したときに、ホワイトリスト管理部３１５がホワイトリスト４０５を生成する。プログラム更新部３１６がプログラム４０７を更新したときに、ホワイトリスト管理部３１５がホワイトリスト４０５を更新する。
【００３５】
【表１】
2020197773.tif 000003
図７はセキュリティ設定画面１５０１であり、ＭＦＰ１００に対するセキュリティ設定を行う。プログラムの実行時検証１５０２を選択すると、機能実行時に行うプログラム検証機能が有効化される。ボタン１５０３を押下すると、セキュリティ設定画面１５０１の選択状態が、機器設定としてデータ記憶部３０３に記憶される。
【００３６】
図５を用いて、ユーザがプログラムの実行時検証機能を有効化するときのホワイトリスト４０５の生成処理フローを説明する。この処理はユーザが改ざん検知機能の有効化を要求するときに行われる。ここで、ＭＦＰが実施する処理はホワイトリスト管理部３１５が実施するものである。以下の説明で、ＭＦＰが実施する処理はＭＦＰが通常起動モードでの起動時にＦｌａｓｈＲＯＭ２１１に格納されたプログラムをＣＰＵ２０１がＤＲＡＭ２０２に読み込んだ後、ＣＰＵ２０１の演算処理として実施するものである。
【００３７】
ユーザがプログラムの実行時検証機能を有効化する要求をＭＦＰの操作部１０２から行う。操作制御部３０２がユーザからのプログラムの実行時検証機能の有効化要求を受信する。
【００３８】
Ｓ４００１でホワイトリスト管理部３１５が操作制御部３０２から改ざん検知機能の有効化要求を受信することで生成処理フローが開始される。Ｓ４００２でホワイトリスト管理部３１５がホワイトリストの有効化要求を受信する。Ｓ４００３でホワイトリスト管理部３１５がＭＦＰ内のＦｌａｓｈＲＯＭ２１１に配置されている通常起動モード領域４０１に格納される全ての実行可能プログラム４０２を検索し、検索した実行可能プログラムのハッシュ値を計算する。実行可能プログラムのファイルパス５０１と計算したプログラムのハッシュ値５０２を通常起動モード領域のホワイトリスト４０５に記載する。
【００３９】
Ｓ４００４でホワイトリスト管理部３１５がマウント部３１８にＦｌａｓｈＲＯＭ２１１のセーフモード領域４１１をマウントするように命令しマウント部３１８がセーフモード領域４１１をマウントする。Ｓ４００５でホワイトリスト管理部３１５がＭＦＰ内のＦｌａｓｈＲＯＭ２１１に配置されているセーフモード領域４１１に格納される全ての実行可能プログラム４１２を検索し、検索した実行可能プログラムのハッシュ値を計算する。実行可能プログラムのファイルパス５０１と計算したハッシュ値５０２をセーフモード領域のホワイトリスト４１５に記載する。
【００４０】
図６を用いて、プログラム検証部３５１がプログラム４０１を検証する処理フローを説明する。この処理はプログラム実行要求部３１１が通常起動モード領域４０１のプログラム４０２または通常起動モード領域４１１のプログラム４１２の実行要求を行うたびに行われる。以下の説明で、図６のＭＦＰが実施する処理はＦｌａｓｈＲＯＭ２１１に格納されたプログラムをＣＰＵ２０１がＤＲＡＭ２０２に読み込んだ後、ＣＰＵ２０１の演算処理として実施するものである。
【００４１】
Ｓ１００２でプログラム実行要求部がＦｌａｓｈＲＯＭ２１１上に配置されたプログラム４０１の実行要求をカーネル３５０に対して行う。Ｓ１００３でプログラム検証部３５１がプログラムの実行要求をフックして、ホワイトリスト４０５を用いて実行要求されているプログラムの検証を行う。Ｓ１００４の検証は、プログラム検証部３５１がホワイトリスト４０５に記載されているプログラムのファイルパス５０１の中に実行要求されたプログラムのファイルパスと一致するものがあるかを検証する。例えば、実行要求されたプログラムのファイルパスが「／ｂｉｎ／ｃａｔ」であった場合、表Ａのホワイトリスト４０５の例のファイルパス５０１の中に一致するものがあるので、プログラム検証部３５１は「／ｂｉｎ／ｃａｔ」の検証は成功したと判断する。
【００４２】
Ｓ１００４でプログラム検証部３５１がホワイトリスト４０５に実行要求されたプログラムがあると検出した場合、Ｓ１００５でプログラム検証部３５１が実行要求されたプログラムのハッシュ値を計算する。Ｓ１００６でプログラム検証部３５１がＳ１００５で計算したハッシュ値をホワイトリスト４０５上にあるハッシュ値５０２と比較する。Ｓ１００５で再計算されたハッシュ値とホワイトリストに記載されているハッシュ値５０２が一致した場合は、ＭＦＰ１００が実行要求されたプログラムを実行する。Ｓ１００４でプログラム検証部３５１がホワイトリスト４０５に実行要求されたプログラムがなかった場合、Ｓ１００８でプログラム検証部３５１がプログラム実行要求部３１１にエラーを通知しプログラムを実行しない。Ｓ１００６でプログラム検証部３５１がＳ１００５で再計算したハッシュ値とホワイトリスト４０５のハッシュ値５０２が一致しないと検出した場合もＳ１００８でプログラム検証部３５１がプログラム実行要求部３１１にエラーを通知しプログラムを実行しない。
【００４３】
以上、実施例１によりプログラムの実行時に改ざんを検証するシステムにおいて、実行を許可するプログラムのリストを全ての起動モードで一度に作成することで、セキュリティを保ちつつ可用性を確保してユーザがＭＦＰを利用可能である。
【００４４】
［他の実施例］
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００４５】
１００  ＭＦＰ、３１５  ホワイトリスト管理部、３１７  起動モード判別部
【図１】
2020197773.tif 000004
【図２】
2020197773.tif 000005
【図３】
2020197773.tif 000006
【図４】
2020197773.tif 000007
【図５】
2020197773.tif 000008
【図６】
2020197773.tif 000009
【図７】
2020197773.tif 000010