メディア

RPAが乗っ取られてシステムが破壊される――ロボット時代のセキュリティに不可欠なものとは

RPA(Robotic Process Automation)やクラウド利用が進む中、「管理者権限の乗っ取り」というリスクが浮上している。これに対処する方法は。

» 2019年12月24日 08時00分 公開
[土肥正弘ドキュメント工房]

 「サーバOSはインストールしたから、アプリケーションは管理者用IDとパスワードで各部署の担当者がインストールしてね」――。このようにシステム管理者用のID/パスワードが共有されることは珍しくない。

2019年10月17日「アシストテクニカルフォーラム2019 in 東京」に登壇したアシスト システム基盤技術統括部 技術3部 玉川茂樹氏

 管理者用のID/パスワードが外部に漏れれば、悪意のある第三者が管理者権限を使って情報の抜き出しや改ざん、システム破壊および初期化などを実行するリスクもある。こうした事態を防ぐために、「特権ID」(Administratorやrootなど)管理を厳密にする対策が取られてきた。

 しかしRPA(Robotic Process Automation)やクラウドの利用が進む今、「誰が管理者権限を持っていて、どのような作業をしているのか」を把握し、適切に管理することが難しくなっている。その結果、「機密情報にアクセスできるロボットが不正に乗っ取られて、情報漏えいやシステム破壊につながる」可能性があるのだ。

 アシストの玉川茂樹氏は「企業は新たなセキュリティリスクに向き合わなければならなくなった。企業システムには『特権ID管理』システムの機能を利用した『特権アクセス管理』が不可欠になる」と語る。

図1 特権ID管理を拡張した特権アクセス管理のイメージ

RPAを契機にシステムが破壊される? ロボットのセキュリティが重要なワケ

 玉川氏は、まずRPAを利用することで発生するセキュリティリスクについて説明した。同氏によれば、ロボットによる想定外の処理や誤作動は発見が困難で、「どのような処理を行ったか」の事後の動作証明も難しい。悪意のある第三者によって、ロボットの処理内容が改ざん、削除される可能性もある。

 さらにRPAのシナリオに業務システムの管理者用ID/パスワードが埋め込まれていた場合、ロボットが動作する端末やRPAサーバ、シナリオを作成する開発端末、ネットワークからそのID/パスワードが窃取されたり、漏えいしたりするリスクもゼロではない。その結果、業務システムへの不正なアクセスによって機密情報の漏えいやシステム破壊が引き起こされれば、企業の被害は甚大だ。

 玉川氏はまず、「どのようなロボットが存在するかを把握すること」が基本だと強調し、その上で特権ID管理システムを利用した次のような対策を推奨する。

RPAにどのような作業を実施させようとしているのかを把握する

 RPAの処理は、ロボット開発やリリースの工程でシナリオとして構成される。不正な処理をしたり、設定ミスで業務目的外の動作をしたりするロボットはリリースの前に排除しなければならない。玉川氏によれば、ロボットの開発やリリースの際には、「開発者が作業申請を行い、承認者が承認した後にリリースするプロセスを経る」ことが重要だ。特権ID管理システムを利用すれば、正しいプロセスを踏んで承認されたロボット以外のリリースを拒否できる。不正な開発者によるロボットの開発や実行も防げる。

RPAが実際にどういう作業を行っているかを把握する

 ロボットによる想定外の処理や誤作動を発見したり、その原因を追究したりする仕組みがないままRPAを運用するリスクは大きい。

 この課題に対し、特権ID管理システムを利用すれば、誰がいつどのロボットを実行し、そのロボットが業務用サーバにどのようにアクセスしたかを証跡として取得できる。問題が発生した際には、証跡をたどれば原因を特定可能だ。証跡は改ざんできないため、不正行為を防止する効果もある。

