簡體   English   中英

phpspreadsheet使用MD5哈希

[英]phpspreadsheet use of the MD5 hashing

此問題適用於phpexcel / phpspreadsheet的開發人員。

我們目前正在使用我們網站上的庫來生成excel文件(顯然),並且目前正在獲得SOC2認證; 這要求我們將所有代碼和第三方代碼運行到安全掃描器中。

掃描程序返回36個漏洞,所有漏洞均為“使用損壞的或有風險的密碼算法”; 由於僅使用了MD5函數調用。

所以我的問題是為什么要使用MD5進行哈希處理,為什么還要對其進行哈希處理呢? 如果我能更好地了解發生了什么,我可以嘗試更改哈希機制,或者至少解釋一下為什么它確實不是安全隱患。

我不是phpspreadsheet的開發人員之一,但是我對它如何使用md5函數有一些觀察。

IMO,報告的漏洞是誤報。 確實,使用md5()來保護數據(尤其是密碼)是不合適的。 但是除了安全性之外,哈希值還有其他用途。似乎代碼掃描假定md5用於加密目的。 它不是。

只需看一下源代碼,看看在哪里使用了md5() 首先,它用於創建具有多個屬性值的對象的哈希,以便輕松比較對象及其所有屬性值。 我沒有發現它涉及密碼或其他與安全相關的任務。

樣式對象(即邊框,顏色,對齊方式等)是md5哈希的常見目標。 考慮一個“邊界”對象。 比較上,右,下,左和對角線組合值的哈希值要比一次遍歷屬性以比較另一個對象中具有相同屬性的值要容易得多。

所有這些,我並不是說phpspreadsheet是加密安全的,也不是每次使用md5都是合適的。 我沒有檢查md5的每種用法。 但是我認為有理由認為該報告並不完全准確。

正如DFriend已經指出的那樣,PHPExcel / PHPSpreadsheet中的md5()的使用(除了一個例外)並未用於加密目的。 它用於生成准唯一的哈希/校驗和,以快速比較對象值。

唯一的例外是驗證任何Xls密碼,因為MS Excel本身使用md5哈希作為其密碼驗證的一部分。 對於SOC2認證,您必須與Microsoft一起進行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM