人の造りしもの――“パスワード”の破られ方と守り方:セキュリティ対策の「ある視点」(9)(3/4 ページ)
パスワードを破るのも人ならば、それを守るのも人。今回はあなたのパスワードを守るために、「今すぐできること」を解説します。
サーバの再起動ができない環境で今やるべきこと
サーバの中には検証などを必要とするため、サーバの設定を変更できない場合も考えられる。そのような場合のために、前述した設定変更を行わずとも、NTLMハッシュのみの格納となる方法も紹介しよう。こちらは、再起動などの必要がなく運用に負荷をかけないものである。その設定とはズバリ「15文字以上のパスワードを設定する」である。
LMハッシュの格納は、15文字以上の文字列に対応していないため、これにより、システム内には、強制的にNTLMハッシュのみが格納される。以下は、設定変更を行っていない環境下で、15文字以上のパスワードを設定したユーザーのPwDump7の実行結果である。
「str15」という名前のユーザーのパスワードハッシュがNTLMのみになっていることが分かる。
まとめると、LMハッシュを格納せず、NTLMハッシュのみの格納とするには以下の選択肢があることになる。
- システムの設定変更によりNTLMハッシュのみの格納を強制
- 設定するパスワード長によるNTLMハッシュのみの格納を強制
パスワードなどは運用ポリシーがある場合が多いため、その内容を確認し、上記2つの方法から、自分の管理下にあるコンピュータへの対策を講じていただければと思う。前述したが下位互換の問題もあるため、その点も考慮したうえで筆者は1.の方法、システムの変更設定による強制を推奨させていただく。
NTLMハッシュへの攻撃――Rainbow Crackにも耐えられるか
さて、今回はパスワードハッシュの格納方式に関する設定について説明した。これはPwDumpのようなソフトウェアを用いてパスワードダンプを取得されてしまった後、John The RipperやRainbow Crackでのパスワード復元をしづらくするものである。
ここでは、どうして復元しづらくなるのかということについて簡単に説明させていただこう。
John The Ripperについては、LMハッシュとNTLMハッシュの違いのところで説明したので割愛させていただく。次のRainbow Crackなのだが、こちらは前回の記事でも説明したとおり、解析を行うためには作成に膨大なリソースを要する「Rainbow Table(以下RT)」が必要となる。そして、このRTは自身で作成するか、インターネットに公開されているファイルをダウンロードすることとなる。
自身で作成するには、必要なRT(ハッシュ種別や文字列長)を作成することができるが、スペックの高いマシンを複数用意しなければ現実的な時間で作成することができない。RTをダウンロードする場合は、回線の速度、安定性が必要となる。また、当然のことながら、自身が必要とするRTが公開されているとは限らない。
現在、LMのすべての文字種【注3】に対応したテーブルをインターネット上から正常にダウンロードできることは確認されている。だが、NTLMハッシュに関しては、大文字小文字が識別され、7文字分割が行われないことから、作成にはかなりのリソースを要することもあり、インターネット上には、多くの文字種、文字列長に対応したNTLMハッシュ用RTは公開されておらず、一部の文字のみに対応したものが公開されている状態だ。
【注3】
LMハッシュにおける、すべての文字種とは下記のとおりである。
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
!@#$%^&*()-_+=~`[]{}|\:;"'<>,.?/ 空白
よって、NTLMハッシュのみの格納にすれば完ぺきというわけではないが、文字種、文字列長によって複雑性を持たせることにより、ダウンロードできるRTからの復元に対しては、ある程度の担保は取れるのではないかと考えられる。
ただし、これは、あくまでも現在の状況ということを忘れないでほしい。
今後時間の経過によって、新たなRTの公開、またはアルゴリズムの発表により、NTLMハッシュの復元の難易度が下がらないともいい切れないのである。
ちなみに、RT作成の分散コンピューティングプロジェクトも存在し、世界中のコンピュータのリソースを使ってRTの作成が着々と進められている。
Copyright © ITmedia, Inc. All Rights Reserved.