パスワード付きZIPのない世界でどう過ごすのか?
はじめに
平井卓也デジタル改革担当相は2020年11月17日、中央省庁の職員を対象に「パスワード付きZIPファイル」の送信ルールを廃止する方針を明らかにされましたね。とても良いニュースだと思います。
こちらは「デジタル改革アイデアボックス」からの意見を取り入れたものと言われていてこういうサイクルがさっそく回っているのには期待が持てますね!
省庁職員がメールにファイルを添付して送信する際に、暗号化した上でパスワードを別のメールで送る「自動暗号化ZIPファイル」を26日に内閣府と内閣官房で廃止すると明らかにした。
代替策は決まっておらず、民間企業の動きも参考にしながら望ましいセキュリティー向上策を検討するという。暫定的な対策として「(パスワードを)電話で教える」と例示した。他省庁の状況も実態調査を進める。
「パスワードを電話で伝える」と言う点を揶揄するコメントもありますが超面倒だけどセキュリティ的には間違ってはないです。詳しくは本文で説明していますけど暫定としてはあり。もっとも面倒なセキュリティは陳腐かしやすいので適切な仕組みを早く入れるべきですけどね。
一方で「Pマークで求められるから使わざる得ない」というコメントもネットでは見かけ、ついにはJIPDECより「前からパスワード付きZIPが安全なんて言ってねーし」と声明を出しました。
私はプライバシーマークには詳しくないのでこれが手のひらクルクルなのか、元から言ったのか知りませんが個人情報取り扱いの観点からは不足してると思うので「むしろ本当に通ってたの? ISMSと間違えてない?」という気持ちです。
まあ、それはさておきこの波は民間にもやってくるでしょうから自分の整理もかねて「パスワード付きZIPのない世界での過ごし方」をまとめてみたいと思います。
パスワード付きZIP != PPAP
まず最初に言わねばならないのは「パスワード付きZIP」と所謂「PPAP (Password付きzipファイルを送ります、Passwordを送ります、An号化(暗号化)Protocol(プロトコル))」は別物である、ということ。
WikipediaによるとPPAPは以下の手順と定義されています。
- 送信者は、添付ファイルをパスワード付きzipファイルで暗号化し、メールに添付して送信する。
- 送信者は、1.で送信した添付ファイルのパスワードを、別途メールにて送信する。
- 受信者は、送信者から受け取った添付ファイルとパスワードによってファイルを復号化し中身を得る。
ここで重要なのは2でこれをChatなり電話なり別の経路でパスワードを共有してれば狭義のPPAPには当たらず、その場合はそこまで問題がないという事です。
パスワード付きZIPはファイル暗号の手段としてはそこまで悪くはありません。もっと強固な暗号化はもちろんあるけれど。
パスワード付きZIPの問題点
パスワード付きZIPの問題点は2つあります。
- 暗号化強度が弱い(事がある)
- メールセキュリティをすり抜ける
まず暗号化強度に関してです。ZIPの暗号化方式には「zipcrypto」と「AES256」等があります。AES256はZIP以外でも広く使われている暗号化方式でセキュリティ強度も十分です。しかしZIPの暗号化方式としてはあまり普及していません。7-zipとか使えば利用可能ですがOSの標準機能等はzipcryptoをベースにしていることも少なくありません。zipcryptoは現代ではあまり強い暗号化とは呼べないのでここに一つ懸念があります。
次に メールセキュリティをすり抜ける 可能性。特に最近はこの問題に注目されています。
Emotetなどの近年大流行中のマルウェアは感染経路の一つにパスワード付きZIPを使います。これによりメーラやメールサーバでのウイルススキャンを回避し、あなたの手元にマルウェアを届けるのです。暗号化による検閲の回避は正規ユーザだけではなく悪意のあるユーザにも等しく力を与えます。このような点が問題視されて「パスワード付きzip添付ファイルのブロックを推奨」がアメリカ政府のCISAより勧告されています。恐らく日本での動きはこれも踏まえてのものでしょう。
パスワード付きZIPは「比較的簡単にファイル暗号が出来る」というメリットはあるので特にAESを選択してる場合は、必ずしも悪いわけでは無いのですがメールセキュリティとの相性が悪いので添付ファイルとして使うにはデメリットの方が目立つと言う状態です。
PPAPの問題点
上記の定義でいう狭義のPPAPの問題点に関して考えてみます。理由はシンプルでセキュリティ対策としては非常に脆弱にも拘わらず、パスワード付きZIPのデメリットだけはしっかりと受ける事です。
一般的にPPAPは以下のようなメリットがあると説明されます。
- メールが流出してもファイルが暗号化しているのでデータが流出しない
- 添付ファイル付きメールで誤送信をしてしまってもパスワードを送る時に気づくので誤送信防止になる
これは一見するとその通りに見えますが 「パスワードを添付ファイル付きメールに全返信で送ってる」 という行為によってすべてが台無しになっています。
まず、1に関してですがたいていメールが流出したりハッキングされてメールにアクセスされる状態では1通だけではなく他のメールも見られます。なので同一経路で送信していた場合パスワードも自動的に漏れます。事実一部のセキュリティツールはPPAPであると推測して「直後のメールに記載されているパスワードを自動で拾って添付ファイルを複合してウイルススキャンをかけます」。セキュリティツールとして許容される範囲なのかはさておき、このテクニックは攻撃側も当然使えるということを念頭に置くべきです。こういう 「複数経路を使うべしってのは二段階認証じゃなくて二要素認証が大事」 という話と似ています。なのでパスワード付きZIPを添付ファイルにする場合は必ず別の手段でパスワードを連携する必要があります。電話で伝えても良いですし、チャットで伝えても良いです。事前に口頭で共有するのもありだけど、ワンタイムパスワードに出来ないから少し弱いかな。時間とかを組み合わせたルールベースにする手もあるけど工夫がいるし流出に弱い。聞き取ったパスワードを紙にメモしても良い。何故ならメールサーバをハックされてもディスプレイに貼られた付箋紙にはアクセスできない。経路が違うとはそういうこと。もちろん、なるべく避けるべき運用だが。。。
つづいて2の誤送信。まあ、これは実際にPPAPを強いられたことがあれば分かると思いますが、全返信の時にいちいち全員のメールアドレスを確認し直すなんて手順は普通は踏まないのでほぼ意味がありません。また社内のメールシステムが自動でランダムなパスワードを生成して暗号化付きZIPとして添付し直後にパスワードを送るというツールを導入されている会社もありますよね? 自動で送られるので当然誤送信の対策にはなりません。
もちろん偶然1通だけメールが漏れたケースやたまたま誤送信をしたことに2通目を送る時点で気づくこともあるのでメリットがゼロとは言わないですがメールセキュリティを無効化するデメリットと比べるとリスクしかない状態です。百害あって一利しかない。もっと害が少なく利の多い仕組みがあるのでそちらを選択するべきです。
データ分類してますか?
とりま「オンラインストレージを使え」とコメントしたくなるのですがその前に。Pマークの話も出てたので考えないといけないのは 「データ分類/Data Classification」 です。
データ分類とは情報資産の重要度をカテゴライズしそれごとに適切なコントロールを適用することです。情報セキュリティ全般で基本的な考え方でみんな大好きISMSでももちろん要求されます。
データ分類で一番重要な点は「利便性を考慮して常に最強のセキュリティを適用しなくても良い」と言う事です。
もちろん「そんなセキュリティで大丈夫か?」「一番良いのを頼む」と常に言えればいいのですが、ガチガチのセキュリティで利便性が下がり過ぎても困るので「(リスクが低いから)大丈夫だ問題ない」というのがデータ分類ですね。
分け方は組織で自由に決めれますがとりあえず「社外秘」「個人情報」くらいの機密レベルで今回は考えます。普通はもうちょっと細かく作り定義も厳密にしますけどね。個人情報も実は定義がかなり広いけど今回は「住所、氏名、生年月日、性別、宗教、人種」あたりをふわっとイメージしてください。詳しく考えたい人はCCPAとかGDPRとかISO/IEC27701あたりを読むんだ。きっと混乱できるよ! 一般論として 「個人情報」は流出すると会社に甚大な被害をもたらすので最上位の機密レベル になりますよね。
で、どうやってファイル連携をするのか?
まずは「社外秘」ラベルで考えましょう。この場合は社外に情報は漏らしたくないけど漏れたからと言って会社が潰れたり甚大な被害を受けない程度のリスク、と考えます。
具体的なコントロールは組織に依存しますが、個人的にはインターネットを平文で流れなければいったん良いかなと思います。少し固く言えば「外部に情報を連携するときは適切な暗号化方式を選択し情報流出を防ぐこと」みたいな。
このレベルのファイル連携でお勧めは以下の3つです。
- 暗号化とかせずに生ファイルを普通に添付する
- Slackなどのチャットツールを使う
- OneDrive/Google Driveのようなオンラインストレージを使う
暗号化とかせずに生ファイルを普通に添付する
まずは1の生ファイルを添付する。これは一見するとノーガード戦法に見え「何言ってるの?」となりそうですが違います。ちゃんと対策しています。
そもそもなんでメールで送るのに添付ファイルを暗号化する必要が議論されてるとかと言うと 「メールのプロトコルは平文で送られる」 「メールは中継サーバがあるので外部の第三者が覗く余地がある」 という2点です。
ただしこれも今は昔。最近のメールは通信経路がちゃんと暗号化されています。STARTTLSと呼ばれるプロトコルで暗号化されてる事が一般的ですね。稀に対応してないシステムも確かにあるのですがほとんどの企業のメールサーバはExchangeかgmailでしょうからビジネスメールのやりとりで困ることは稀でしょう。メルマガとかだと別のケースもあるけどだけど社外秘添付しないですよね?
なので、普通に添付してもTLS/SSLで暗号化されているので過度に恐れる必要はないです。そもそもメールの通信経路かメール自体を暗号化しないと本文で情報流出しちゃうので添付ファイルだけ守れば良いというものではないのです。必要に応じてS/MIMEとかも併用してさらに強化できるけど適用できるケースは少し限定的かも。
Slackなどのチャットツールを使う
ファイル共有の代替手段としてメールの代わりにチャットツールなどを使うケースもあります。これはメールと違って 「第三者の中継サーバがない」 「少なくともクライアントサーバ間はHTTPSで暗号化さている」 という点でセキュアです。他社とのやり取りを含めてメールよりも活用してる会社も多くあるでしょう。とうぜん本文にあたるコンテンツも経路暗号がかかりますしね。HTTPSで。
クライアント間のE2E暗号まで求めるかは要件次第ですが、それを提供してくれるチャットツールもありますね。個人的にはメールほどセキュリティツールが対応してない事もあるのでファイル共有の主戦場としては避けたいですが、まあ好みです。
ちなみにTeamsはファイル連携の裏がOneDriveやSharepointなので実質的にはオンラインストレージですね。たぶんGoogle系もそうかな?
オンラインストレージを使う
鉄板のOneDriveやGoogle Drive、あるいはBoxのようなオンラインストレージ利用です。少なくとも添付ファイルの代替手段として最もセキュアに運用できる方法です。
オンラインストレージをファイル共有に使うメリットは以下があります。
- HTTPSによる経路暗号
- 有効期限の指定や指定したメールアドレス単位でのACLなどきめ細やかなコントロール
- 送信後に消せるので誤送信対策も可能
- (製品によるけど)メーラとの統合
- (製品によるけど)DLPなどのセキュリティツールとの統合
まずHTTPSでのやり取りなので当然暗号化されています。また添付ファイルとは異なり有効期限を指定出来る事が多いです。公開範囲をコントロールすることもでき例えば 「社内限定」 とか 「外部も含めて特定のメールアドレス向けに公開」 と かきめ細やかなコントロールが出来ます。添付ファイルの問題点として送信後は送信者はデータをコントロール出来ないというものがあります。これは誤送信はもちろんですが送信後に相手が社内でメールを転送したり、あるいはマルウェアなどに感染したときの影響を大きくしてしまいます。有効期限があれば送信先が感染した場合にファイルにアクセスされるリスクが減りますし、特定の人間しか見れないようにACLをかけたり送信後でもミスに気付いた時点で消せばリスクは減らせます。
また、製品にもよりますが自動データ分類やDLPとも連携していたりファイルアクセスの監査ログがとれるツールも多いのでその意味でもセキュリティを強化しやすくなります。
また、OutlookやgmailはそれぞれOneDrive、GoogleDriveとメーラーレベルで統合されているので普通に添付するのと同じオペレーション(例えばメールにD&D)するとオンラインストレージに連携されるのでユーザの利便性の観点からも使い勝手の良いものとなります。
ちゃんととお金払えばOneDrive/Google Drive/Boxのようなグローバル企業もロケーションを日本限定にできますし、雑に調べた感じでも国内ベンダーのサービスはいくつもあります。
必要に応じてこのあたりを使うと良いかと。どうしてもオンプレミスでやらないといけないとかクラウドサービスを使うあるいは使う内部調整をするお金がないという場合はOSSのオンラインストレージもあります。
どちらも OSSだけどエンタープライズサポート もあるのでオンプレミス運用にも安心。ただし、社内だけではなく社外にもファイル連携しようとすると B2C向けのWebサービス程度のセキュリティは要求される だろうからノウハウがないところは要注意。意外と大変だと思う。
またオンラインストレージを選ぶときは以下のような点に注目すると良いです。
- ISO27001, SOC2, PCI-DSS, HIPAAなどの自社の業界にあったセキュリティ基準を満たしているか
- (出来なくても何とかなるけど)リージョンの選択は可能か
- 監査関連機能
- 管理者が設定やルールを強制するコントロールができるか
- 自社の認証システム (Active Directoryとか)との統合性
- (オプション)顧客持込鍵での暗号化
- (オプション)ワークフローの統合
- (オプション)自社のセキュリティツールやメールとの統合
個人情報の連携
機密レベルが「社外秘」なものはとりあえずオンラインストレージ使ってれば十分と思いますが、個人情報の取り扱いはそうはいかない。
詳しくは各自の業界のレギュレーションをチェックしてくれ! という感じだけど、まあ、おおむね以下はする必要があるかな?
- 通信経路またはコンテンツの暗号化
- 承認フロー & データ連携の証跡
- (オプション) ファイルベースのアクセスコントロール/トラッキング
1はもちろん必須。ちなみにメールじゃなくてDVDやUSBメモリに書き込んで連携という時はファイル暗号を忘れずに。最悪これはパスワード付きZIPでも良い。ただしAESを選ぶべし。
めんどくさいのは2。一般的に個人情報のような機密レベルのデータをやりとりするのに単なる暗号化だけでは済まない。「いつ、だれが、どこに、なんのために」連携したのかを記録する必要があるし連携先のチェックも手間がかかっても厳密にせざる得ない。そしてそれを外部に連携しても良いという承認プロセスが必要。これはこういった 「プロセスと証跡が証跡が必要」 というだけなので別にExcelとハンコでも良いのだけど、ツラすぎるので適切なシステムを入れた方が良い。
たとえば DirectCloud-BOXとかは承認プロセスも統合されているし探せば結構この手の個人情報などの機密ファイルの送信をうたい文句にした製品はある。また、OneDriveやBoxもAPIが豊富にあるので既存のワークフローと統合したりSIやサードパーティベンダーがトータルソリューションとして出してることもある。もちろん、自前で既存のWFと統合しても良い。探しましょう。こういった2の作業を省力化するにはシステム化が必須なのでPPAP方式でプライバシーマークが取れてたのと言う事の方が疑問。みんなハンコとExcelで戦ってたの? まあ、PPAPじゃないパスワード付きZIPを個人情報に限り送る のは頻度や事前のやり取りがあるからメールセキュリティが効かないリスクを下げることができる のでリスク許容できなくはない。Excelやその他ワークフローと併用する形でね。
最後にオプショナルだけど3も地味に大事。これは 「閲覧」「編集」「印刷」「有効期限」なんかのパーミッションをオンラインストレージだけではなくファイルベースで与える製品。もちろんファイルベースで暗号化されてる。例えばマイクロソフトのAIPや日立の秘文がこの手の製品。普段使いするのには面倒過ぎるけど、機密レベルが高いものに限定して使えば実際のセキュリティ的にも監査への説明的にも安心感がぐっと上がる。
あと、今回は触れないけど個人情報の場合はそもそもカスタマーとの同意が必要なケースやデータ管理者を用意する必要があったりとかまあいろいろあるが割愛。必要に応じてCCPA/GDPR/ISO27701と後ついでにPマークの元ネタのJIS Q 15001:2017を読んでください。
まとめ
OutlookとOneDriveとAIP使えばおおむね幸せになれる。マイクロソフトにお布施をしよう!
という冗談はさておき、オンラインストレージを核にしてセキュリティをくみ上げるのが利用者も管理者も楽でかつセキュアなのでPPAPは早く闇に葬ってより良いセキュリティを気づいていきましょう。あと、細かくは各自の業界のレギュレーションチェックを忘れずに。
それではHappy Hacking!
Discussion