パスワードが十分に安全に保存されていない状態でデータ侵害が発生した場合、パスワードを再利用すると、ユーザーにとってひどいリスクになります。つまり、デフォルトでは、このパスワードを使用する他のすべてのサービスも侵害されます。通常、これらの違反では、SHA-1などのハッシュアルゴリズムのみを使用してパスワードを保存しますが、最近では一部のケースではMD5(パスワードを安全に保存するためのものではありません)であるため、生のGPUハッシュだけを使用してパスワードをブルートフォース攻撃することが簡単になりますパワー。
人が多くの種類の記号、数字、文字と混合された非常に十分なエントロピーの十分な長さ(例:100+)の適切にランダムなパスワードを作成する場合;キーロガーがインストールされているなどの意味でマシンが危険にさらされておらず、すべてのブラウジングセッションが暗号化されたトンネルを介して行われる場合、可能であれば、このパスワードを複数のWebサイトで再利用するリスクがあります- おそらく彼らが使用するサービスの1つでデータ侵害が発生した場合、存続期間中にクラックされることはありませんか?
パスワードを盗むためにハッシュをブルートフォースする必要はありません。攻撃者によってWebサイトが侵害され、ログインフォームからプレーンテキストでパスワードを直接読み取れる可能性があります。または、Webサイトの所有者がこれを行っている可能性があります。必要に応じて、いつでも実行できます。所有者を信頼するかどうかは、あなた次第です(FacebookとSomeBlackHatCommunityドットコムで同じパスワードを使用することは望ましくありません)。また、パスワードを盗むための古き良きショルダーサーフィンは常に存在します。パスワードは鍵のようなものであり、同じパスワードを使用することで、実際には同じ鍵を別のドアの別の人に与えます。あなたはそれが決して良い考えではないことがわかります。
したがって、あなたはnever異なる場所で同じパスワードを使用する必要があります。ただし、そのパスワードが同じデータを保護したり、同じ権限を付与したりしない限り、たとえば、バックアップを保護するために同じパスワードを使用できると思います。
TL; DR:パスワードを回復する必要はありません。同じハッシュを生成する文字列を見つける必要があります。Webサイト開発者が使用するハッシュは、すべて安全なものを使用するまで制御できないので、使用しません。費用がかからない。そして、私があなたの後である場合私はあなたが使っているウェブサイトを弱いウェブサイトを見つけるまでハッキングし続けます。または、別の方法を使用します。
関連するXKCD:
関連するXKCDがない場合は、すぐに存在するからです。
パスワードの再利用は、データ侵害が発生した場合にユーザーに大きなリスクをもたらします。
そのパスワードが重要なものを保護している場合のみ。
一般的なインターネットフォーラムの使用方法については、私はそれ自体のメールアドレスとすべてに4つまたは5つのパスワードを使用しました。
これらのパスワードはを保護しません。その背後にある電子メールアカウントを危うくしても、私の名言を彼がすでに見ているものよりも見栄えよくする能力しかありません。
パスワードが安全に保存されていないため、
パスワードは保存されません。これに戻ります。
つまり、デフォルトでは、このパスワードを使用する他のすべてのサービスも侵害されます。
より正確に言うと、次のようになります。
...これは、デフォルトで、メールアドレスとパスワードを使用する他のすべてのサービスが考慮されるかつ、攻撃者はあなたの他のメールアドレスを知っています。そのパスワードを使用するものはすべて検討する必要があります...
ID(これらの目的のため)は、あなたが何であるか(電子メールアドレス)とあなたが知っているもの(パスワード)です。
Somerandomforum.comとwellsfargo.comで「[email protected]」であることがわかっていて、3つすべてに同じパスワードを使用している場合。
しかし、webforumsで「[email protected]」を使用し、Azxdreuwa @ yahoo.comを「個人」で使用し、「[email protected]」をプロで使用する場合、algorithmic攻撃者がそれらをソートします。
通常、これらの違反では、SHA-1などのハッシュアルゴリズムのみを使用してパスワードを保存しますが、最近では一部のケースではMD5
私はあなたがこれを知っていることを知っており、私はひどく無茶苦茶ですが、一般的にパスワードを保存しません。それがSHA-1、MD5、またはその他のハッシュ(貧弱で死んだ「暗号」またはブロック上の最新の壊れていないものを含む)の場合、ハッシュからパスワードへの信頼できる往復はありません。
Eaf4c33ae978d3f2852021214a061534から「フレッドは死んでいる」ことはできません。同じハッシュに対して、長さが不確定の2つ以上の文字列を作成できる場合があります。あなたができることは、それらが一致するまで文字列を生成することです。これは異なり、それは重要な違いです。これも重要です。
(これはパスワードを安全に保存するためのものではありませんでした)、生のGPUハッシュパワーだけを使用して攻撃者がパスワードをブルートフォースするのを簡単にします。
$ {WHATEVER}のコインマイニングに費やす時間と電力を大幅に浪費するのは、なんてことでしょう。
どちらの方法でも、ハッシュを再構築せず、一致するまでアルゴリズムで文字列をスローし続けます
BigWebSiteIncから抽出した500万件のemail:name:passwordタプルを使用すると、事前計算されたRainbowテーブルがLOTで高速になり、LOTでより多くの結果を得ることができます。
そして、そうです、GPUはそのs * tを本当に高速に計算できることを知っています。しかし、ルックアップははるかに高速であり、私はあなただけではなく、たくさんのパスワードを壊したいと思います。
自分の資格情報が必要な場合、それらを取得する他の方法があります。十分に悪いものにしたい場合は、ええ、それはおそらくStack Exchangeがホストしたいフォーラムではありません。セキュリティには多くの側面があり、暗号化はそれらの一部のみを保護します。
非常に十分な長さ(例:100+)の非常に十分なエントロピーの適切にランダムなパスワードを作成する場合、多くのタイプの
実話。 10年ほど前、私は米軍の予備役でした、そして彼らはあなたの軍事IDがあなたのネットワークアカウントのあなたの資格情報の一部であったシステムを持っていました(持っていましたか?)。ほとんどのコンピュータにログインするには、軍事IDをスマートカードリーダーに入れ、「ピン番号」を入力する必要がありました。
ある時点で、新しいPINを必要とする新しいIDカードを受け取りました。そこで、ピン入力の場所に行き、キーボードにIIRC 10桁の数字を入力してから、もう一度入力しました。それは私のPIN=一致し、私が行ったことを言った。
ユニットに戻ってログインしようとしました。失敗。
だから戻ってきました。数回。混乱しました。次に、PINを短縮し、うまくいきました。
PIN(または何でもいい。$ MY_NUM-2)に8文字または9文字の制限があった。最初のエントリーシステムは、余分な数を静かに破棄していた。 (またはその逆)
ISTRは古いバージョンのLANMAN(??)が8文字のパスワードしか使用していなかったため、SAMBA readmeにNTの初期バージョンのパスワードデータベースに関するハッシュを2つの部分に格納するものがあります。それがどのように機能したかわかりません。
とにかく、入力画面からパスワードの保存までのワークフローで、文字数が制限されている場合とそうでない場合があります。そしてこれは、さまざまなWebサイトがソフトウェアを変更するにつれて変化する可能性があります。一体、それは連合システムの異なる部分で異なるかもしれません。あなたは彼らの期待をあふれさせないようにしたいのです。
記号、数字、文字;キーロガーがインストールされているなどの意味でマシンが危険にさらされておらず、すべてのブラウジングセッションが暗号化されたトンネルを介して行われている場合、このパスワードを複数のWebサイトで再利用することはできません。彼らが使用するサービスの1つでデータ侵害が発生した場合、存続期間中にクラックされる可能性がありますか?
正直なところ、セキュリティの高いアプリケーション(SSHキーの保護など)では、よく覚えている2曲の最初の2スタンザを使用します。それらの少なくとも1つは、私のブレーンに永久に固定される誤ったスペルミスを持っています。
問題は、パスワードストア(ファイル、データベースなど)でID:pwハッシュを表示している場合、できる限り簡単に解読したいということです。ある種の強力なキーストアを使用していて、他のサイトごとに異なるパスワードを持っている人は欲しくないのです。それらはパスワードを再利用する可能性が最も高いものです。
ええ、それはあなたのパスワードをより安全にし、いくつかのことを法とします。
相手側で使用されているハッシュを選択することはできません。また、人々が「壊れた」ハッシュ(md5、SHA-1など)を使用している限り、複数のハッシュを取得できます。ハッシュに一致する文字列。使用する1つのWebサイトがパスワードを不正なハッシュに格納し続ける限り、脆弱です。
これが私が知識を失っていた理由です。パスワードを保存せず、パスワードのハッシュを保存します。パスワードを回復する必要はありません。同じハッシュを生成する文字列を見つけるだけです。
最高のホワイトニングされた乱数ジェネレーターの出力で構成される100文字の文字列が "Fred is dead"のハッシュと一致するだけで発生し、その後、失われた可能性があります。
これは、タイプするのを見ることができるカメラを置き、SSLセッションにMITM攻撃を実行している誰かの上にあります(これは、過去数年間に私が働いてきた主要企業の約半分です-彼らはプロキシサーバーでそれを行います) DLPを行う)、ウェブサイトをハッキングしてログインページに追加のコードを挿入するか、他の12のハッキングのいずれかを行います。
またはあなたの膝に銃を置くだけです。またはもっと恐ろしい方法。
使い捨てデータに使い捨てパスワードを使用し、複数のオンライン「ID」と重要なもののために十分に安全な鍵ストレージを使用するのがおそらく最善の方法です。これは一種の「多層防御」であり、かなり簡単に実行できます(実際、私はそれを実行できますが、それほど難しくはありません)。
@IMSoPをアドレス指定すると、コメントとして表示されます。
実際に保存されるハッシュは通常パスワード+ハッシュなので、ISお気に入りの安全でないWebフォーラムと銀行が同じハッシュアルゴリズムとソルトを使用することはほとんどありません。
ただし、2番目のポイントは、安全でないハッシュを使用する[〜#〜] any [〜#〜]サイトの場合であり、それはそれらの多くです(以下の別の実話を参照)。 )攻撃者は、格納されているものにハッシュする文字列を取得し、あなたと同じようにそのサイトと対話することができます。
これは「パスワードの再利用」問題を回避しますが、非常に長いパスワードの問題に対処します。それは...ええと...人生の他の分野のようなものです。ある程度は良いですが、多いほど良いですが、多すぎると問題が発生します。
「安全でない」ハッシュの使用に関して、企業は訴訟について、そして二番目に宣伝について、そして最後に本当に安全であることについて心配する傾向があります。私の友人は、(特に)ラップトップとデスクトップのセキュリティを大幅に向上させるかなり安全なストレージメカニズムに関する特許を持っています。彼はこれにいくつかの大企業を巻き込もうとしました、そして彼がアプローチしたすべての人が同じことを示しました-彼らの現在のセキュリティは「一般的な業界慣行」と法的基準の両方を満たすので、それ以上の費用には興味がありません。彼らは、彼らの意見では「訴訟の証拠」であり、それゆえに宣伝についてはそれほど心配していません。
銀行が愚かな質問をすることは「三要素認証」であると決めた理由であり、その他の明らかに疑わしいセキュリティ慣行です。
つまり、それらのハッシュアルゴリズムは、OSがインストールされたときにOSに同梱されていたものです。それは「一般的な業界慣行」だからです。
安全なパスワードツールに保存されている16文字または20文字のパスワードは、これらの条件下では100文字のパスワードと同じくらい優れています。
これを折り返すために、私はここでのパスワードの再利用に反対しているわけではありません-同じパスワードを共有しているいくつかのホームコンピュータ(およびいくつかは異なる)を持っていますが、私は決してそれらの一部を複製します(個人用、仕事用、仕事用のメールアカウント、銀行のパスワードなど)。リスクに見合うだけの価値はありません。
通常ウェブサイトはパスワードの保存に弱いハッシュ関数を使用しますが、使用するどのウェブサイトも暗号化を使用して、またはさらに悪いことに、プレーンテキストでパスワードを保存しないと言ってもよろしいですか?
パスワードを再利用することにより、セキュリティは、それを使用する最も弱いサイトのセキュリティと同じくらい強力になります。攻撃者が悪意を持って設計されたサーバーのパスワード変更ログから単純にそれを読み取ることができれば、パスワードがどれほど長くても複雑でもかまいません。
あなたは完璧なシステムを想定しています
キーロガーがインストールされているなどの意味でマシンが危険にさらされておらず、すべてのブラウジングセッションが暗号化されたトンネルを介して行われる場合
または、少なくとも私はあなたがそうだと思います-その暗号化されたトンネルはより良い方がいいです。
ただし、パスワードを保持するサーバーを制御することはできません。よりよく知っているはずの企業でさえ、最近パスワードシステムをめちゃくちゃにしました: GitHub と Twitter は、両方とも内部的にログに記録されるか、キャッシュされたプレーンテキストのパスワードを持っています。
また、利点もありません。そのパスワードを覚えていないため、パスワードマネージャーに保存します。その時点で、一意のパスワードを使用することもできます(パスワードを再入力する必要がある場合に備えて、より短い)。
Webサイトでパスワードハッシュのさまざまなソリューションを見つけることができます。Argon2やScryptなどのメモリハード関数、カスタムハードウェアの脆弱性がありますが、少なくともPBKDF2などのソルト関数、ソルトおよびワークファクターのない単純なハッシュ関数、そして残念ながらそれほどまれではありませんが、ストレージまたは平文パスワードの送信。
パスワードが侵害されると、他のWebサイトを攻撃するために使用されるパスワードリストに表示される可能性があります。したがって、パスワードの再利用の問題は、セキュリティが最も弱い関数によって設定され、プレーンテキストストレージがどこかにある場合、実際に安全なパスワードであってもセキュリティがゼロに低下することです。
パスワードが非常に強力であっても、パスワードを再利用するリスクがあります。パスワードをプレーンテキストで保存しているWebサイトが侵害された場合、強力なパスワードが攻撃者に利用され、ブルートフォースでハッシュを実行する必要はありません。言い換えると、プレーンテキストでパスワードを保存するWebサイトで非常に強力なパスワードを使用した場合、パスワードの強度は何も達成しません。
残念ながら、多くのウェブサイトはストアパスワードをプレーンテキストで保存しており、ウェブサイトがこれを行っているかどうかがすぐにわかるとは限りません。そのため、ハッシュがブルートフォースされないことを前提として非常に強力なパスワードを再利用することは安全ではありません。
TL; DR:パスワードクラッキングは、パスワードの再利用に関する唯一のセキュリティ上の考慮事項ではありません。複数のサイトでパスワードを共有するということは、他のサイト/コンピューター/ネットワークに問題がある場合とは別に解読可能なパスワードがまだ危険にさらされていることを意味します。
すでにいくつかの素晴らしい回答がありますが、いくつかの考慮事項と要約を追加するだけです。
あなたの質問は、ほとんどの人が制御できないだろうという多くの陳述を前提としています:
キーロガーなどがインストールされているという意味で、マシンが危険にさらされていない
ネットワークセキュリティも忘れないでください。暗号化されたトンネルは、それがMITMdではないことを検証していますか?侵害されたCAであるHTTPSの問題はどうですか?証明書がハッキングされたためにサイトへのすべてのトラフィックが危険にさらされている別のHEARTBLEEDスタイルのシナリオ?また、今すぐキーロガーを作成した場合、多数の感染がない限り、必ずしもそれを検出できるとは限りません。他のユーザーが使用した他のマシンにログインしていますか?他の人にあなたのマシンを使用させますか?モバイルデバイスはどうですか?コンピュータを定期的に更新していますか? CCTVが設置されている公共の場所でパスワードを入力しているのを見た場合はどうなりますか?ハードウェアキーロガー?邪悪なメイド攻撃?
..これはすべて大きな仮定だと思います...
使用しているサービスの1つでデータ侵害が発生した場合に、存続期間中に解読できない可能性がある場合、複数のWebサイトでこのパスワードを再利用するリスクはありますか?
最近、Twitterがパスワードを安全に保管している可能性があることが明らかになりました。また、サイトのすべての実装における他の実装固有の弱点も除外する必要があります。
安全ではないサイトについて序文でそれを示唆しているので、このパスワードを使用するすべてのサイトをあなたも想定していると思います知っているまたパスワードを安全に保護します。私がオンラインで使用するほとんどのサイトでは、これをどのようにして知っていますか?私はそうしませんと言いますパスワードを安全にハッシュしますが、その保証はありません。
サイトごとに異なるパスワードを使用します。パスワードマネージャーを使用して、KeePassはかなり良いです:-)。
人が多くの種類の記号、数字、文字と混合された非常に十分なエントロピーの十分な長さ(例:100+)の適切にランダムなパスワードを作成する場合;キーロガーがインストールされているなどの意味でマシンが危険にさらされておらず、すべてのブラウジングセッションが暗号化されたトンネルを介して行われる場合、このパスワードを複数のWebサイトで再利用することはできません。彼らが使用するサービスの1つでデータ侵害が発生した場合、存続期間中にクラックされる可能性がありますか?
これにはいくつかの問題があります。まず、提案しているパスワードが長すぎます。印刷可能な約2 ^ 6.6のASCII文字です。したがって、128文字のセキュリティには20文字の均一なランダムパスワードで十分であり、256ビットには39文字で十分です。強力なパスフレーズは、 100以上のキャラクターの領土ですが、その強さは記号や文字の量とはほとんど関係ありません。
2番目に大きな問題は、サイトの実装者に不必要な信頼を置くことです。 Ifどのサイトeverにも、攻撃者がパスワードを回復できるバグがあるその後はい、パスワードを再利用しても安全です。問題は、それが巨大な「if」であるということです。誤ってパスワードを開示してしまうような優れたパスワードストレージシステムを設計しているWebサイトでも、非常に簡単です。考えてみてください この非常に最近のTwitterインシデント(今月の初めから) :
今日、Twitterは、一部のユーザーのパスワードがTwitterの従業員だけがアクセスできるログファイルにプレーンテキストで記録されていたことが判明した後、ユーザーにパスワードの変更を促すアラートを発行しました。
[...]しかし、コーディングのバグが原因で、Agrawal氏は次のように説明しています。 」
これは、プログラマが犯しやすい間違いです。 log(LogLevel.DEBUG, "loginRecord = {}", loginRecord)
行などをプログラムに投入するだけで、他の誰かがうっかりして本番環境でデバッグログをオンにします。数十のWebサイトで数千日をかけて数千人のプログラマがこれを掛け合わせると、サイコロはあなたに大いに反対します。 パスワードを再利用しないでください。パスワードマネージャを使用します。
あなたは彼らが訪問するどのサイトも敵対的ではないと仮定しています。サイトに登録して自分のメールアドレスを知らせ、自分のメールアドレスと同じようにこのサイトに同じパスワードを使用すると、私のメールにログインできます。
マーク・ザッカーバーグがフェイスブックを立ち上げたときに彼がしたことを実際に告白している何か。
パスワードの再利用は常にリスク評価です。実際には、パスワードの再利用は事実であり、問題はどのセットをどこで使用するかです。
しかし、あなたの質問に対する本当の答えは、パスワードを危険にさらす多くの方法があり、ブルートフォースが実際には最も可能性が低い方法であるということです。スニファー、キーロガー、MitM、侵害されたサーバー、さまざまな形式のXSSおよびその他のWeb攻撃、ショルダーサーフィン、そしておそらくパスワードに対する他の数十の方法が存在し、それらの多くにとって、パスワードの複雑さや長さは違いがありません。
ただし、アイデアの変更はかなり安全です。ランダムな64バイトのデータを生成し、それをファイルに保存するとします。次に、誰にも言わない「マスターパスワード」を選択し、そのパスワード、保存したファイル、およびサイトの名前を使用して、サイト固有のパスワードを生成します。
(echo super-secret-password; cat test-Rand; echo Amazon.com) | md5sum | sed 's/ .*$//' | xxd -r -p | base64
上記のコマンドラインでは、作成した特定のランダムファイルから常にパスワードTj02tXSPT+cQvN+79QqtjA==
が生成されますが、Amazonをgoogleに変更すると、代わりにoX9uOqM0/wUaNzUlTMUcfg==
が生成されます。
マスターパスワードを誤って入力すると、出力としてまったく異なるものが得られますが、正しく入力する限り、同じサイトでは常に同じ出力が得られますが、サイトごとに異なる出力が得られます。現在、サイト固有のパスワードを生成するために必要な「キーファイル」とマスターパスワード(2要素認証の一種)は誰も持っていません。 Amazonが危険にさらされても、私のgoogleパスワードは危険にさらされません。パスワードにはそれぞれ128ビットのランダム性が含まれていますが、これはほぼすべてのことに対して十分なはずです。
パスワードが危険にさらされる可能性がある多くの方法があります。解読できないパスワードを使用しても、他の手段による侵害のリスクを軽減することはできません。実際には、他の弱点を悪化させます。