Skip to main content
網路安全

什麼是雜湊?

雜湊是資料安全中的一項基礎技術。了解雜湊如何運作,以及它在保護敏感資訊中的角色。

作者 SentinelOne
什麼是雜湊?

雜湊是密碼學與資訊安全中的基礎概念。我們的指南將探討雜湊的原理,說明密碼雜湊函數如何運作,以及它們在保護敏感資料方面的重要性。

了解不同類型的雜湊函數、其特性,以及常見應用,例如密碼儲存、資料完整性驗證和數位簽章。探索如何為您的特定使用案例選擇合適的雜湊函數,並在您的組織中實作安全的雜湊實務。

什麼是雜湊演算法?

雜湊值是雜湊演算法的輸出,例如 MD5(Message Digest 5)或 SHA(Secure Hash Algorithm)。這些演算法的本質目標,是為任何給定的資料或「訊息」產生一個唯一且固定長度的字串——也就是雜湊值,或「訊息摘要」。由於電腦上的每個檔案,歸根究柢都只是可以用二進位形式表示的資料,因此雜湊演算法可以取得該資料,對其執行複雜的計算,並將固定長度的字串作為計算結果輸出。該結果就是檔案的雜湊值或訊息摘要。

若要在 Windows 10 中計算檔案的雜湊值,請使用 PowerShell 內建的 Get-FileHash cmdlet,並提供您想要產生其雜湊值的檔案路徑。預設情況下,它會使用 SHA-2 256 演算法:

您可以在檔案路徑後使用 -Algorithm 參數來指定其他演算法。將結果傳遞給 Format-List 也會提供更易於閱讀的輸出:

對於 Mac 和 Linux 使用者而言,命令列工具 shasum 和 md5 具有相同用途。正如我們稍後將看到的,無論您使用的是 Windows、Mac 或 Linux,對於任何指定的檔案與雜湊演算法,雜湊值都會相同。

雜湊如何建立身分識別

雜湊無法被反向還原,因此僅僅知道檔案經由雜湊演算法產生的結果,並不能讓您重建該檔案的內容。然而,它確實能讓您在完全不知道內容的情況下,判斷兩個檔案是否相同。

基於這個原因,結果必須是唯一的這個概念,對整個雜湊概念而言至關重要。如果兩個不同的檔案可能產生相同的摘要值,就會發生「碰撞」,而我們將無法把該雜湊作為該檔案的可靠識別碼。

產生碰撞的可能性很小,但並非聞所未聞,這也是為什麼像 SHA-2 這樣更安全的演算法已取代 SHA-1 和 MD5。例如,下列兩個檔案的內容,ship.jpg and plane.jpg顯然不同,從簡單的目視檢查即可看出,因此它們應該產生不同的訊息摘要。

然而,當我們使用 MD5 計算其值時,卻得到碰撞,錯誤地指出這些檔案是相同的。這裡的輸出來自 macOS 上使用 Terminal.app 的命令列,但您可以看到 ship.jpg 的雜湊值與我們先前從 PowerShell 得到的相同:

讓我們使用 SHA-2 256 來計算雜湊值。現在,我們得到更準確的結果,顯示這些檔案確實如預期般不同:

雜湊可用於什麼?

若已知檔案的唯一識別碼,我們可以透過多種方式使用這項資訊。某些傳統 AV 解決方案完全依賴雜湊值來判定檔案是否為惡意檔案,而不檢查檔案內容或行為。它們透過維護一個內部資料庫,其中包含屬於已知惡意軟體的雜湊值。在掃描系統時,AV 引擎會為使用者機器上的每個可執行檔計算雜湊值,並檢查其資料庫中是否有相符項目。

這在網路安全的早期看起來或許像是個巧妙的解決方案,但事後來看,不難發現依賴雜湊值的缺陷。

首先,隨著惡意軟體樣本數量激增,維護簽章資料庫已成為一項根本無法擴展的工作。據估計,每天出現的獨特惡意軟體樣本數量超過 500,000 個。這很可能在很大程度上是因為惡意軟體作者已經意識到,他們可以輕易欺騙依賴雜湊值的 AV 引擎,使其無法識別樣本。攻擊者所要做的,就是在檔案末尾新增一個位元組,便會產生不同的雜湊值。

這是一個非常簡單的流程,惡意軟體作者可以將此流程自動化,使相同的 URL 每隔幾秒就會向受害者傳送具有不同雜湊值的相同惡意軟體。

其次,傳統 AV 的缺陷一直在於,偵測需要事先知道威脅,因此,依賴已知雜湊值資料庫的反惡意軟體解決方案在設計上永遠落後於下一次攻擊一步。

當然,對此的答案是採用運用behavioral AI並採取defense-in-depth方法的安全解決方案。

然而,這並不表示雜湊值毫無價值!相反地,能夠唯一識別檔案仍然具有重要效益。在許多情境中,例如程式碼簽署和 SSL,您會在數位簽章與憑證中看到提供的雜湊值,以協助確認檔案、網站或下載內容是真實的。

雜湊值對安全研究人員、SOC 團隊、malware hunters以及逆向工程師也非常有幫助。您會在 SentinelOne 以及其他地方的許多技術報告中看到,雜湊最常見的用途之一就是分享Indicators of Compromise。透過雜湊值,研究人員可以參照惡意軟體樣本,並透過如 VirusTotal、VirusBay、Malpedia 和 MalShare 等惡意軟體儲存庫與他人分享。

