Webサービス運営者がパスワードを扱う上での基本知識 EGセキュアソリューションズ株式会社 徳丸 浩氏が事例を交えて講演

IT・情報セキュリティ

目次

  1. 企業はなぜパスワード保護を行わなければならないのか
  2. パスワード認証にまつわるよくある誤解
  3. 現在のパスワード保護の最適解は「Salt(ソルト)を用いたハッシュ化」+「Stretching(ストレッチング)」

企業による、パスワードをはじめとした機密情報の漏えいが後を絶たない。事案の性質は異なれど、株式会社オージス総研が提供するファイル転送サービス「宅ふぁいる便」や、株式会社セブン・ペイが運営するバーコード決済サービス「7pay」など、2019年だけでもいくつものサービスで情報漏えいの発生が公表されている。

そうしたなか、6月26日に東京コンファレンスセンター品川で開催された@IT セキュリティセミナーロードショーでは、EGセキュアソリューションズ株式会社 代表取締役 徳丸 浩氏が「Webサービス運営者が知っておくべき、“パスワード”の超基本」と題した講演をおこなった。パスワードにまつわる近年のインシデントや、パスワードについてのよくある誤解、またパスワード保護の現在のベストプラクティスについて解説された同講演の模様を紹介する。

企業はなぜパスワード保護を行わなければならないのか

徳丸氏は講演冒頭、2019年の前半はパスワードの平文保存の問題が話題となったことに言及した。2019年に入り、1月に「宅ふぁいる便」が480万件を超える会員情報を漏えい、パスワードを暗号化せず平文で保存していた問題が発覚した。3月にはFacebook、5月にはGoogleが提供するG Suiteにおいて、やはりユーザーのパスワードが平文保存されていたことが報道されている。徳丸氏は「いまもパスワードを平文で保存しているサイトはあるだろう」と語った。

Webサービス運営者によるパスワード漏えい対策が不十分だとどのような被害が考えられるだろうか。パスワードの漏えいによる被害のひとつが、それを用いてログインできるサービスを利用されてしまうことだ。たとえばトランプ大統領のTwitterアカウントのパスワードがわかれば、トランプ大統領をかたって投稿することができる。フェイクニュースを流すことで、株価を操作したり、国家間の関係性に影響を与えたりすることもできてしまうだろう。

また、複数のインターネットサイトやサービスでパスワードを使いまわしているユーザーも多い。ひとつのサービスでパスワードが流出すると、ほかのサービスへも影響が生じることが考えられる。

こうした理由から、パスワードは可能な限り保護されるべきであり、その対策を講じることはインターネットサイト運営者の責務だといえる、と徳丸氏は説明した。

EGセキュアソリューションズ株式会社 代表取締役 徳丸 浩氏

EGセキュアソリューションズ株式会社 代表取締役 徳丸 浩氏

パスワード認証にまつわるよくある誤解

パスワードに関わるサイバーセキュリティ攻撃のひとつとして、パスワードリスト攻撃がある。パスワードリスト攻撃は、悪意のある第三者がセキュリティ対策の脆弱なサイトから盗み出したIDやパスワードを用いて、アクセス対象のサイトで順番にログインを試す、というものである。近年はIDやパスワードの情報を集めて販売する業者も出てきている。流出元のサイトと攻撃対象のサイトに登録されているIDとパスワードの組み合わせが合致する可能性は低くて0.01%といい、10,000アカウントにひとつが適合する計算だ。徳丸氏によると、これはパスワードを狙った攻撃としては高い確率だという。流出元のサイトと攻撃対象のサイトがともにインターネットゲームサービスであるなど類似している場合、攻撃によるログインの確率は上がり10%を超えることもあるという。2019年5月にはユニクロやジーユーのオンラインサイトでパスワードリスト攻撃による不正ログインが行われるなど、被害の発生は続いているため、企業は引き続き警戒すべきだといえる。

しかしながらパスワード認証について一般でなされる解説には誤っているものが多いことに、徳丸氏は警鐘を鳴らした。例として、動作しているサーバーに対してインターネット越しにIDやパスワードを入力し、ログインに成功するかを試すオンラインクラックと、攻撃者が手元で暗号を解析するオフラインクラックは混同されがちだが、攻撃の性質が異なるため取るべき対策も変わってくることなどがあげられた。

現在のパスワード保護の最適解は「Salt(ソルト)を用いたハッシュ化」+「Stretching(ストレッチング)」

パスワードを扱ううえでは、暗号化でなくハッシュ値の利用が推奨される事が多い。これは、復号時に用いる暗号鍵の管理が難しいことによる。

「パスワードが流出する際、暗号鍵だけ漏えいしないというケースは考えづらいでしょう」(徳丸氏)

また平文のパスワードを、サイトの管理者やヘルプデスク担当者が知りえないようにするため、という理由もある。

一方で、パスワードはハッシュ値で保存されていれば解読されない、というのもよくある誤解だ。2012年にLinkedInから漏えいしたことが公表された650万件のパスワードは、ハッシュ関数「SHA-1」によりハッシュ化されたうえで保存されていた。しかしアメリカのパスワード保護の専門家はこのうち540万件を1週間で解読したと発表している。

解読は、AI解析で用いられるなど高い演算性能をもつ処理装置、GPU(Graphics Processing Unit)を25機積んだパスワード解析用のマシンを用いて行われたという。このマシンによると、8桁の英数字パスワードの場合、SHA-1によるハッシュ値で保存されているものでも60分で解読の計算が完了する。マシンの性能は今後も向上していくと考えられるため、「パスワード解析にかかる時間は短くなる一方だ」と徳丸氏は展望した。

しかしハッシュ値で保存されたパスワードは安全かといえば、そうは言い切れない。先に例をあげたとおり、考えられるパスワードの文字列の組み合わせを総当たりすることで、解読される可能性は残されているのだ。

徳丸氏はそうした解読方法への対策のひとつとして「Salt(ソルト)」をあげた。これは元のパスワードに、「ユーザーごとに異なり一定の長さを持つ文字列」であるソルトを追加したうえでハッシュ化する方法だ。これによりたとえ複数のユーザーが同じ文字列のパスワードを用いていたとしても異なるハッシュ値を得ることができ、攻撃者による試行の回数を増加させることができる。一方、この方法を施すだけでは、特定のアカウントに絞って解読を試みられた場合、短時間で解析されてしまう可能性がある。

そこで重ねて行うべきだと紹介されたのが「Stretching(ストレッチング)」だ。これはひとつのパスワードに対し、ハッシュの計算を繰り返し行うことを指す。たとえば1万回ストレッチングした場合、先ほどのGPUを積んだマシンで20分かかる計算が20万分かかるようになる。時間稼ぎができることで、その間に不正な試行を検知して対処が行えるようになるのだ。

ソルトとストレッチングを用い、かつユーザーがしっかりと考慮してパスワードを設定することで、悪意を持つ第三者に解読される可能性は極めて低くなる。しかし、「password」や「123456」といった「弱い」パスワードが用いられていた場合、いくら対策を行っても推測され突破されてしまう可能性は残るだろう。

そうした弱いパスワードも守るべく、近時、「ある共通の秘密文字列」をすべてのパスワードに追加したうえでハッシュ値を求める「Pepper(ペッパー)」という方法も導入の動きがあるという。ペッパーは共通かつ固定の文字列のため、暗号鍵と同様に漏えいの可能性は否めないが「時間稼ぎが行え、やらないよりもまし」だと徳丸氏は述べた。

講演では最後に、パスワード保護対策の先進企業としてDropbox社が紹介された。同社はハッシュ化やストレッチング、暗号化といったいくつものパスワード漏えいに関する対策を行っているという。ただし徳丸氏は、これを真似し、自社でアレンジして実施することは危険だと説明。現在のベストプラクティスは「ソルトを用いたハッシュ化」と「ストレッチング」の組み合わせのため、まずは素直にそのまま使うことを推奨し、講演を締めくくった。

(取材・構成・文・編集:BUSINESS LAWYERS 編集部)

無料会員登録で
リサーチ業務を効率化

1分で登録完了

無料で会員登録する