43

私はいつも、パスワードをプレーンテキストとしてデータベースに保存することは(他の誰かが言っているように)VeryBadThing™であるという印象を持っていました。

これまで、サーバー側のコーディングのニーズのほとんどは、プログラマーのグループに委託されてきました。パスワードはプレーンテキストでMySQLデータベースに保存されます。

常駐コードモンキー(ちなみに、ここで働く最初のサーバーサイドに精通したサルなので、いわば地球を継承しています)として、私はこの胃の穴に、私のお尻がライン上にあると感じていますこのプレーンテキストのナンセンスが悪用されるとき。

プレーンテキストのパスワードが非常に悪いことを上司に説明しようとしましたが、それは私に夜明けを告げました。なぜそれらがそれほど悪いのか、私は今まで本当に知らなかったと思います。ハッカーに銀の大皿にパスワードのリストを渡す以上のことはありますか?それは私には十分に悪いように聞こえますが、私たちのWebサイトが「安全」でハッカーの影響を受けないララランドでは、この議論はそれをカットしていないようです。上司に秘蔵のウェブサイトでハッシュを要求するように説得(または怖がらせる)するにはどうすればよいですか?

関連:データベース内のプレーンテキストパスワードの暗号化/ハッシュ

4

9 に答える 9

69

軍隊では「Defense in Depth」と呼ばれています。理論的には、1 つのレイヤーだけを強化してそれで十分であることを期待するのではなく、できる限りすべてのレイヤーを強化するというものです。

あなたのようなデータベースは「外は固く、中は柔らかく歯ごたえがある」と聞いたことがあります。熱心なハッカーがデータベースにアクセスする方法は 100 万通りあります。ソーシャル エンジニアリング、不満を持った従業員、ログインがまだ機能するかどうかを確認することを決定した元従業員、または彼が作成したバックドアがまだ存在するかどうか、OS パッチを 1 つ逃した... リストは続きます。

悪意のある人物がこれらの方法のいずれかを介してアクセスした場合、データを取得するだけでなく、システムのすべてのユーザーのすべてのユーザー名とパスワードの組み合わせにアクセスできます。誰かが指摘したように、人々はすべての Web サイトで同じ組み合わせを使用することがよくあります。 . ハッカーは外に出て、何百人もの Paypal、電子メール、および銀行口座を所有しています。

身の毛もよだつような絵をもう描きましたか?

于 2009-07-29T00:39:08.130 に答える
33

多くの企業では、セキュリティの問題は外部からではなく内部から発生することを考慮するように彼に伝えます。

次に、ハッカーが何らかの理由で誰かを解雇しなければならないときに、ハッカーがパスワードをどのように盗んだか(間違いなく他の場所で使用した)を顧客に説明する方法を彼に尋ねます。

また、データベースへの読み取りアクセス権を持つすべての人にパスワードが表示されることを顧客がどの程度知りたいと思うかを尋ねます。

于 2009-07-29T00:10:34.883 に答える
14

ここにいくつかの理由があります:

  • 誰かがあなたのサイトに侵入する可能性があります。それはありそうもないかもしれません、そしてこれはおそらくあなたの上司を揺さぶることはないでしょう(私は今会話を聞くことができます:「あなたはサイトが安全ではないと言っていますか?」)正直に侵入されます...
  • インサイダー(自分のような)によるデータベースのカジュアルな表示:誰かのパスワードを調べようとしているわけではないかもしれませんが、通常の作業の過程で、パスワードを含むテーブルを調べる必要があるかもしれません。多くの人が絶対にすべて(おそらくあなたの上司を含む!)に同じパスワードを使用していることを考えると、それらのパスワードのすべてを公開したくないでしょう。上司に、2つの異なるサイトでパスワードを再利用したことがあるかどうかを尋ねます
  • アプリケーションがパスワードを暗号化していないことに気付いた人は、アプリケーションの信頼性に深刻な疑問を投げかける可能性があります。
  • パスワードを(できればソルトを使用して)データベースにハッシュするのに基本的に費用はかかりません。
于 2009-07-29T00:12:34.050 に答える
9

アカウントを適切に保護しないと、情報が侵害された場合に会社が法的責任を問われる可能性があることを指摘することをお勧めします. 既知の脆弱性を無視すると、会社の行動 (または場合によっては不作為) の結果としてユーザーのデータが公開された場合、訴訟費用が発生する可能性があります。

米国では、財務情報や医療情報など、企業が安全かつ非公開に保つことが法的に義務付けられている特定の種類のデータがあります。そうしないと、深刻な結果を招く可能性があります。この点に関して、私は他の国の法律に精通していませんが、あなたの会社がそのようなデータを扱っているかどうかは調べる価値のあるものです.

于 2009-07-29T01:03:13.520 に答える
7

セキュリティ上のリスクに加えて、あなたの会社のすべての従業員がパスワードにアクセスできることをクライアントが知ったら、クライアントは何と言うでしょうか。漏洩の可能性がある場合、次の場合にパスワードが危険にさらされます。

  • データベースは外部企業によってバックアップされています
  • データベース ソフトウェアが実行されているオペレーティング システムにセキュリティ リスクがある
  • 他のハードウェアまたはソフトウェア ファイアウォールのセキュリティ上の欠陥
  • データベースにアクセスできるすべてのユーザーは、データを悪用する可能性のあるウイルスに何らかの形で感染します
  • 盗まれたコンピューターまたはラップトップにデータベースがたまたまある
  • 不満を持った従業員が解雇され、「戻る」ことを決意する

機密情報をプレーン テキストで保存している企業の話を時々耳にしますが、それは決してうまくいくわけではありません。私たちは皆人間であり、エラーを起こしやすいものです。セキュリティに関しては、完璧を想定することはできません。起こりうる悪いことはすべて起こるので、大規模で収益性の高い企業が回避できるリスクの余地を残していることはありません...

于 2009-07-29T00:35:01.547 に答える
5

「クラッカーに銀の大皿にパスワードのリストを渡す」が十分な理由ではない場合、何が十分な理由を構成しますか?

于 2009-07-29T00:11:10.793 に答える
4

プレーンテキストのパスワードが盗まれたデータベースのケースが多すぎます。redditが発生する可能性がある場合は、それが発生する可能性があります。

于 2009-07-29T00:12:32.943 に答える
1

この質問に対して公布された2つの良い答えは次のとおりです。

  1. パスワードを詮索する従業員から保護します。つまり、データベースに正当にアクセスできる人は、気が向いたとしてもパスワードを簡単に盗むことはできません。

  2. WebサイトのフロントエンドでのSQLインジェクションなどのアプリケーションロジックの欠陥により、侵害が発生する可能性が低くなります。

私の意見では、データベースのパスワードを暗号化することは良い考えです(ただし、ほとんどのアプリで暗号化することはまだできていません)が、はるかに重要なのは、データベースサーバーがネットワークと許可されたアクセス。攻撃者がデータベースにアクセスできた場合、パスワードをどのように保存したかは関係ありません。攻撃者はパスワードを破ることができます。

于 2009-07-29T00:13:14.333 に答える