雜湊在威脅狩獵中的優勢

威脅狩獵 也因為雜湊值而變得更容易。讓我們看看一個範例,說明 IT 管理員如何在 SentinelOne 管理主控台中使用雜湊值,跨其裝置群搜尋威脅。

當您在某台機器上識別出威脅,並想要查詢整個網路中是否存在該檔案時,雜湊非常有幫助。按一下 SentinelOne 管理主控台中的 Visibility 圖示並開始新的查詢。在此案例中,我們只會使用該檔案的 SHA1 雜湊,並查看其在過去 3 個月內是否存在。

很好,我們可以看到已經出現了幾個實例,但精彩之處還不止於此。雜湊搜尋已將我們帶到 TrueContext ID,我們可以從這裡進一步深入追查,確切了解這個檔案做了什麼:它建立了哪些程序、修改了哪些檔案、聯繫了哪些 URL 等等。簡而言之,我們只需從檔案的雜湊出發,點擊幾下就能建立完整的攻擊故事線。

 
Callout Background Image Gradient

AI-Powered Cybersecurity

Elevate your security posture with real-time detection, machine-speed response, and total visibility of your entire digital environment.

結論

雜湊是電腦安全中的基礎工具,因為只要我們使用可避免碰撞的安全雜湊演算法,它們就能可靠地告訴我們兩個檔案是否相同。即便如此,正如我們上面所見,兩個檔案可以具有相同的行為與功能,而不一定具有相同的雜湊,因此依賴雜湊識別來進行 AV 偵測是一種有缺陷的方法。

儘管如此,雜湊對安全分析師而言仍然很有用,例如可用於分享 IOC 和威脅狩獵;如果您在電腦與網路安全領域工作,幾乎可以肯定每天都會接觸到它們。


喜歡這篇文章嗎?歡迎在 LinkedIn、Twitter、YouTube 或 Facebook 上追蹤我們,查看我們發佈的內容。

閱讀更多關於網路安全的內容

雜湊常見問題

雜湊是一種單向加密技術,可將資料轉換為固定長度的字元字串。您無法反向還原此過程以取回原始資料。它就像數位指紋一樣——相同的輸入總是會產生相同的雜湊,但不同的輸入會建立完全不同的輸出。雜湊可保護密碼、驗證檔案完整性,並確保資料未遭竄改。它對區塊鏈技術和數位簽章至關重要。

一個常見的範例是使用 SHA-256 對單字 “hello” 進行雜湊,產生 “2cf24dba4f21d4288094c30e2ede82c380cac19544bb5c4ab02f5b2db38500d3”。如果您只變更一個字元為 “Hello”,就會得到完全不同的雜湊。密碼系統會使用雜湊——當您建立密碼時,系統會將其雜湊後儲存。當您登入時,您輸入的密碼會被雜湊並與儲存的雜湊進行比對。檔案完整性檢查也會使用雜湊來偵測變更。

雜湊可透過偵測任何未經授權的變更來確保資料完整性。即使資料庫遭到入侵,它也能藉由讓密碼無法直接讀取來保護密碼。您可以驗證下載的檔案是否未損毀或未感染惡意軟體。雜湊可支援數位簽章與安全通訊協定。它是區塊鏈技術與加密貨幣安全的基礎。沒有雜湊,您就無法信任資料在傳輸或儲存期間保持不變。

主要的雜湊家族包括 MD (Message Digest)、SHA (Secure Hash Algorithm) 和 RIPEMD。MD5 會產生 128 位元雜湊,但現在已被視為不安全。SHA-256 是目前使用最廣泛的演算法,會產生 256 位元雜湊。SHA-3 是最新標準,旨在取代較舊的演算法。每種類型在安全強度、雜湊長度和運算需求方面各不相同。現代系統在安全關鍵應用中偏好使用 SHA-256 或 SHA-3。

雜湊是單向且不可逆的,而加密是雙向且可逆的。無論輸入大小為何,雜湊總是會產生固定長度的輸出。加密輸出的長度則會依輸入資料而變化。雜湊用於驗證資料完整性,而加密用於保護資料機密性。您可以使用正確的金鑰解密加密資料,但無法對雜湊資料進行反向還原。兩者服務於不同的安全目的,而且經常搭配使用。

雜湊透過使原始資訊無法被逆向還原來維持資料安全。即使攻擊者竊取了經過雜湊的密碼,他們也無法輕易判定實際密碼。對原始資料的任何變更都會產生完全不同的雜湊值,使竄改可被偵測。雜湊不需要加密金鑰,因此沒有可被攻陷的金鑰。它可在不暴露實際內容的情況下提供資料完整性驗證。這使其非常適合用於密碼儲存與檔案驗證。

雜湊可提供快速的資料擷取與驗證。它可在不暴露原始內容的情況下確保資料完整性。使用適當的雜湊技術可大幅提升密碼安全性。檔案完整性檢查變得簡單且可靠。雜湊可實現區塊鏈技術與安全交易。它在計算上具有效率,且不需要金鑰管理。數位簽章與驗證系統仰賴雜湊來確保安全。資料去重複與高效率的儲存管理也能受益於雜湊。

深入了解 網路安全

Decorative background gradient

體驗最先進的資安平台

了解全球最智慧、最自主的資安平台如何在今日及未來保護您的組織。
Dark dashboard UI with purple-highlighted nav, summary cards showing 149, 7, 78, 56, 1.2 h, and a status table with linked purple text