什麼是憑證填充?| 憑證填充與暴力攻擊的比較

在憑證填充攻擊中,從某個服務竊取而來的登入憑證收集內容會用來嘗試入侵各種其他服務的帳戶。

Share facebook icon linkedin icon twitter icon email icon

憑證填充

學習目標

閱讀本文後,您將能夠:

  • 定義憑證填充
  • 區分憑證填充與暴力攻擊
  • 理解緩解憑證填充的策略

什麼是憑證填充?

憑證填充是從某項服務的資料外洩中獲取憑證的一種網路攻擊,可用來嘗試登入另一個無關的服務。

憑證填充範例

例如,攻擊者可能會入侵大型百貨公司,藉此取得使用者名稱和密碼清單,並使用相同的登入憑證來嘗試並登入國家銀行的網站。攻擊者希望在這些百貨公司客戶當中,有部分客戶也有該銀行的帳戶,而且他們對這兩種服務重複使用相同的使用者名稱和密碼。

自 2019 年以來,由於黑市交易並銷售大量外洩的憑證清單,憑證填充不斷出現。這些清單的增長,再加上憑證填充工具 (使用傀儡程式繞開傳統登入保護) 的發展,使憑證填充成為備受歡迎的攻擊向量。

什麼因素讓憑證填充發揮效果?

就統計資料而言,憑證填充攻擊的成功率很低。許多預估的成功率約為 0.1%,代表在每一千個攻擊者嘗試破解的帳戶中,他們大約可以成功一次。攻擊者所交易的憑證收集數量極少,讓憑證填充就算成功率很低,也十分值錢。

這些收集內容包含數百萬個 (在某些情況下會有數十億個) 登入憑證。若攻擊者有一百萬組憑證,這會產生大約 1,000 個成功破解的帳戶。如果即使破解帳戶的所占比例很小,也能產生有利潤的資料 (通常採用可用於網路釣魚攻擊的信用卡號或機密資料),則攻擊就非常值錢。此外,攻擊者可以對大量不同的服務使用同一組憑證,不斷重複這樣的過程。

傀儡程式技術的進步也讓憑證填充成為可成功實施的攻擊。內建於網頁應用程式的登入表單的安全性功能通常包括考慮時間延遲和禁止嘗試登入失敗多次的使用者 IP 位址。現代憑證填充軟體使用傀儡程式同時嘗試數次登入,讓這些登入看起來源自各種裝置類型和不同的 IP 位址,藉此規避這些保護。惡意傀儡程式的目標是讓人無法區分攻擊者的登入嘗試與一般登入流量,而這非常有效。

通常,受害公司對於遭受攻擊所具有的唯一指標是整體登入嘗試數量增加。即使到了這個時候,受害公司也很難在不影響合法使用者能夠登入服務的情況下,阻止這些嘗試。

憑證填充攻擊有效的主要原因是人們重複使用密碼。研究顯示,大部分的使用者 (預估高達 85%) 在多項服務重複使用相同的登入憑證。只要這種習慣持續下去,憑證填充就會繼續發揮效果。

憑證填充與暴力攻擊之間有什麼差異?

OWASP 將憑證填充分類為暴力攻擊的子集。但是,嚴格而言,憑證填充與傳統的暴力攻擊非常不同。暴力攻擊嘗試隨機使用有時以常見密碼建議組合而成的字元,在沒有脈絡或線索的情況下猜測密碼。憑證填充則使用已暴露的資料,大幅降低正確答案的可能數量。

對抗暴力攻擊的好方法是由數個字元組成並且包括大寫、數字和特殊字元的高強度密碼。但密碼強度無法抵禦憑證填充。這與密碼強度無關 – 只要不同的帳戶之間都共用這個密碼,憑證填充就能入侵。

如何防止憑證填充

使用者可以如何防止憑證填充

從使用者的觀點,抵禦憑證填充相當簡單。使用者應永遠在每個不同的服務使用唯一密碼 (做到這件事的簡單方式是使用密碼管理員)。若使用者永遠使用唯一密碼,憑證填充將無法入侵其帳戶。若要增加安全性措施,我們鼓勵使用者永遠啟用雙重驗證 (若可用)。

公司可以如何防止憑證填充

對於執行驗證服務的公司而言,阻止憑證填充是更複雜的挑戰。憑證填充會因為其他公司資料外洩而發生。憑證填充攻擊的受害公司不必然是因為本身的安全性出了問題。

公司可以建議其使用者提供唯一密碼,但無法作為規定有效強制執行。有些應用程式會在接受密碼之前,針對已知遭受入侵密碼的資料庫執行已提交的密碼,作為對抗憑證填充的措施,但這並非萬無一失 – 使用者可能會重複使用尚未遭受入侵之服務的密碼。

另外再提供登入安全性功能,可以協助緩解憑證填充。啟用雙重驗證等功能,並要求使用者在登入兩者時填入 CAPTCHA,有助於阻止惡意傀儡程式。雖然這兩者都是對使用者不方便的功能,但許多人都會同意,如果能夠將安全性威脅降到最低,些許不便是值得的。

對抗憑證填充的最強保護是傀儡程式管理服務。傀儡程式管理使用了結合 IP 信譽資料庫的限速,以在不影響合法登入的情況下,阻止惡意傀儡程式嘗試登入。Cloudflare 傀儡程式管理從每日透過 Cloudflare 網路路由傳送的 4250 億個請求中蒐集資料,可以透過高度精確性識別並阻止憑證填充傀儡程式。