0

この質問は、phpexcel/phpspreadsheet の開発者向けです。

私たちは現在、ウェブサイトのライブラリを使用して (明らかに) Excel ファイルを生成しており、現在 SOC2 認定を取得中です。これには、すべてのコードとサードパーティのコードをセキュリティ スキャナーで実行する必要があります。

スキャナーは 36 の脆弱性を返しますが、そのすべてが「壊れた、または危険な暗号アルゴリズムの使用」です。単純に MD5 関数呼び出しを使用した結果として。

だから私の質問は、なぜMD5を使用してハッシュしているのか、なぜハッシュしているのかということです. 何が起こっているのかをよりよく理解できれば、ハッシュ メカニズムを変更してみるか、少なくともそれが実際にセキュリティ リスクではない理由を説明できます。

4

2 に答える 2

2

私は phpspreadsheet の開発者の 1 人ではありませんが、md5 関数の使用方法についていくつかの観察があります。

IMO、報告された脆弱性は誤検知です。確かにmd5()、データ (特にパスワード) を保護するために使用するのは適切ではありません。ただし、セキュリティ以外にもハッシュ値には他の用途があります。コード スキャンでは、md5 が暗号化の目的で使用されていると想定しているようです。そうではない。

ソースコードを見て、 がどこmd5()で使用されているかを確認してください。主に、オブジェクトとそのすべてのプロパティ値を簡単に比較できるように、複数のプロパティ値を持つオブジェクトのハッシュを作成するために使用されます。パスワードやその他のセキュリティ関連のタスクを伴う使用は見当たりませんでした。

スタイル オブジェクト (つまり、境界線、色、配置など) は、md5 ハッシュの一般的なターゲットです。「境界」オブジェクトを考えてみましょう。プロパティを 1 つずつ調べて別のオブジェクトの同じプロパティと値を比較するよりも、上、右、下、左、および対角線の値を組み合わせたハッシュを比較する方がはるかに簡単です。

とは言っても、phpspreadsheet が暗号的に安全であるとか、md5 のすべての使用が適切であるとは主張しません。私は md5 のすべての使用を調べたわけではありません。しかし、報告が完全に正確ではないというケースもあると思います。

于 2018-12-08T16:28:43.193 に答える