人の造りしもの――“パスワード”の破られ方と守り方:セキュリティ対策の「ある視点」(9)(4/4 ページ)
パスワードを破るのも人ならば、それを守るのも人。今回はあなたのパスワードを守るために、「今すぐできること」を解説します。
パスワードへの攻撃、根本的な対策はあるのか
ここまで記事を読んでくださった人の中には、途中で以下のような疑問を感じた方がいるのではないだろうか。
「設定変更により、パスワードハッシュを取得されないようにすることはできないのか?」
筆者が検証を行った経験から結論をいうと、PwDump6とPwDump3においては、以下の3つの条件のうち、いずれか1つを満たしていれば、パスワードハッシュを取得はされなかった。
- 管理共有の無効化
- Serverサービスの停止
- Workstationサービスの停止
1.の管理共有はレジストリを修正することで無効化できる。
キー:
HKLM\SYSTEM\CurrentControlSet\Services\lanmanworkstation\parameters\
項目名:AutoShareServer
タイプ:REG_DWORD
値:0
また、2.、3.のサービスはコンピュータの管理から停止することができる。
だが、前回から記事の中でも使用しているPwDump7では、上記3つの条件のどの組み合わせでもパスワードハッシュの取得を防ぐことはできなかった。現状では、設定変更による、パスワードハッシュの取得を防ぐことは難しいと判断できる。
また、PwDumpシリーズは、アンチウイルスソフトの対応によりハッキングツールと見なされ、システム上にコピーすることや実行を防ぐことができた。だが、複数のアンチウイルスベンダのエンジンを用いてファイルをチェックできるWebサイト「VirusTotal」でスキャンを行ってみたところ、この記事の執筆時点では下図のように31ソフト中、検出できたソフトは皆無であった。
残念ながら、現状ではPwDump7によるパスワードハッシュの取得を防ぐことは難しいといえる。
いま、わたしたちが取れる対策とその考え方
パスワードには、容易に推測されない文字列を用いるということは大前提である。この推測という言葉には、さまざまな意味が含まれていると筆者は考えている。
- ユーザー名とパスワードが同じもの(俗にいうJoeパスワード)
- パスワードがブランク(Nullパスワード)
はいうまでもなく、誰しも推測が容易である。ここで、注意すべきところは、「誰しも」という部分ではないだろうか。
この「誰しも」という部分を「組織内部の人間」に置き換えてみてほしい。
ペネトレーションテストで指摘される脆弱性の中には「ユーザー名が取得可能である」というものがある。このような脆弱性を検査中に発見した場合は、そのユーザー名を使い、前述したJoeパスワードやNullパスワードなどを試行したさらなる検査を行う。これは、あくまでシステムのテクニカルな面における脆弱性を検査するためである。
では、そのシステム内のユーザー名に以下のような規則性があった場合はどうだろう。社員の名前の頭文字1文字と名字を「-(ハイフン)」でつなぐ、つまり、辻伸弘であれば、n-tsujiとなるような規則性である。
このような規則性があることは、組織内部の人間にとっては周知の事実である。従って、組織内部の人間であれば、システムにユーザー名を取得可能な脆弱性がなくとも、ユーザー名を知ることができる。
n-tsujiというユーザー名を知りえる状況下で、パスワードがtsujiだった場合を考えて欲しい。これは「推測が容易である」と言えるのではないだろうか。このようなシチュエーションも想定したうえで「推測が容易なパスワード」という言葉を扱い、対策する必要があると筆者は考えている。
最後に、筆者の考えるWindowsのパスワードについてのポイントを挙げさせていただく(なお、定期的に変更するということに関しては、パスワード復元を行うスペックなどに依存するため今回は割愛させていただく)。
- パスワードに使用する文字列は英数大文字小文字記号混在にする
- システムの設定変更が可能な場合は、NTLMハッシュのみの格納とする
- パスワード文字列長を15文字以上にする(2.ができない場合でもNTLMハッシュのみの格納となる)
- さまざまなシチュエーションを考慮し、誰にとっても推測が容易ではないものを用いる
OSやソフトウェア、それらの運用方法、ポリシー、パスワード文字列、それを格納する仕組み。これらはすべて人の造りしものである。それに対して、ツール、アルゴリズム、そして、これらを凶器と変えてしまう悪意。これらも同じく人の造りしものである。
人の造りしものは人の造りしものに守られ、人の造りしものに破られる。どこまでいっても、このループは続くのだろうと筆者は考えている。
皆さんは普段、情報を守る立場にあるかと思うが、ときには破る立場の視点に立つことで、今まで見えなかったものが見えることがあるのではないだろうか。筆者は、ペネトレーションテストを行う立場で、破ることを試み、守る方法を提案させていただくという特殊な立場にある。その視点が、皆さんのシステムをセキュアにする一助となれば幸いである。
著者紹介
辻 伸弘(つじ のぶひろ)
セキュリティエンジニアとして、主にペネトレーション検査などに従事している。
民間企業、官公庁問わず多くの検査実績を持つ。
自宅では、趣味としてのハニーポットの運用、IDSによる監視などを行っている。
- Q.E.D.――セキュリティ問題を解決するのは「人」
- たった1つの脆弱性がもたらすシステムの“破れ”
- 報告、それは脆弱性検査の「序章」
- ASV検査、ペネトレテスターの思考を追う
- プレイバックPart.II:シフトした脅威の中で
- プレイバックPart.I:ウイルスのかたち、脅威のかたち
- ハニーポットによるウイルス捕獲から見えてくるもの
- SNMPコミュニティ名、そのデフォルトの価値は
- 人の造りしもの――“パスワード”の破られ方と守り方
- 魂、奪われた後――弱いパスワードの罪と罰
- 魂まで支配されかねない「名前を知られる」という事件
- 己を知り、敵を知る――Nmapで見つめ直す自分の姿
- DNS、管理者として見るか? 攻撃者として見るか?
- メールサーバ防御でも忘れてはならない「アリの一穴」
- 「Forbidden」「サンプル」をセキュリティ的に翻訳せよ
- ディレクトリ非表示の意味をもう一度見つめ直す
- たった2行でできるWebサーバ防御の「心理戦」
Copyright © ITmedia, Inc. All Rights Reserved.