OPC-UA ラッパーによる OPC-Classicの セキュリティー強化 橋本芳宏 (名古屋工業大学) IAFフォーラム2014 2014年6月25日 機械振興会館 発表のながれ どんなことを仕掛けてくるかわからないサイバー攻撃には、 何が起こるかわからないという環境で生き延びている生物から学べないか? 多様性により、一部の生き残りを期待し、そこでの検知、対策へとつなげる 1. どんな工場にも、サイバー攻撃の脅威は存在 愉快犯にとっては、攻撃しやすいところで、成功すればいい。 2. 制御系の攻撃って、こんなに簡単! 名古屋工業大学でのデモは、実際の攻撃や防御策の効果をお見せします。 3. 具体的な対策は、いろいろ導入できるようになってきました。 パケット監視、ハニーポットなど情報系と共通の対策以外に、OPC-UAというプラント制御特定の対応も 4. セキュリティ対策は、イタチごっご 攻撃は想定外をねらってくる 5. 制御系にとってサイバー攻撃は、「悪意の誤操作、悪意の故障」 リスクは攻撃によって生まれるのではなく、制御対象が本来持っているもの 6. サイバー攻撃に対して、多重化、多層化の安全対策は有効? エージェントは多数発生しうるので、同じ脆弱性をもてば、同時に侵される。 7. 異質なものであれば、同時にやられないかも(ホモとヘテロ) OS,アプリケーション開発言語、ネットワークカード、通信プロトコル、認証方式など 同じ機能を実現する製品には、ハード・ソフト多数の要素が存在する 遺伝子と部品に共通性があるのでは? 8. 異質な部屋に印鑑と通帳をおかないと! 8-1. すべての部屋を同時にやられないためには? OPC-UAも有力な対策の一つ 8-2. 何を別の部屋に置くべきですか? ゾーンの設計CAD どんな工場にも、サイバー攻撃の脅威は存在 Stuxnet (Epoch making Malware detected in 2010) 物理的な攻撃を実現する最初のサイバー兵器 developed by USA and Israel governments 標的: イランの核燃料施設の遠心分離器(シーメンスのPLC) インターネットやUSBを介して感染拡散し、 標的でのみ発症 発症後も攻撃を隠蔽し、長期継続 インターネットに接続されていないPLCが 調整用PCを介して感染、プログラムが改竄された。 多くのzero-day (未発見)の脆弱性が利用されたので、 ウィルス対策ソフトは役に立たなかった。 Stuxnetの亜種 は、愉快犯でも作成できる。 地理的条件はサイバー攻撃には無関係 うちのプラントは攻撃されないだろうという甘い期待は成立しない Quantum作戦(2014年2月報道)PCメーカー協力で出荷時に発信器など 戦争ではなんでもあり (OS-Updateを悪用すれば、できないことはない) 中国はWindows8の導入を禁止(2014年5月) 疑いだしたら、きりがない ⇒ じゃあ、どんなスタンスで検討すべき? 制御システムの脆弱性 • 制御システムを破綻させるなんて簡単 (コントローラの符号を変更するのは、一つのコマンドを送るだけ) • コントローラの仕様はオープンである。 (各コントローラのコマンド群情報は無料ダウンロードできる) • 制御ネットワークのProtocolはセキュリティが考慮されていなかった。 (Wiresharkというフリーソフト等で、簡単に傍受解析できる) • コントローラでは、ウィルス対策ソフトは稼働させない。 (リアルタイムの制御動作の実現が最優先) • セキュリティパッチも、適用しない。 (パッチが制御アプリへ影響し、不調になることを危惧) • ネットに繋がっていなくても、調整時にはPCを接続 (Stuxnetのように調整用PCに攻撃が潜んでいる可能性がある) • ウィルス対策ソフトの検索対象は、2割以下 (自動UPDATEされていれば、古いウィルスは感染しても発症しない) • DCS等制御システムの更新頻度は低い(15年~25年に一度?) (新しい錠が開発されるたびに錠を更新し続ける人はいないけど) 安心なんかしてられない。攻撃には想定外はつきもの 矛と盾 サイバー攻撃に ルールなんかあるか! 攻撃と対策は いつまでたっても イタチごっご えーっ、そんなんあり~?! えーっ、盾で囲んだのに! 地面に仕込んだ爆弾で! ウルトラマンなら どんな相手でも スペシウム光線 でOKなのに! フリーウェアと簡単な工夫で! 写真を映させて その間に金庫を! 9 フリーウェア(Matesploit)と 学生自作ツールで、実際の計装が 上図の金庫破りのように、 隠蔽工作の上、遠隔操作され、 事故が発生してしまうデモを 名工大でご覧いただけます 6 攻撃デモ:OPC-DAサーバーを改竄 Inetrnet OPC-DAのタグ定義ファイルを書き換え、 現場コントローラは操作され、事故が発生するが、 SCADAでは変化が見えない! Global Internet Address ① インターネットから侵入 Metasploitによるハッキング ファイアウォール HUB0 ・Nmapによる脆弱性スキャン 業務系NW InternetNetwork ・脆弱性をつくExploitによる攻撃 業務系NW ② 攻撃対象探査 GateWay1 OPCデータサーバ 192.168.1.0/24 内部ネットワークの端末特定 HUB1 ③ クラッキング 192.168.1.0/24 OPCサーバー構成ファイルの改竄 制御系NW Gateway3 GateWay2 192.168.11.0/24 GateWay3 192.168.12.0/24 OPCサーバーの再起動 192.168.12.0/24 192.168.11.0/24 制御系NW Hub2 Hub3 ④ リモート操作と隠蔽による事故発生! OPC2に侵入 現場では、安全弁が吹き、 操作・隠蔽 OPC2 OPC1 パトライトが点灯するが、 コントロールルームでは、変化なし UT35A(LC1) UT32A(PI) UT32A(TC1) UT35A(FC) UT32A(TI2) UT32A(LI2) (ただし、ゾーン分割すれば、他の 他ゾ-ンで このSCADAで 7 ZONE1 Controller ZONE2 Controller ゾーンのSCADAでは変化を観測) SCADA1 SCADA1 気づける は見えない ルーター 業務用 WEB server&SQL server Windows 2003 sp2 様々な脆弱性が存在するが、OPCも強化したい Object Linking and Embedding (OLE) for Process Control OPC-UA OPC-Classic (Unified Architecture) 様々なベンダー装置・アプリ間での データ交換標準として 普及している。 OGIS総研 米野氏資料より OPC-UAのセキュリティ対策 OPC-Classicでは、 なりすましや改竄に対する 対策はないし、 DCOMの設定では、 侵入口であるポートも開けてしまう。 OPC-UAは、プロトコルとして セキュアであり、 プラットホームにバリエーション 9 OGIS総研 米野氏資料より OPC-UA Wrapperの導入(予定) SCADAやOPCサーバーは、OPC-Classicのまま、 通信系のセキュリティを向上するのに、ラッパーの導入という方法も OPC-UAへの更新は、 サーバーのみならず、 関係アプリ・装置の 大幅投資になるので、 過渡的な手段として 従来システムには 変更が必要ない OPC-UA Wrapper の導入も検討。 DCOM OPC通信する装置の LAN端子に UA-Wrapperを 接続するだけで UAのセキュリティで 通信可能になる DCOM OPC COM OPC COM Server Client UA COM Wrapper UA COM Proxy SOAP/HTTP or UA TCP UA COM Wrapper UA COM Proxy OPC COM OPC COM Server Client 10 UA COM Wrapper UA COM Proxy OPC COM OPC COM Server Client ISO-62443-3 Security for industrial process measurement and control Zone & Conduit で、セキュリティ対策の設計・評価 「部屋の鍵」と「廊下の監視の頑強さ」で、やられにくさを調整 通信プロトコルに OPC-UAを利用し、 Conduitに パケット監視、 ファイアウォールを 頑強に などの対策 制御の観点でのゾーンの議論は? 現状のゾーンは、 プラントごとの 11 コントローラネットが 最小単位 サイバー攻撃への安全対策の特徴は? 現在の制御系ネットワークは、正門の警備に力を入れても、中は、出入り自由の状態 制御系ネットワーク 鍵・錠や監視カメラやパトロールは? なんとしてでも 入れるし、 中に入ったら、 ちょろいもんやね。 サイバー攻撃は、 悪意の誤操作、悪意の故障 フール・プルーフとフェイル・セーフ を同時多発を前提に徹底すべき この門は、通さねえ! これまでの安全対策では、同じもので多重化しても、 事故発生確率は下がるとしたが、サイバー攻撃に対しては 異質なものでないと! 「ホモ と ヘテロ」 安全をベースにしたセキュリティの議論 サイバーセキュリティは、安全に対するリスクのひとつ ハザードは攻撃の手口で決まるのではなく、 制御対象の特性で決まる。 (危険物を扱っている?高温・高圧になる?) どんな攻撃が襲ってくるかわからなくても、対策は検討しうる。 安全対策は事故原因の隔離と多重・多層による防御が基本 (印鑑と通帳は別にして、玄関、部屋に鍵をかけ、金庫に入れる) 何を隔離し、どのように多重化・多層化を行うか? ゾーン分割(ISO62443 Zone & Conduit)を どのような観点で、どのようなツールで検討すべきか サイバー攻撃は、インテリジェントシステムしか操作できないから インテリジェントのないものを利用することも一つの案ではある。 ゾーン分割におけるヘテロ すべてのゾーンが、いっぺんに陥落すると、ゾーンに分ける意味がない。 サイバー攻撃では、特に、大量のエージェントでの同時攻撃もありうる。 ハードウェアだけでなく、ゾーンごとの独自性を確保するソフトウェア設定も問題 ・同じファイアーウォールの設定や暗号キーの差異だけなら、 同時に陥落してしまう可能性が高くなる。 ・プラント計装の情報共有は、OPC(OLE for Process Control) が世界標準 OPCは元々MicrosoftのDCOM通信の規格で、OPC Serverは Windowsマシンでしか稼働しなかったが、 OPC-UA(Unified Architecture)になり、様々なマシンで稼働する セキュリティも高度に考慮できる規格に発展し、今後の進展が期待されている。 ・OPC-UAの基準は決定されたが、OPC-UAでのSCADAやLinux上のOPC Serverなどは、 まだ市販されていない段階 ・ゾーンごとのセキュリティの独自性を確保するためのOPC-UAのうまい適用方法は これからの検討課題 • OPC-UA Wrapperを従来のOPC-DAサーバーとSCADAの間に挿入し、SCADAの通信 相手は、OPC-UA Serverになったように変更するのも、有力な対応方法 名古屋工業大学のテストベッドを例に、 ゾーン分割の検討を説明する 15 テストベッドでの安全検討 電動コント ロール弁 現場計器 ボールバ ルブ 配管 安全弁 フランジ 伝送器 ソケット LG 1 LM 2 Tank2 TM 2 Valve4 LC1 Valve2 Valve3 FC LG 1 TC1 FM Valve1 下部タンクのヒータで水を 温め,ポンプで上部タンク へ供給する温水循環シス テム H PM TM 1 図1. 温水循環システム Tank1 PUMP W LM 1 センサ [ LM1 LM2 TM1 TM2 PM FM ] アクチュエータ [ V1 V2 H W ] コントローラ [ LC1 TC1 FC ] ヒータHで ”空焚き事故” が起こることを 想定し,攻撃 者目線でFTを 作成 空焚き事故を想定したFT図 隠蔽されていても事故に 至るまでに異常に気づけ ば発生確率は低下 タンク ,ヒータ の機能不全 同時に攻撃されなけれ ば発生確率は低下 上部事象に 至るまでの 時間を確保 タンク1とタンク2の 液位が異常である と気が付かない 上部事象に 至る状態を 作る タンク1とタンク2の 温度が異常である と気が付かない タンク1内の 液位Low タンク1の温 タンク1の温 T1iのHigh 度を正常で 度を正常で アラームを解 あるかのよう あるかのよう 除・監視画面 に隠蔽 に隠蔽 を表示しない タンク1水位コン トロールを破綻 LC タンク1 水位 の設定値を 低く タンク1内の 温度High TC ヒータのコン ヒータ トローラ 出力をある インターロッ Auto→Manu 一定の値以 ク解除 al 上にする 図2. 空焚き事故を想定したFT図 タンク1液位 のLowアラー ムを解除・監 視画面を表示 しない タンク1の目 タンク1の液 タンク2の液 L2iのHigh 標設定値を 位を正常であ 位を正常であ アラームを解 正常であるか るかのように るかのように 除・監視画面 隠蔽 隠蔽 のように隠蔽 を表示しない タンク1の 流入弁を閉 じる タンク1の流 出弁を全開 ゾーン分割と攻撃隠蔽検知 サイバー攻撃は、悪意の誤操作とセンサー故障 これまでの安全解析でも、誤操作やセンサー故障は扱われており、 サイバー攻撃が異なるのは、悪意により多重に、誤操作と故障が発生する点である。 悪意による誤操作を隠蔽工作というセンサー故障で検知できない状態にされては、 Fail SafeとFool Proofで設計していたとしても事故を防ぐことは難しい。 まず、多重のゾーンにし、検知システムを張り巡らすことで、 建物に侵入できても、金庫に到達する前に検知するというように 事故の直接原因に悪意の操作や隠蔽を到達させない工夫が考えられる。 それ以外にも、一部の操作が行われて、その部分では、隠蔽されていても、 プラントの物理的な接続関係から、その隠蔽された変化を検知することも考えられる。 たとえば、テストベッドのタンクの2つの液位計が別のゾーンに配置されていれば、 下のタンクが空にされたことが隠蔽されても、その分は上のタンクに移動しており、 上のタンクの水位計で変化が検知できる可能性がある。 通帳と印鑑のゾーン分割例 制御ネットワークを複数のゾーンに分割して ゾーンごとに錠(ファイアーウォール等)を設定 Zone2 Zone1 ・同時に陥落してはならないコントローラを 異なるゾーンに配置することでリスクを分散 Zone3 SCADA1 SCADA2 SCADA3 OPC Server1 OPC Server2 OPC Server3 ・隠蔽工作があっても、 一部のゾーンが生き残れれば、 異常の検出が可能になる ゾーンをいくつに分割し、各ゾーンに、 どのようにセンサ、アクチュエータ、 コントローラを振り分けるかで リスクの低減、異常検知能力の向上が 変わる。 ゾーンの設計手法が必要。 PLC PLC P T L Pi T2i L1i PLC F Fi T V1 H(Heater) V2 TC LC FTA T1i L W(Pump) L2i TI LI 検知 検知 計装ネットワークのゾーン分割工事 一つのプラントの計装ネットワークをゾーンに分割って、どんなふうに? ゾーンごとにOPCサーバーを設置し、情報を共有し、OPCサーバー間にファイアーウォール等 (従来型計装) (フィールドバス計装) ・プラントからの配線はそのまま ・計器室内の配線切替工事で済む 日本の大半のプラントはこちら ・フィールドバスを複数設置 ・接続機器をフィールドバスに分配 [現地装置ごとの工事+計器室] テストベッドのゾーン分割 Zone1 Zone2 ZoneごとにRS485接続で OPCサーバーには MODBUS-ETHER接続 監視アプリ 21 CADによるゾーン設計 人間なら、PFD (Process Flow Diagram)を眺めながら、 「片方の液位センサーの変化が隠蔽されても、もう片方の液位センサーで検出できるはず」 「ヒータの過熱は、流れがあれば、上のタンクの温度計でも検知できるはず」 などと、議論できるが、コンピュータに、そのような議論をさせるとしたら? 電動コント ロール弁 現場計器 ボールバ ルブ 配管 安全弁 フランジ 伝送器 ソケット LG 1 LM 2 Tank2 TM 2 Valve4 LC1 Valve2 Valve3 FC LG 1 TC1 FM Valve1 プロセス設計や 動的シミュレーション用の CAD(Computer Aided Design) ツールは多く存在する。 H PM TM 1 それらの多くは、装置モ ジュールアイコンの接続で、 PFDを作成し、全体の DAE(Differential Algebraic Equations)を合成し、数値積 分により、シミュレーションを 実行する構造になっている。 Tank1 PUMP W LM 1 DAEの数値積分ではなく、 セキュリティのためのゾーン 分割の優劣を評価したい。 CE行列による隠蔽検出能力評価 R行列(Reachability Matrix:可到達行列)と D行列(Detectability Matrix:可検出行列)を算出し、 一部のゾーンの陥落で生じうる影響評価と 生き残っているゾーンのセンサ値で攻撃を検知する能力を判定 PLC P Pi PLC L V2 L1i ゾーン1 T T2i PLC F Fi T V1 H(Heater) ゾーン2 T1i L W(Pump) L2i ゾーン3 ゾーン1とゾーン2の操作・改ざ んを検出できるか? 侵入成功!! 各ゾーンにどのように コントローラが振り分けられ、 どのゾーンが陥落したか によって、プラントの挙動は 異なるので、 ゾーン構成と陥落状況ごとに、 CE(Cause-Effect)行列を作成し、 隠蔽検出能力をチェックする。 CE行列によるゾーン陥落状況の表現(1) まず、テストベッドのプラントのCE行列Pの合成 P PV L1 PV L2 PV T2 PV T3 PV F2 PV P2 MV V2 MV V3 MV H MV W O.PV O.L1 O.PV O.L2 O.PV O.T2 O.PV O.T3 O.PV O.F2 O.PV O.P2 O.MV O.V2 O.MV O.V3 O.MV O.H O.MV O.W PV L1 PV L2 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 PV T2 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 PV T3 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 PV F2 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 PV P2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 MV V2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 MV V3 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 MV H 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 MV W 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 O.PV O.L1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 O.PV O.L2 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 O.PV O.T2 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 O.PV O.T3 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 O.PV O.F2 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 O.PV O.P2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 O.MV O.V2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 O.MV O.V3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 O.MV O.H 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 O.MV O.W 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 このプレゼンテーションでは、 ここに示すようなブール代数の行列を 用いてプラントや制御の特性を表現し、 センサーやアクチュエータへの サイバー攻撃の影響を解析する手法を開発して CADの中で利用しているということだけ を示したいので、 解析手法の解説はスキップさせていただきます。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 ・観測値の偽装や操作の隠蔽を扱うため、 実際のプラントの値を示すPV、MV以外に 観測値を示すO.PVとO.MVを設定している。 ・P行列は、20×20の正方行列だが、 PVに当たる上6行以外は単位行列 ・Cause-Effectの構造は、プラント全体のDAE (Differential Algebraic Equations)の構造解析により合成 遠隔操作と隠蔽工作の検知能力評価 遠隔操作と隠蔽の影響の検知 可検出行列 可到達行列 𝐷𝑚 = 𝑂𝑠 ∙ 𝑅𝑎 ∙ 𝑀𝑎 𝑅𝑎 = Zone Zone Os 1 1 1 1 1 O.PV O.PV O.PV O.MV O.MV 弁V3の操作は、液 位に影響し、流量 も変わるので、温 度も変わる O.L1 O.T3 O.P2 O.V2 O.W 2 MV V3 𝑂 ∙ 𝑃 ∙ 𝐶𝑎 𝑘 𝑘=1 遠隔操作行列 可検出行列 Dm 観測(隠蔽)行列 ∞ 2 MV コントローラ行列 プラント行列 H 1 1 0 0 0 0 1 0 0 0 ヒータHの操作で、 温度が変化し、 循環流を通じて、 もう片方のタンクの 温度も変わる どちらの列も、ゼロの列ではないので、 ゾーン2への遠隔操作は ゾーン2内で隠蔽されても ゾーン1 で検知可能と判定 隠蔽下での遠隔操作の検出用ゾーンの設計ツール 26 ゾーン分割の提案 ゾーンを色で表現して 提案を表示 FIC F( 7 ) F(1) (1) (7) L1{2} LIC {2} {5 {5 }} {4} FIC (2) {1} LIC L1{1} {6 {6 }} 27 (4) {3} 攻撃の検出と対応策の検討 現在、ゾーン分割により、一部のゾーンだけが攻略されたときに、 ・その攻撃を検出する手法、 ・攻撃を検出したのちの対応を合成する手法、 ・さらに効率的に復旧させるための手順 などについても、検討を進めている。 制御系を対象としたセキュリティ対策製品がようやく出てきた状況 にあると認識している。 今後、サイバーセキュリティによる大事故が起こらなくても、 セキュリティ対策の製品の導入が進んでいけば、 制御の現場のサイバーセキュリティに対する意識が高まり、 大事故の発生を防ぐセキュリティ対策が急速にすすむのではない かと期待している。 28 おわりに 従来,情報システム技術者の問題とされがちだったセキュリティ問 題に対してプラントの技術者が貢献するアプローチの例を示した。 リスクは、すでに認識されていると思われるが、実際に、セキュリ ティ対策が実施された例は、まだあまりないと思われる。 どれだけ投資をしたところで、完全なセキュリティなど望めないが、 だからといって、事故が起こるまで手を打たないと、 玄関の鍵を閉めることすらしないという家庭や会社はないだろう。 一新して飛躍的にセキュリティを向上させるのでなくても、 着実に向上させるアプローチはありえるし、社会的な責任の面で、 その姿勢が望まれるのではないだろうか。 今回、セキュリティに対して真摯に議論されようと、この会議に出席 されておられる皆様が、職場の安全を守る活動を展開されるのに、 少しでもお役に立てればと願っています。ぜひ、名工大にお越しい ただき、デモをご覧になりながら、今後の展開について議論させて いただければと存じます。どうぞ、よろしくお願いします。 橋本芳宏 参考文献 • • • • • • • • 制御監視システムとサイバーセキュリティー: 上原利重、ヒューマンファクターズ, 15 ,2 (2011) サイバーテロを想定した場合のリスク解析と対策の構築: 豊嶌剛史、孫晶、越島一郎、橋本芳宏、 ヒューマンファクターズ, 15 ,2 (2011) Scada Engine BACnet OPC Client Buffer Overflow Vulnerability, http://ics-cert.us-cert.gov/advisories/ICSA-10-264-01 プロセス制御におけるサイバーセキュリティ実現の考え方と技術者の役割: 橋本芳宏、計装 6月号(2013) 制御システムにおけるセキュリティ問題<セーフティを中心にしたセキュリティ対策> 橋本芳宏、計装技術 8月号(2013) テストベッドでのセキュリティ向上策の検討とOPC UAへの期待: 橋本芳宏 計装10月号(2013) Safety securing approach against cyber-attacks for process control system.: Yoshihiro Hashimoto, Takeshi Toyoshima, Shuichi Yogo, Masato Koike, Takashi Hamaguchi, Sun Jing, Ichiro Koshijima , Computers and Chemical Engineering Vol. 57, P. 181-186 (2013) Detection of Cyber-Attacks with Zone Dividing and PCA: T. Morita, S. Yogo, M. Koike, T. Hamaguchi, S. Jung, I. Koshijima, Y. Hashimoto , Procedia Computer Science Vol. 22, P. 727–736, KES2013 (2013) 資料を配布しなくて申し訳ございませんでした。 http://www.manange.nitech.ac.jp/IAF2014.pdf もし、ご関心をもっていただけましたら、 上記アドレスからダウンロードください。 本日中に、設定させていただきます。 重ねて申し訳ございませんでした。 http://www.manage.nitech.ac.jp/IAF2014.pdf 31
© Copyright 2024 Paperzz