事後分析:對加密密鑰服務器 SKS Keyserver 網絡的最新攻擊已知的情況

駭客使用了 OpenPGP 協定的一項已為人所知十多年的功能。

我們會告訴您重點是什麼以及為什麼他們無法關閉它。

事後分析:對加密密鑰服務器 SKS Keyserver 網絡的最新攻擊已知的情況
/不飛濺/ 茱春麗

網路問題

六月中旬,未知 進行了攻擊 到加密金鑰伺服器網絡 SKS金鑰伺服器,建立在OpenPGP協定之上。 這是 IETF 標準(RFC 4880),用於加密電子郵件和其他訊息。 SKS 網路創建於三十年前,用於分發公共憑證。 它包括諸如 GnuPG的 用於加密資料和建立電子數位簽章。

駭客洩露了兩名 GnuPG 項目維護者 Robert Hansen 和 Daniel Gillmor 的證書。 從伺服器載入損壞的憑證會導致 GnuPG 失敗 — 系統就會凍結。 有理由相信攻擊者不會就此止步,被盜證書的數量只會增加。 目前,問題的嚴重程度仍然未知。

攻擊的本質

駭客利用了 OpenPGP 協定中的漏洞。 幾十年來,她一直為社區所熟知。 甚至在 GitHub 上 可以被找尋到 相應的漏洞利用。 但到目前為止,還沒有人承擔起填補這個「漏洞」的責任(我們稍後會更詳細地討論原因)。

我們關於 Habré 的部落格中的一些選擇:

根據 OpenPGP 規範,任何人都可以在憑證中新增數位簽章來驗證其所有者。 此外,簽名的最大數量沒有任何限制。 這裡出現了一個問題 - SKS 網路允許您在一個憑證上放置最多 150 萬個簽名,但 GnuPG 不支援這樣的數字。 因此,在載入憑證時,GnuPG(以及其他 OpenPGP 實作)會凍結。

用戶之一 進行了一項實驗 — 導入憑證花了他大約 10 分鐘。 該憑證有超過 54 個簽名,其大小為 17 MB:

$ gpg --homedir=$PWD --recv C4BC2DDB38CCE96485EBE9C2F20691179038E5C6
gpg: key F20691179038E5C6: 4 duplicate signatures removed
gpg: key F20691179038E5C6: 54614 signatures not checked due to missing keys
gpg: key F20691179038E5C6: 4 signatures reordered
gpg: key F20691179038E5C6: public key "Daniel Kahn Gillmor <[email protected]>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1
$ ls -lh pubring.gpg
-rw-r--r--  1 filippo  staff    17M  2 Jul 16:30 pubring.gpg

更糟的是,OpenPGP 金鑰伺服器不會刪除憑證資訊。 這樣做是為了您可以追蹤帶有憑證的所有操作鏈並防止它們被替換。 因此,消除受損元素是不可能的。

本質上,SKS網路是一個大型“檔案伺服器”,任何人都可以向其中寫入資料。 為了說明問題,去年 GitHub 常駐 創建了一個檔案系統,它將文件儲存在加密金鑰伺服器網路上。

為什麼漏洞沒有關閉?

沒有理由關閉該漏洞。 此前,它不被用於駭客攻擊。 儘管 IT 界 問了很久 SKS和OpenPGP開發者應該注意這個問題。

公平地說,值得注意的是,在六月,他們仍然 推出 實驗密鑰伺服器 鑰匙.openpgp.org。 它提供針對此類攻擊的保護。 但是,其資料庫是從頭開始填充的,並且伺服器本身不是 SKS 的一部分。 因此,需要一段時間才能使用。

事後分析:對加密密鑰服務器 SKS Keyserver 網絡的最新攻擊已知的情況
/不飛濺/ 魯本·巴古斯

至於原系統中的bug,複雜的同步機制導致無法修復。 密鑰伺服器網路最初是作為 Yaron Minsky 博士論文的概念證明而編寫的。 此外,這項工作還選擇了相當具體的語言 OCaml。 經過 根據 維護者 Robert Hansen 表示,該程式碼很難理解,因此僅對其進行了較小的更正。 要修改SKS架構,就必須從頭開始重寫。

無論如何,GnuPG 並不相信網路會被修復。 在 GitHub 上的一篇文章中,開發人員甚至寫道,他們不建議使用 SKS 金鑰伺服器。 實際上,這是他們開始過渡到新服務keys.openpgp.org 的主要原因之一。 我們只能靜觀事態的進一步發展。

我們公司部落格中的一些資料:

來源: www.habr.com

添加評論