如果 siloviki 來找你的主人怎麼辦

如果 siloviki 來找你的主人怎麼辦kdpv - 路透社

如果您租用伺服器,那麼您就無法完全控制它。 這意味著經過專門培訓的人員可以隨時找到託管服務商並要求您提供任何資料。 如果依法提出正式要求,託管方將歸還它們。

您確實不希望您的網站伺服器日誌或使用者資料外洩給其他任何人。 建立理想的防禦是不可能的。 要保護自己免受擁有虛擬機器管理程式並為您提供虛擬機器的託管服務商的侵害幾乎是不可能的。 但或許可以稍微降低風險。 加密租賃汽車並不像乍看起來那麼無用。 同時,我們來看看從實體伺服器提取資料的威脅。

威脅模型

通常,託管方將盡力透過法律盡可能保護客戶的利益。 如果官方機構的信函僅要求存取日誌,則託管服務商將不會提供所有具有資料庫的虛擬機器的轉儲。 至少不應該。 如果他們要求提供所有數據,託管商將複製包含所有文件的虛擬磁碟,而您不會知道這一點。

無論哪種情況,您的主要目標都是使攻擊變得過於困難和昂貴。 通常存在三種主要威脅選項。

官方

最常見的是,一封紙本信件會發送到主辦單位的官方辦公室,要求其根據相關規定提供必要的數據。 如果一切正確,託管商將向官方機構提供必要的存取日誌和其他資料。 通常他們只是要求您發送必要的數據。

有時,如果絕對必要,執法機構的代表也會親自來到資料中心。 例如,當您擁有自己的專用伺服器時,只能以實體方式取得其中的資料。

在所有國家,進入私人財產、進行搜索和其他活動都需要證據證明數據可能包含用於調查犯罪的重要資訊。 此外,還需要根據所有規定執行搜索令。 當地立法的特殊性可能存在細微差別。 您需要了解的主要事情是,如果官方路徑正確,資料中心代表不會讓任何人通過入口。

此外,在大多數國家,您不能簡單地拿出跑步設備。 例如,在俄羅斯,直到 2018 年底,根據俄羅斯聯邦刑事訴訟法第 183 條第 3.1 部分,保證在扣押期間,扣押電子儲存媒體是在有參與的情況下進行的。專家的。 應扣押的電子儲存媒體的合法所有者或其所含資訊的所有者的要求,參與扣押的專家在證人在場的情況下,將資訊從扣押的電子儲存媒體複製到其他電子儲存媒體。

然後,不幸的是,這一點被從文章中刪除了。

秘密和非官方

這已經是來自國家安全局、聯邦調查局、軍情五處和其他三個字母組織的受過專門訓練的同志的活動領域。 大多數情況下,國家立法為此類結構提供極其廣泛的權力。 此外,幾乎總是有立法禁止直接或間接披露與此類執法機構合作的事實。 俄羅斯也有類似的 法律規範.

如果您的資料受到此類威脅,它們幾乎肯定會被刪除。 此外,除了簡單的查封之外,還可以使用所有非官方的後門、零日漏洞、從虛擬機器 RAM 中提取資料以及其他樂趣。 在這種情況下,託管方將有義務盡可能協助執法專家。

無良員工

並不是所有的人都一樣優秀。 一位資料中心管理員可能會決定出售您的資料來賺取額外的錢。 進一步的發展取決於他的權力和管道。 最煩人的是,有權存取虛擬化控制台的管理員可以完全控制您的電腦。 您可以隨時拍攝 RAM 中所有內容的快照,然後慢慢研究。

VDS

所以你有一個託管商給你的虛擬機器。 如何實施加密來保護自己? 事實上,幾乎什麼都沒有。 此外,即使是其他人的專用伺服器也可能最終成為插入必要設備的虛擬機器。

如果遠端系統的任務不僅僅是儲存數據,而是執行一些計算,那麼使用不受信任的機器的唯一選擇就是實現 同態加密。 在這種情況下,系統將進行計算,但無法理解它到底在做什麼。 不幸的是,實現這種加密的開銷成本是如此之高,以至於它們的實際使用目前僅限於非常狹窄的任務。

另外,當虛擬機器運行並執行某些操作時,所有加密磁碟區都處於可存取狀態,否則作業系統將無法使用它們。 這意味著,透過存取虛擬化控制台,您始終可以拍攝正在運行的電腦的快照並從 RAM 中提取所有密鑰。