RPAが使うパスワードを定期的に変更する

 IDとパスワードは厳重に保護していても流出するリスクはゼロではない。そのため、RPAを開発する際は、自動化のシナリオに業務サーバのログインパスワードを直接埋め込まず、パスワードを随時変更できるようにすることが大切だ。

 特権ID管理システムやパスワード管理システムを利用すると、業務サーバにアクセスするIDのパスワードを定期的にまとめて更新できる。

 この機能を前提に、ロボットが業務サーバにログインする際には、その都度特権ID管理システムにロボットがパスワード発行を依頼して、払い出された最新のパスワードを利用するという工程をシナリオに組み込めば、長期間同じパスワードを使い続けることがなくなる。

 玉川氏はRPAのセキュリティの実現イメージを図2のように説明する。RPAの開発者はまず、ロボット開発やリリースの作業申請を行い、承認者の承諾を待つ。承認された場合には、特権ID管理システムを介してRPAツールにログインし、証跡を残しながら開発およびリリース作業をする。

 ロボットを利用するユーザーは、特権ID管理システムを経由して証跡を取得しながらロボットを稼働させる。この際、ロボットは特権ID管理システムから最新のパスワードを取得して、業務用サーバにログインし、処理を実行する。これによって、セキュリティ担当者は特権ID管理システムを見れば、ロボットのリリースの状況やログイン、操作の証跡を追える。

図2 RPAのセキュリティ実現イメージ

クラウド活用に際しての特権アクセス管理

 玉川氏は、「社内開発者」「社内・社外作業者」「システム管理者」それぞれの立場から、クラウドを利用する際のセキュリティにまつわる課題を説明し、それぞれの対策方法を述べた。

 まず、「社内開発者」においては、開発環境をデフォルトの設定のまま誤って外部に公開してしまう可能性があることを指摘した。IaaS(Infrastructure as a Service)やPaaS(Platform as a Service)で開発したシステムを、開発環境の設定のまま公開してしまうと大きなトラブルとなるのは明らかだが、玉川氏によればこうしたミスは「起こりがち」だという。

 対策として、設定ミスを即座に発見した上で修正するCSPM(クラウド態勢管理、Cloud Security Posture Management)ツールの導入が有効だという。IaaSやPaaSの設定(通信ポートの開放設定など)を自動チェックして可視化でき、設定ミスによる情報漏えいなどを防止する。

 「社内・社外作業者」においては、複数のSaaS(Software as a Service)アプリケーションのログイン情報を管理する負担が挙がった。IDaaS(Identity as a Service)と呼ばれるクラウドサービス型のID管理システムや、シングルサインオンの利用が対策となる。

 一方、「システム管理者」は、把握していないクラウドサービスから情報が持ち出される可能性を懸念しなければならないという。この課題に対しては、SaaSの利用状況を把握し、ユーザー個別認証/シングルサインオン、アクセス制御、データ暗号化、ログ取得、マルウェア対策などを提供するCASB(Cloud Access Security Broker)ツールが有効だ。

 また、玉川氏はシステム管理者が最も注意しなければならないこととして「IaaS、PaaSを利用する際に、共有IDで管理画面にログインしているため、誰が操作しているのかが分からない」状況を挙げ、不正行為を誘発する可能性があると指摘。CASBと特権ID管理システムを利用してセキュリティを実現する方法を説明した。

 まずは、CASBをゲートウェイに設置して、作業者が社内で許可されたサービスだけに接続できるようにする。これによって誰がどのサービスを利用しているのかを把握する。これを前提として、特権IDシステムを利用し、次の3つのポイントを押さえる。

ユーザーがどのような作業を行おうとしているのかを把握する

 ユーザーがクラウド環境で作業をしたい場合は、特権ID管理システムを利用して、承認者に作業を申請し、承認された場合のみクラウドサービスにアクセスできるようにする。これにより、誰がクラウドサービスを利用したのかを把握するとともに、必要のない作業は承認者が拒否できる。

実際にどのような作業が行われているかを把握する

 特権ID管理システムを利用すると、作業者がクラウドサービスにアクセスした証跡を取得できる。監査担当者はその証跡を確認することで作業が適切か否かを確認できる。

クラウドで使う認証情報を適切に管理する

 万が一特権ID/パスワードが攻撃者に窃取された場合、クラウドサービスに不正アクセスされるリスクがある。そのリスクをなくすためには、特権ID管理システムを各クラウドサービスの認証情報を一元的に管理し、アクセスが必要になった場合に各サービスに準じた認証情報で接続するのが良い。それにより作業者がIaaSやPaaSを利用する際のパスワードを管理する必要がなくなり、流出リスクを抑え込める。

図3 クラウドセキュリティの実現イメージ

Copyright © ITmedia, Inc. All Rights Reserved.

会員登録(無料)

製品カタログや技術資料、導入事例など、IT導入の課題解決に役立つ資料を簡単に入手できます。