2.1 學術模型與真實世界攻擊之間的差距
學術密碼強度模型通常採用完全自動化的機率式方法,例如馬可夫鏈或機率式上下文無關文法(PCFG)。相比之下,真實世界的離線密碼破解(如 Hashcat 和 John the Ripper 等工具所實踐的)主要由字典攻擊主導。這些攻擊使用一個基礎單詞列表,並透過一組變形規則(例如 `l33t` 替換、字尾/字首添加)進行擴展,以產生候選密碼。其有效性關鍵取決於字典與規則配對的品質和調校,這個過程需要深厚的領域知識和經驗。
儘管已知存在安全弱點,密碼仍然是主導的身份驗證機制。使用者傾向於遵循可預測的模式建立密碼,使其容易受到猜測攻擊。此類系統的安全性無法透過金鑰長度等簡單參數來定義;它需要對對抗行為進行準確建模。儘管數十年的研究已經產生了強大的機率式密碼模型(例如馬可夫模型、PCFG),但在系統性建模真實世界攻擊者實用、由專業知識驅動的策略方面,仍存在顯著差距,這些攻擊者依賴於經過高度調校、帶有變形規則的字典攻擊。
這項工作解決了當安全分析使用現成的、靜態的字典攻擊配置(這些配置難以近似專家能力)時所引入的測量偏差。我們提出新一代的字典攻擊,利用深度學習來自動化並模仿熟練對手的先進、動態猜測策略,從而產生更穩健且更真實的密碼強度估計。
學術密碼強度模型通常採用完全自動化的機率式方法,例如馬可夫鏈或機率式上下文無關文法(PCFG)。相比之下,真實世界的離線密碼破解(如 Hashcat 和 John the Ripper 等工具所實踐的)主要由字典攻擊主導。這些攻擊使用一個基礎單詞列表,並透過一組變形規則(例如 `l33t` 替換、字尾/字首添加)進行擴展,以產生候選密碼。其有效性關鍵取決於字典與規則配對的品質和調校,這個過程需要深厚的領域知識和經驗。
缺乏專家級知識的研究人員和從業者通常使用預設的靜態配置。這導致對密碼強度的嚴重高估,正如先前研究所展示的 [41]。由此產生的偏差扭曲了安全分析,使系統看起來比面對堅定、熟練的對手時更安全。核心問題在於無法複製專家基於目標特定資訊進行動態配置適應的過程。
第一個元件使用深度神經網路(DNN)來建模對手在建立有效攻擊配置方面的熟練度。該網路在密碼資料集與高效能攻擊配置(字典 + 規則)的配對上進行訓練,這些配置源自或模仿專家設定。目標是學習一個函數 $f_{\theta}(\mathcal{D}_{target}) \rightarrow (Dict^*, Rules^*)$,該函數在給定目標密碼資料集(或其特徵)時,輸出一個近乎最佳的攻擊配置,從而繞過手動調校的需求。
我們超越了靜態規則應用,引入了動態猜測策略。在攻擊過程中,系統不僅僅盲目地將所有規則應用於所有單詞。相反,它模仿專家的適應能力,根據先前嘗試的猜測回饋以及在目標資料集中觀察到的模式,來優先處理或生成規則。這創造了一個閉環、自適應的攻擊系統。
整合框架分兩個階段運作:(1) 配置生成:DNN 分析目標(或代表性樣本)以產生初始、量身訂製的字典和規則集。(2) 動態執行:字典攻擊執行,但其規則應用由一個策略控制,該策略可以即時調整猜測順序和規則選擇,可能使用輔助模型根據部分成功來預測最有效的轉換。
動態優先順序的簡化表示可以建模為在每批猜測後更新規則 $R$ 上的機率分佈:$P(r_i | \mathcal{H}_t) \propto \frac{\text{successes}(r_i)}{\text{attempts}(r_i)} + \lambda \cdot \text{similarity}(r_i, \mathcal{H}_t^{success})$,其中 $\mathcal{H}_t$ 是到時間 $t$ 為止的猜測和成功歷史。
實驗在幾個大型真實世界密碼資料集(例如來自 RockYou 等先前外洩事件)上進行。所提出的方法與最先進的機率式模型(例如 FLA)以及使用流行的靜態規則集(例如 `best64.rule`、`d3ad0ne.rule`)的標準字典攻擊進行了比較。DNN 在一個獨立的資料集-配置配對語料庫上進行訓練。
圖表說明(猜測曲線): 一個折線圖,比較破解的密碼數量(y 軸)與嘗試的猜測次數(x 軸,對數刻度)。提出的「動態 DeepDict」攻擊曲線比「靜態 Best64」、「靜態 d3ad0ne」和「PCFG 模型」的曲線上升速度明顯更快,並達到更高的平台期。這直觀地展示了更優越的猜測效率和更高的覆蓋率,非常接近假設的「專家調校」攻擊曲線。
在 10^10 次猜測時,所提出的方法比最佳的靜態規則集基準多破解了約 15-25% 的密碼,有效地彌合了預設配置與專家調校攻擊之間超過一半的差距。
主要的成功指標是強度高估偏差的減少。當密碼強度以破解它所需的猜測次數(猜測熵)來衡量時,所提出的方法產生的估計值始終更接近於從專家調校攻擊得出的估計值。在不同、次優的初始配置之間,強度估計值的變異也大幅減少,表明穩健性有所提高。
框架應用範例(無程式碼): 考慮一位安全分析師正在評估新公司內部系統的密碼政策。使用傳統的靜態字典攻擊(使用 `rockyou.txt` 和 `best64.rule`),他們發現 70% 的員工樣本密碼能抵抗 10^9 次猜測。這暗示了強大的安全性。然而,應用所提出的動態框架改變了分析結果。
Pasquini 等人擊中了網路安全研究中一個普遍存在的幻象的核心:即認為自動化、理論優先的模型能夠準確捕捉對抗性技藝混亂、由專業知識驅動的現實。他們的工作揭露了密碼安全中一個關鍵的模擬與現實差距。多年來,該領域一直滿足於優雅的機率式模型(PCFG、馬可夫鏈),這些模型雖然在學術上嚴謹,卻是實驗室的產物。真正的攻擊者不執行馬可夫鏈;他們執行 Hashcat,使用經過多年經驗磨練、精心策劃的單詞列表和規則——這是一種眾所周知難以形式化的隱性知識。本文的核心洞察是,為了減少測量偏差,我們必須停止試圖超越攻擊者的推理,並開始嘗試模仿他們適應性、實用主義的過程,使用擅長從資料中近似複雜、非線性函數的工具——深度學習。
本文的邏輯具有令人信服的直接性:(1) 診斷偏差:識別出靜態、現成的字典配置是專家攻擊的不良代理,導致強度高估。(2) 解構專業知識:將專家的技能框架為兩個方面:配置攻擊(選擇字典/規則)的能力和動態適應它的能力。(3) 用 AI 自動化:使用 DNN 從資料中學習配置映射(解決第一個技能),並實施一個回饋迴圈以在攻擊中途改變猜測策略(解決第二個技能)。這個流程反映了其他 AI 領域的成功範式,例如 AlphaGo,它不僅計算棋盤狀態,還學會模仿並超越人類大師直覺、基於模式的玩法。
優勢: 該方法論是一個重大的概念飛躍。它將密碼安全評估從靜態分析轉向動態模擬。深度學習的整合是恰當的,因為神經網路已被證明是對具有潛在結構的任務(很像規則創建的「黑魔法」)的函數近似器。所展示的偏差減少並非微不足道,並且對風險評估具有直接的實際意義。
缺陷與注意事項: 該方法的有效性本質上與其訓練資料的品質和廣度相關。一個在過去外洩事件(例如 2009 年的 RockYou)上訓練的模型,能否準確地為未來、文化轉變後的資料集配置攻擊?存在時間偏差取代配置偏差的風險。此外,DNN 的「黑箱」性質可能會降低可解釋性——為什麼它選擇了這些規則?——這對於可操作的安全洞察至關重要。這項工作也可能(或許是必要的)避開了軍備競賽動態:隨著此類工具的普及,密碼創建習慣(以及專家攻擊者的戰術)將會演變,需要持續的模型重新訓練。
對於安全從業者:立即棄用在嚴肅分析中依賴預設規則集的做法。將任何不是源自動態、目標感知方法的密碼強度估計視為最佳情況,而非現實情況。開始將自適應破解模擬納入漏洞評估。
對於研究人員:本文設定了一個新的基準。未來的密碼模型論文必須與自適應、學習增強的攻擊進行比較,而不僅僅是靜態字典或舊的機率式模型。該領域應探索生成對抗網路(GAN),正如 Goodfellow 等人的基礎工作中所引用的,以直接生成新穎、高機率的密碼猜測,可能完全繞過字典/規則範式。
對於政策制定者與標準機構(例如 NIST):密碼政策指南(如 NIST SP 800-63B)應發展為建議或強制使用先進的自適應破解模擬來評估提議的密碼系統和組成政策,超越簡單的字元類別檢查清單。
本質上,這項工作不僅提供了一個更好的破解工具;它要求我們在概念化和測量密碼安全的方式上進行根本性的轉變——從密碼本身的屬性,轉變為密碼與其獵手的適應性智慧之間互動所產生的新興屬性。