USBメモリで機密情報を運んじゃいけないならどうすんの?
どうも、エンジニアのgamiです。
先日、兵庫県尼崎市で大量の市民情報が入ったUSBメモリが紛失する事件が起きました。
USBメモリはその後の捜索で無事に見つかったらしいですが、同市の情報管理の甘さを露呈し話題性もあったため、大きなニュースになりました。ちなみに事件発生後も、記者会見で市の職員がパスワードの桁数をうっかり言ってさらに市の情報リテラシーの低さを示してしまうという残念な展開になっています。
様々な行政サービスを実現するには、システムをまたいで市民の個人情報を利用しなければいけません。しかし、流石に物理的なUSBメモリに保存してセンシティブなデータを運ぶことには問題がある感じがします。
一方で、「じゃあ本来はどうあるべきか?」というところに踏み込んだ報道はあまり目にしませんでした。今回は一介のエンジニアの視点でそれを考えてみます。
物理的に運ぶかネットワーク経由で運ぶか?
今回の事件は、市政情報センターからコロナ給付金コールセンターという施設へのデータ移管作業後に発生したようです。報道によれば、物理的なUSBメモリデバイスにデータを保存した委託先社員自ら施設間を移動してデータを移しています。
今回はデータの移動中にUSBメモリを紛失したわけではなく、作業完了後にデータを削除しないままそれを持ち帰ってしまったことが問題となっています。しかし、そもそも紛失の可能性が高い物理デバイスにデータを入れて移動させるという業務フローにリスクがあったとも言えます。
本来はそんなことをしなくても、どこかのサーバーに必要なデータをアップロードしておけば済むはずです。Google DriveやDropboxにインターネット経由で接続せよとは言わないまでも、市や県の施設からしか接続できないネットワーク経由で独自のファイル共有サーバーにアクセスできるような構成であれば、ローカルのデバイスにデータが保存されるような状況は最小限で済みます。
あまり情報リテラシーが高くない人からすると、「機密情報にネットワーク経由でアクセス可能になっている」と聞くとそちらの方が脆弱に感じるかもしれません。しかしそれは、昨今のセキュリティ技術を見くびっています。たとえばGAFAを始めとするTech企業が運営するインターネットサービスでは大量の個人情報を扱っており、それらは運営企業の一部社員がネットワーク経由でアクセス可能な状態になっているはずです。なのに尼崎市のUSBメモリに入っていたような規模の個人情報流出の話はあまり聞きません。
もちろん、たとえばインターネット経由でアクセス可能なWebサービスに機密情報を保存し、二要素認証なども設定せず簡単なパスワードを使いまわしていれば、USBメモリ運用以上にセキュリティリスクは高くなるかもしれません。他方でこうしたサービスの利用については、難しいパスワードを強制する、多要素認証を必須にする、流出が疑われるアカウントからのアクセスを後から禁止にする、などシステム管理者が仕組みで対策できる余地がたくさんあります。さらに独自の社内ネットワークやシステムを構築してアクセス元を自由に制限できる構成にすれば、大きく利便性を損なわずにセキュリティを上げられるかもしれません。
データの流出事件において、1度でも機密情報が漏れたらそのデータは無限に複製。最初に悪意のある第三者にデータが漏れた後は、それがUSBメモリ経由だろうがネットワーク経由だろうが同じことです。本気で攻撃を画策している攻撃者にとっては、関係者を尾行してかばんやPCを盗む方が、セキュリティ対策がしっかり取られた社内ネットワークに侵入するよりも一般的には簡単でしょう。
というわけで、僕の意見は「USBメモリとか使わずにネットワーク経由でデータ移送した方がいいのでは?」です。
ちなみに、自治体の庁内ネットワーク構成については総務省のガイドラインが出ています。これを見ると、自治体内の職員が使う端末レベルでアクセス可能なネットワークを限定することが推奨されています。
今回流出した情報には住基や税に関するものも含まれており、このガイドラインを厳密に守るならUSBメモリ等による「端末からの情報持ち出し不可設定」をするべきところです。
一方で、ネットワーク構成に強い制限がかかる自治体のシステムでは新型コロナ関連業務などの突然発生する不測の業務に対応しきれず、イレギュラーでリスクの高い運用をせざるを得なかった、という可能性もあります。セキュリティ向上を理由にシステムの利便性を落としすぎたせいで、最もリスクの高い方法が抜け道的に使われてしまう、という事態はよくあります。あくまでも想像の域を出ないですが、今回もそのようなケースだったかもしれません。
無数の端末をどうセキュアな状態に保つか?
ここまでの「USBメモリとか使わずにネットワーク経由でデータ移送した方がいいのでは?」という提案の前提には、「機密情報をセキュアなサーバーに蓄積してなるべくそれを複製・移動させずに業務を進めるべき」という考え方があります。実際、PC端末にデータを一切保存せずにサーバー上のデータを直接閲覧・編集しながら業務を遂行できるソフトウェアはたくさんあります。SaaSはその代表例です。
しかし、端末側へのデータ保存を完全に禁止するというのは、それはそれで厳しいものがあります。たとえばみんな大好きExcelをどうしても使わないといけない状況では、PC端末内にCSVファイルを保存してExcelでそれを開くといった操作が必要になります。今回の事件のようにシステムを跨いだデータの移管においても、一時的に端末内にデータを保存した方が楽であるケースはよくあります。
情報管理を徹底していないと、「社員が使う無数の端末に機密情報が散らばったリスクの高い状態」が常態化しがちです。もちろん「端末内のデータは作業が終わったらなるべくすぐ削除しよう」という意識付けは重要です。しかし、今回の事件でデータの削除作業が行われなかったように、それだけではリスクがあります。どうにか仕組みで解決できないでしょうか?
よくある解決策は、「シンクライアント(thin client)」を利用するというものです。シンクライアントとはその名の通りクライアント側の機能を薄く(thin)する構成のことで、サーバー側に仮想のPCを立ち上げて機密データのあるサーバーとやりとりします。端末側は単に仮想PCの画面をただ投影するだけで、実際のデータはサーバー側の中でしかやりとりされません。セキュアですね。
これだけ聞くと夢の技術っぽいのですが、社内ネットワークに接続できない環境では業務ができないとか、仮想化されたOSをネットワーク経由で使うので動作が重くなりがちなど、不満の声もよく聞きます。
もう一つの道は、端末管理用のアプリケーションを使うことです。たとえば弊社プレイドでは社員全員がMacbookを業務で使っているので、Jamf ProというAppleデバイス管理ツールを使っています。
これにより、PCへのUSBメモリの接続を禁止したり、リスクの高い機能を制限できます。また、PCの紛失時にはリモートでPCを初期化(ワイプ)する機能もあります。今回の事件のように機密情報を含んだUSBメモリを紛失したときはどうしようもないですが、Jamf管理されたPCが紛失した場合は事後的にデータを削除する余地があるわけです。便利ですね。
今回は、尼崎市のUSBメモリ紛失未遂事件を題材に、機密情報の取り扱いや端末の管理について考えました。
前提として、本気で再発防止に取り組むのであれば、今回の事件を起こした人間を単に責めるのではなく、そもそも「USBメモリに機密情報を保存して持ち出すような作業手順を踏む必要がないしできない」という状態を仕組みとしてどう実現するかを考える必要があります。インシデントの原因は人間ではなく仕組みにあると考えないと、いつまでたっても根本は変わりません。
セキュリティを高めるためのノウハウやプロダクトは世界に溢れています。一方で、特に自治体のようなレガシーなシステムが生き残る世界では改善の余地が大いにあります。
国や行政のシステムでモダンな技術を導入するのは難しいという意見もあるでしょうが、たとえば米国では多くの政府機関がAWSの政府専用リージョン(!)にシステムを構築しています。
日本でも、自治体を始めとするレガシーな業界で適切なIT投資が進むことを願っています。
ここから先は
仕事を楽しくするデジタルリテラシー読本
【初月無料】デジタル時代の歩き方について考えたことを発信します。ソフトウェアの時代とは何か。エンジニアの頭の中はどうなっているのか。NoC…
サポートをいただけると、喜びドリブンで発信量が増えます!初月無料のマガジン『仕事を楽しくするデジタルリテラシー読本』もおすすめです!