許多供應商嘗試對 RAM 進行硬體加密,這樣即使主機託管商也無法存取這些資料。 例如,英特爾軟體保護擴展技術,它組織虛擬位址空間中的區域,防止其他進程(包括作業系統核心)從該區域外部讀取和寫入。 不幸的是,您將無法完全信任這些技術,因為您將僅限於虛擬機器。 另外,現成的例子已經存在 攻擊成功 對於這項技術。 不過,加密虛擬機器並不像看起來那麼毫無意義。

我們對 VDS 上的資料進行加密

讓我立即表示保留,我們下面所做的一切並不構成全面的保護。 虛擬機器管理程式將允許您製作必要的副本,而無需停止服務且不會引起您的注意。

  • 如果託管商根據請求傳輸虛擬機器的「冷」映像,那麼您就相對安全。 這是最常見的情況。
  • 如果託管商為您提供了正在運行的機器的完整快照,那麼一切都非常糟糕。 所有數據都將以清晰的形式安裝在系統中。 此外,還可以翻閱 RAM 來搜尋私鑰和類似資料。

預設情況下,如果您從普通映像部署作業系統,則託管者沒有 root 存取權。 您始終可以使用救援映像載入介質,並透過 chroot 虛擬機器環境來變更 root 密碼。 但這需要重新啟動,這一點會被注意到。 另外,所有安裝的加密分割區都將關閉。

但是,如果虛擬機器的部署不是來自普通映像,而是來自預先準備好的映像,則託管商通常可以新增特權帳戶以在用戶端出現緊急情況時提供協助。 例如,更改忘記的 root 密碼。

即使在完整快照的情況下,也並非一切都那麼悲傷。 如果您從另一台電腦的遠端檔案系統安裝加密文件,攻擊者將不會收到這些文件。 是的,理論上,您可以選擇 RAM 轉儲並從那裡提取加密金鑰。 但實際上,這並不是很簡單,而且該過程不太可能超出簡單的文件傳輸範圍。

訂購汽車

如果 siloviki 來找你的主人怎麼辦

出於測試目的,我們使用一台簡單的機器 訂購伺服器部分。 我們不需要很多資源,因此我們將選擇為實際花費的兆赫和流量付費。 玩玩就夠了。

整個分區的經典 dm-crypt 並沒有起飛。 預設情況下,磁碟是一塊,整個分割區的根目錄。 縮小根掛載分割區上的 ext4 分割區實際上是一個有保證的磚塊,而不是檔案系統。 我嘗試過)手鼓沒有幫助。

建立加密容器

因此,我們不會加密整個分割區,而是使用檔案加密容器,也就是經過稽核且可靠的 VeraCrypt。 對於我們的目的來說,這已經足夠了。 首先,我們從官網提取並安裝 CLI 版本的軟體包。 您可以同時檢查簽名。

wget https://launchpad.net/veracrypt/trunk/1.24-update4/+download/veracrypt-console-1.24-Update4-Ubuntu-18.04-amd64.deb
dpkg -i veracrypt-console-1.24-Update4-Ubuntu-18.04-amd64.deb

現在我們將在家中的某個地方建立容器本身,以便我們可以在重新啟動時手動安裝它。 在互動選項中,設定容器大小、密碼和加密演算法。 您可以選擇愛國密碼 Grasshopper 和 Stribog 雜湊函數。

veracrypt -t -c ~/my_super_secret

現在讓我們安裝 nginx,掛載容器並填入秘密訊息。

mkdir /var/www/html/images
veracrypt ~/my_super_secret /var/www/html/images/
wget https://upload.wikimedia.org/wikipedia/ru/2/24/Lenna.png

讓我們稍微修正一下 /var/www/html/index.nginx-debian.html 以獲得所需的頁面,您可以檢查它。

連接並檢查

如果 siloviki 來找你的主人怎麼辦
容器已安裝,資料可存取並傳送。

如果 siloviki 來找你的主人怎麼辦
這是重新啟動後的機器。 資料安全地儲存在 ~/my_super_secret 中。

如果您確實需要它並且想要它的核心,那麼您可以加密整個作業系統,以便在重新啟動時需要透過 ssh 連線並輸入密碼。 對於簡單地提取「冷數據」的場景來說,這也足夠了。 這裡 dropbear使用說明 和遠端磁碟加密。 儘管對於 VDS 來說這是困難且多餘的。

