添付ファイルを暗号化する(ナンセンスなセキュリティ対策)

世の中・・・と言うより、日本国内ではナンセンスなセキュリティ対策が、さも標準的な対策であるかのように横行しています。セキュリティ対策の基本「どうやって」「だれから」「なにを」守っているのか考えてみれば綻びがはっきりします。代表的な例として、「メールにて添付ファイルを送るときには、添付ファイルを暗号化してから添付して送付し、パスワードは添付ファイルとは別のメールにて送る。」ことによって、「どうやって」「だれから」「なにを」守れているのか考えてみましょう。

メールから情報が漏洩する状況

パソコンの廃棄、盗難

パソコンの受信メールや送信済みメールのフォルダには暗号化された添付ファイルと、そのパスワードが並んで保存されています。従ってパソコン内のデータを復元できる状況なら、何も技術的に特殊なことなどしなくても、ファイルを復号して閲覧できます。

中継サーバーでの盗聴

インターネットのメールは相手のパソコンに直接送信されるわけではありません。複数のメールサーバーを経由して相手のメールサーバーまで届く事になります。昔は多くの組織のメールサーバーを経由して何時間・・時には数日もかけて届いていたのですが、最近は「送信者のパソコン→送信者が使っているメールサーバー→宛先が使っているメールサーバー→相手先のパソコン」と、第三者のサーバーを経由することは滅多になくなりました。
添付ファイルを付けたメールも、そのパスワードを付けたメールも同じ中継サーバーを経由して届く可能性が高いです。したがって中継サーバー上で盗聴できるなら、ファイルを復号して閲覧できます。

ネットワーク上での盗聴

接続しているハブや無線LAN上の通信データを閲覧するソフトウェアがあります。ネットワークモニタなどと呼ばれます。クラッキング用の特殊なツールというわけではなく、作成したアプリケーションが意図したとおりに動作しているか確認するために広く使われています。パソコン1台あれば可能ですし、Microsoft純正のツールもあります。
さてHUBなど通信経路上で接続してネットワーク上で盗聴している場合、添付ファイルを付けたメールも、そのパスワードを付けたメールも同じネットワークを流れるます。したがってネットワーク上で添付ファイルを付けたメールを盗聴できるなら、パスワードを付けたメールも盗聴できますし、ファイルを復号して閲覧できます。

誤った対象への送信

メールクライアントの誤操作により誤った宛先に機密情報を送信してしまったという報道が度々流れた時期があります。「メールにて添付ファイルを送るときには、添付ファイルを暗号化して添付して送付し、パスワードは添付ファイルとは別のメールにて送る。」ことが有効な唯一の例です。添付ファイルを付けたメールを送った後、パスワードを送るまでの間に、宛先の過ちに気がつくことが出来れば情報漏洩を防げます。
ただし、メールサーバー側で暗号処理などを自動で行ってくれるソフトウェアを導入しているときには注意が必要です。暗号鍵送信の手順が簡素化されているため、速やかにパスワードを遅れてしまうため、気付くまでの猶予が短くなってしまいます。

情報漏洩防止のために「メールにて添付ファイルを送るときには、添付ファイルを暗号化して添付して送付し、パスワードは添付ファイルとは別のメールにて送る。」と言う方法は、「誤送信した後、すぐに誤っている事に気がついた」と言う限定的な状況でのみ、誤送信した相手から添付ファイルの情報を守る事ができると分かりました。

この方法のデメリットは?

「メールにて添付ファイルを送るときには、添付ファイルを暗号化して添付して送付し、パスワードは添付ファイルとは別のメールにて送る。」事によるデメリットは無いのでしょうか。メールサーバーは中継したメールにウィルスが含まれていないかチェックする機能を持っている事が多いのです。暗号化してしまうとメールサーバーは添付ファイルにウィルスが含まれていないかチェックすることが出来ません。またクライアントPC上でも、添付ファイルを復号してHDDに保存するまでウィルスの有無を判定できません。つまりメールをられる相手にとって、暗号化した添付ファイルを受け入れるのは、ウィルスなどの感染リスクを増やす事になります。
また暗号化には暗号化ZIPを用いていることが多いですが、Windowsの標準機能で解凍できるZIP2.0形式は、暗号機能が脆弱である事が分かっています。英数大文字小文字を交えた8桁のパスワードでも、GPGPUを使ったパスワード総当たりツールを使えば、10日とかけずに解析できてしまいます。したがって実効性を持たせるには、SHA256形式を用いたZIP暗号を使用し、相手にも対応したソフトをインストールしてもらう必要があります。

本来はどうするのが一番良いのだろうか?

実はもっと確実な方法があります。次の二つを実施する事です。
・メールへの添付ファイルは一切許可しない。
・添付ファイルを送りたい(受け取りたい)ときにはGoogle DriveやOne Drive等のクラウドストレージを使う。
メールサーバーの設定でHTMLメールやSMIMEを除く、一切の添付ファイルを禁止します。これでウィルスを含めて、コンピューターに感染する可能性のある不正なプログラムをほぼ防ぐ事が出来ます。
その上で、貼付ファイル等を送る必要があるときには、クラウドストレージの共有機能を使います。クラウドストレージの共有機能を使うと乱数で生成されたURLが作られます。クラウドストレージの共有したファイルやフォルダにアクセス出来るのは、このURLを知っている人だけです。そして相手がファイルをダウンロードしたのが確認出来たら、速やかに共有URLを破棄します。当事者の誰かが共有用URLを漏洩させない限りは安全ですし、仮に誤送信などで漏洩させても共有URLを破棄してしまえば漏洩を防ぐことが出来ます。
第三者へのファイル送付に特化したクラウドストレージもあります。そういったストレージサービスであれば、共有URLにアクセスしたアクセス元IPアドレスや日時まで閲覧出来るものもあります。また自社専用にサーバーを作って社外とのファイル交換に使用している例もあります。

理想を求めるなら、これにSMIMEを使ったメール暗号を併用できると完璧です。盗聴されたりメールアカウントのパスワードが漏洩した場合でもメール本文に書かれているURLの漏洩を防ぐことができます。ただ、SMIMEはメールを受信する相手側で対応していないと暗号化は利用できませんし。電子証明書の取得に1メールアカウント辺り数千円の支出を伴うこともあり、なかなか普及していないのが残念です。

結局の所?

「メールにて添付ファイルを送るときには、添付ファイルを暗号化して添付して送付し、パスワードは添付ファイルとは別のメールにて送る。」ことによって、極めて限定的な状況下で、誤送信による情報漏洩から守ることが出来ます。そのためにメールを受信者側に、セキュリティの低下というリスクを押しつけています。
ほとんど役に立たない対策のために、他の面でセキュリティを低下させているのですから、総合的な効果としてはマイナスの対策といえます。

追記 参考資料

電子メール利用時の危険対策のしおり
IPAの提供するガイドラインでも「復号のためのパスワード等は、別の通信手段を利用して相手に伝えることが重要です」ときちんと書かれている。添付ファイルを暗号化するなら、せめてガイドラインに従ってFAXなり、郵送なり、電話なり、別の手段で送って欲しい。

「添付ファイルはパスワード付き暗号化」でいいのか
ITProの記事。実は10年前から指摘され続けている。

添付ファイルとパスワードを別便で送るアレ、やめて。セキュリティ1〜5章
技術的な詳細はこちらが詳しい。

「添付ファイルを暗号化する(ナンセンスなセキュリティ対策)」への1件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です