全2909文字

 インターネットイニシアティブ(IIJ)は2021年11月12日、同社にパスワード付きZIPファイルが添付されたメールが届いても2022年1月26日以降はそのファイルを削除しメール本文だけを受信すると発表した。盗聴防止策として知られる「PPAP」にノーを突きつけた格好だ。

 PPAPとは、ファイルをやりとりするときファイルをパスワード付きZIPファイルにしてメールで送信し、そのパスワードを別のメールで送る仕組みである。この仕組みをメールサーバーやメールソフトに実装するセキュリティー製品が販売されている。なお、PPAPは「パ(P)スワード付き暗号化ファイルを送った後にパ(P)スワードを送る暗(A)号化プ(P)ロトコル」の略語とされる。

 このPPAPにはいくつかの問題点が指摘されている。その1つは、パスワード付きZIPファイルはデータを暗号化するため、セキュリティー製品がファイルの中身をチェックしにくくなり、マルウエアが含まれていても検知できないケースが増えることだ。この問題を広めるために、ピコ太郎氏が発表したヒット曲「ペンパイナッポーアッポーペン(Pen-Pineapple-Apple-Pen)」の略称であったPPAPを、この仕組みの名称として使われたといわれている。

 PPAPそのものが盗聴防止策として有効でないと指摘する専門家もいる。PPAPではパスワード付きZIPファイルはパスワードがないと開けないという前提に立って、パスワード付きZIPファイルだけが流出してもファイルの中身は漏洩しないということになっている。ただ、第三者がパスワード付きZIPファイルを盗聴できる状況にあれば、パスワードメールも盗聴できる可能性が高いだろう。

 筆者は以前、この点について実験したことがある。PPAPでファイルのやりとりをする経路に通信を盗聴できるパソコンを設置した環境を構築し、大量の通信の中からパスワード付きZIPファイルとパスワードメールを取り出せるかどうかを確かめた。結果は、いとも簡単に両方取得できた。

関連記事 パスワードの別送に意味はある?

 「パスワード付きZIPファイルはパスワードがないと開けない」というPPAPの前提さえも崩れつつある。高速な演算処理が可能なコンピューターを使えば、大きな時間をかけずにパスワードを解析できるからだ。

 では、どれくらいの時間でパスワードを解析できるのだろうか。解析にかかる時間を測定する実験を行った。

高速演算処理可能なAWSのGPUを利用

 実験では、米Amazon Web Servicesのクラウドサービス「AWS」を利用した。パスワードの解析には、GPU(Graphics Processing Unit)と呼ばれるコア数が非常に多いコンピューターが向いているといわれている。AWSなら演算能力の高いGPUを搭載したサーバーを低価格で利用できる。「NVIDIA Tesla V100」というGPUを搭載したサーバーで、GPUが1基でGPUメモリーが16GBの環境(p3.2xlarge)なら1時間当たり3.06ドル(日本円で約330円、オンデマンド料金の場合)で済む。

 パスワード付きZIPファイルは、「7zip」というオープンソースの圧縮ソフトで作成した。7zipは「ZipCrypto」と「AES-256」という2種類の暗号化方式に対応する。ZipCryptoのほうがよく使われている。実験では、文字種や長さを変えた複数のパスワードを使い、暗号化方式も変えた複数種類のパスワード付きZIPファイルを用意した。

7zipを使えば「ZipCrypto」と「AES-256」の2種類の暗号化方式でパスワード付きZIPファイルを作成できる
7zipを使えば「ZipCrypto」と「AES-256」の2種類の暗号化方式でパスワード付きZIPファイルを作成できる
(画面の出所:筆者が取得、以下同)

 パスワードの解析には、「hashcat」と「JohnTheRipper」というツールを組み合わせて使った。どちらもネットで入手できる無料のツールだ。ここでは詳細な説明はしないが、使い方はネットで豊富に紹介されている。