裸機

在資料中心安裝自己的伺服器並不是那麼容易。 其他人的專用設備可能會成為所有設備都轉移到其中的虛擬機器。 但是,當您有機會將可信任的實體伺服器放置在資料中心時,保護方面的一些有趣的事情就開始了。 在這裡,您已經可以完全使用傳統的 dm-crypt、VeraCrypt 或您選擇的任何其他加密。

您需要了解,如果實施完全加密,伺服器在重新啟動後將無法自行恢復。 需要建立與本機 IP-KVM、IPMI 或其他類似介面的連線。 之後我們手動輸入主密鑰。 該方案在連續性和容錯性方面看起來一般,但如果數據如此有價值,則沒有特殊的替代方案。

如果 siloviki 來找你的主人怎麼辦
NCipher nShield F3 硬體安全模組

較軟的選項假設資料已加密,且金鑰直接位於伺服器本身的特殊 HSM(硬體安全模組)中。 一般來說,這些都是非常實用的設備,不僅提供硬體加密,而且還具有檢測物理駭客攻擊的機制。 如果有人開始使用角磨機檢查您的伺服器,具有獨立電源的 HSM 將重置其儲存在記憶體中的金鑰。 攻擊者將獲得加密的肉末。 在這種情況下,可以自動重新啟動。

與啟動鋁熱炸彈或電磁避雷器相比,拔掉鑰匙是更快、更人性化的選擇。 對於這樣的設備,你會在資料中心的機架上被鄰居毆打很長一段時間。 此外,在使用的情況下 TCG蛋白石2 對媒體本身進行加密,您幾乎不會遇到任何開銷。 所有這一切對於作業系統來說都是透明的。 確實,在這種情況下,您必須信任有條件的三星,並希望它具有誠實的 AES256,而不是平庸的 XOR。

同時,我們不能忘記所有不必要的連接埠必須被物理性地停用或簡單地填充化合物。 否則,就會給攻擊者實施的機會 DMA 攻擊。 如果您有 PCI Express 或 Thunderbolt,包括支援 USB,那麼您很容易受到攻擊。 攻擊者將能夠透過這些連接埠進行攻擊,並使用金鑰直接存取記憶體。

在非常複雜的版本中,攻擊者將能夠進行冷啟動攻擊。 同時,它只是將大量液態氮倒入您的伺服器中,粗略地取出凍結的記憶棒,並從中取出所有金鑰的轉儲。 通常,定期的冷卻噴霧和 -50 度左右的溫度就足以進行攻擊。 還有一個更準確的選項。 如果你沒有停用從外部設備加載,那麼攻擊者的演算法會更簡單:

  1. 無需打開外殼即可凍結記憶棒
  2. 連接可啟動 USB 隨身碟
  3. 使用特殊實用程式從 RAM 中刪除因凍結而在重新啟動後倖存的資料。

分而治之

好吧,我們只有虛擬機,但我想以某種方式降低資料外洩的風險。
原則上,您可以嘗試修改架構並將資料儲存和處理分佈在不同的管轄區。 例如,具有加密金鑰的前端來自捷克共和國的主機,而具有加密資料的後端位於俄羅斯的某個地方。 在標準扣押嘗試的情況下,執法機構極不可能在不同的司法管轄區同時執行此操作。 另外,這在某種程度上保證了我們不會出現拍攝快照的情況。

好吧,或者您可以考慮一個完全純粹的選項 - 端對端加密。 當然,這超出了規範的範圍,並不意味著在遠端機器一側執行計算。 然而,當涉及到儲存和同步資料時,這是一個完全可以接受的選項。 例如,這在 Nextcloud 中可以非常方便地實現。 同時,同步、版本控制和其他伺服器端功能也不會消失。

在總

不存在完全安全的系統。 目標很簡單,就是讓攻擊的價值超過潛在的利益。

透過將加密和與不同託管商的單獨儲存體結合,可以在一定程度上降低存取虛擬網站上的資料的風險。

一個或多或少可靠的選擇是使用您自己的硬體伺服器。

但無論如何,託管商仍然必須值得信任。 整個產業都以此為基礎。

如果 siloviki 來找你的主人怎麼辦

如果 siloviki 來找你的主人怎麼辦

來源: www.habr.com

添加評論