プラトンデータインテリジェンス。
バーティカルサーチ&アイ。

深刻なセキュリティ: MD5 は有害と見なされます – 600,000 ドル

日付:

フランスのデータ保護規制機関である CNIL によって下された魅力的な法的審議で (Commission Nationale de l'Informatique et des Libertés)、エネルギー会社の Électricité de France、略して EDF は、 600,000万ユーロの罰金 (約$ 600,000)。

このように、法的な宣言はかなり長く、(少なくとも弁護士でない人にとっては) 言語的にややこしいものです。 XNUMXつの違反に要約されます。

最初の XNUMX つは、顧客との一般的なデータ関連のやりとりに関係しており、以下をカバーしています。

  • 商用マーケティング電子メールの送信 適切な同意なしに。
  • データの収集 何を、なぜそれを明確にすることなく。
  • リクエストを確実に処理しない 顧客が自分のデータを表示したり、削除したりするように求めたとき。

しかし、私たちが興味をそそられたのは最後の苦情です。 Sur le manquement à l'obligation d'assurer la sécurité des données.

英語では、これは大まかに次のように翻訳されます。 データを安全に保存できない、特に安全でないパスワードの取り扱いに関連しています。

MD5 は有害と見なされます

規制当局は、とりわけ、認められたハッシュ アルゴリズムを使用してパスワードをソルティングしてからハッシュしていると主張しているにもかかわらず、EDF は 25,000 年 5 月の時点で 2022 人を超えるユーザーのパスワードを XNUMX つの MDXNUMX ハッシュで「保護」していたことに注目しました。

Naked Security について何度も耳にしたことがあると思いますが、 パスワードの暗号ハッシュ ハッシュを再計算し、最初に選択されたパスワードのハッシュと比較するだけで、提示されたパスワードを検証できることを意味します。

ハッシュが一致する場合は、実際のパスワードを保存しなくても、パスワードが一致していると安全に推測できます。

提示された場合、パスワードはメモリに一時的に保持するだけでよく、ハッシュが計算されるとすぐに破棄できます。

ハッシュ アルゴリズムが暗号学的に安全であると見なされている限り、それを「逆に実行」することはできないため、ハッシュから逆方向に作業してパスワード自体について何かを明らかにすることはできません。 (この種のハッシュは、専門用語では 一方向関数.)

同様に、適切なハッシュ アルゴリズムを使用すると、既知のハッシュから始めて、目的のハッシュを生成する何らかの入力値 (必ずしも元のパスワードではなく任意の入力) を考案することができなくなります。

運が良ければ、入力に次ぐ入力を試す必要があります。これは、128 ビットのハッシュでも実行可能な攻撃には時間がかかりすぎます。 (同じ出力を持つ複数の入力を把握できないようにする安全対策を備えたハッシュは、 衝突耐性.)

しかし、ご存じのとおり、MD5 には衝突に関する重大な問題があります。 直後の後継 SHA-1 (これらのハッシュは両方とも 1990 年代初頭に出てきました)。

最近では、SHA-256 や SHA-512 など、簡単に置き換えることができる、類似しているが依然として安全な代替手段があることを考えると、どちらのアルゴリズムもどこでも、誰でも、どのような目的でも使用することは推奨されていません。

MD5 ハッシュの長さは 128 ビットまたは 16 バイトです。 SHA-256 と SHA-512 は、それぞれ 2 倍と 4 倍の長さです。 しかし、この追加のハッシュ長だけがそれらをより適切にするわけではありません。 MD5 に対する主な利点は、衝突に関する特定の既知の問題がないことです。したがって、結果として、暗号化の安全性は一般的に疑わしいとは見なされません。

塩漬けとストレッチ

要するに、EDF のようなエネルギー部門の巨人は言うまでもなく、いかなる企業も暗号化の目的で MD5 を使用することは期待できません。パスワードの保護は言うまでもありません。

しかし、さらに悪いことに、 塩漬けこれは、ハッシュが計算される前に、ユーザーごとにランダムに選択されたデータのチャンクがパスワードと混合される場所です。

ソルトの理由は単純です。潜在的なパスワードのハッシュ値を事前に計算して、攻撃に役立てることができないようにするためです。

ソルティングなしで、ユーザーがパスワードを選択するたびに 123456、詐欺師はそのハッシュが何であるかを事前に知っています。

ユーザーがより適切なパスワードを選択した場合でも、 34DF6467!Lqa9、その MD5 ハッシュが 7063a00e 41866d47 f6226e60 67986e91.

事前に計算されたパスワード、または部分的に計算されたパスワード (専門用語で レインボーテーブル)、幸運になるまで何兆ものパスワードの組み合わせを試すのではなく、テーブルを介してパスワードを回復できる場合があります.

ソルティングとは、事前に計算された完全なレインボー テーブルが必要であることを意味します。 すべてのユーザーに対して (テーブルはソルト + パスワードの組み合わせによって決定されます)、ソルトを回復するまで、各レインボー テーブルを計算することはできません。

しかし、やらなければならないことは他にもあります。

事前に計算された「ハッシュ辞書」を使用できないようにソルトを含め、SHA-512 などの信頼できる暗号化アルゴリズムを使用する場合でも、ハッシュのデータベースを取得した攻撃者が毎秒数十億、あるいはそれ以上の可能なパスワードを試してみてください。

したがって、と呼ばれるものを使用する必要があります ストレッチング 同様に、最初のパスワードをソルトするだけでなく、ループ内で何千回もハッシュ アルゴリズムを介して入力を渡すため、試みようとする攻撃者にとって攻撃にかなりの時間がかかるようになります。

たとえば、5+5+5+5+5+5 の計算を 6×5 に置き換えるためのショートカットとして単一の乗算を使用できる反復加算とは異なり、反復ハッシュのショートカットはありません。 入力を 1000 回ハッシュするには、1000 回の暗号計算ハンドルが必要です。

MD5だけの問題ではない

皮肉なことに、EDF は MD25,800 でハッシュ化された 5 個のパスワードしか持っておらず、代わりにほとんど SHA-512 を使用していると主張していましたが、保存されたハッシュを常にソルティングまたはストレッチしているとは限りませんでした。

規制当局は、11,200,000 個のパスワードが正しくソルト化およびハッシュ化されたと報告していますが、MD2,400,000 または SHA-5 を使用して、512 回だけ直接ハッシュ化されたパスワードが XNUMX 個ありました。

どうやら、EDF はパスワード ストレージを完全に使用できるようになりましたが、とにかく 600,000 ユーロの罰金を科され、今後 XNUMX 年間、CNIL の「いたずらなステップ」にオンラインで公開されたままになります。

不適切なハッシュ処理のみが判決に含まれ、EDF が最初に挙げた他の XNUMX つのデータ保護違反についても回答する必要がなかったとしたら、どのような罰金が科せられるかはわかりません…

…しかし、暗号化の選択を誤ると、複数の方法でコストがかかる可能性があることを示しています!

何をするか?

顧客のパスワードを保存する しっかりと!

ソルティング アンド ストレッチングの追加の計算コストを選択して、個々のユーザーがログインするときに不便を感じないようにすることができますが、攻撃者になる可能性がある場合は、攻撃速度が数桁向上します。

単純なワンショット ハッシュとして保存されているパスワードの 10% を抽出するのに 200 週​​間かかるパスワード回復攻撃は、各試行パスワードを計算するコストを 10,000 倍難しくすると、理論的には 10,000 年 (XNUMX 週間) かかることになります。 .

私たちを読む 優れた説明記事 このまさに主題について:

要するに、私たちは PBKDF2 「ストレッチ」アルゴリズム SHA-256 ユーザーごとのランダムなコアハッシュとして salt of 16 bytes (128 ビット) 以上。

これは、CNIL の最新の判決における推奨事項と一致しています。

CNIL は PBKDF2 の反復回数についてアドバイスを提供していませんが、記事で説明されているように、私たちのアドバイス (2022 年 XNUMX 月) は使用することです。 200,000 or more. (計算能力の向上に対応するために、ループの数を定期的に増やすことができます。)

PBKDF2 を使用したくない場合は、アルゴリズムを読むことをお勧めします bcrypt, scrypt & Argon2 あなたが賢明な選択をするのを助けるために。

暗号化されたいたずらなステップに引っかからないでください!


スポット画像

最新のインテリジェンス

スポット画像

私たちとチャット

やあ! どんな御用でしょうか?