機密“雲”。 我們正在尋找開放解決方案的替代方案

我是工程師出身,但我與企業家和生產總監的交流更多。 前段時間,一家實業公司的老闆向我求教。 儘管該企業規模龐大且創建於 90 年代,但管理和會計工作仍以老式方式在本地網路上進行。

這是對其業務的擔憂和國家加強控制的結果。 檢查機構可以對法律法規進行非常廣泛的解釋。 一個例子是稅法修正案, 消除訴訟時效 稅務違法行為,實際銷毀 銀行和審計保密.

因此,企業主開始尋找可靠的資訊儲存和安全的文件傳輸解決方案。 虛擬的「安全」。

我們與一名全職系統管理員一起解決了這個問題:我們需要對現有平台進行深入分析。

  • 該服務不應該是基於雲端的,在這個詞的經典意義上,即無需儲存在第三方組織的設施中。 只有您的伺服器;
  • 需要對傳輸和儲存的資料進行強加密;
  • 單擊按鈕即可從任何設備緊急刪除內容的能力是強制性的;
  • 該解決方案是國外開發的。

我建議刪除第四點,因為… 俄羅斯應用程式有官方證書。 主任直接說有了這樣的證件該怎麼辦。

選擇選項

我選擇了三種解決方案(選擇越多疑惑越多):

  • 開源 - 項目 同步網 ,由熱情的開發人員 Jacob Borg 維護。
  • 彈性網,由美國 Resilio Inc. 監管。 (以前此服務稱為 BitTorrent Sync)。
  • 項目 Pvtbox 電子保險箱pvtbox.net 同步應用程式。 塞浦路斯註冊。

該公司的所有者對技術的複雜性知之甚少,因此我以每個選項的優缺點清單的形式格式化了該報告。

分析結果

Syncthing

優點:

  • 開源;
  • 主要開發人員的活動;
  • 該項目已經存在很長時間了;
  • 自由的。

缺點:

  • iOS shell 沒有客戶端;
  • 慢轉伺服器(它們是免費的,所以速度變慢)。 對於那些,誰
    不知道,Turn是在無法直接連線的時候使用的;
  • 介面設定複雜(需要多年程式設計經驗);
  • 缺乏快速的商業支援。

恢復力

優點: 支援所有設備和 Fast Turn 伺服器。

缺點: 其中非常重要的一點是支援服務完全無視任何請求。 零回應,即使您從不同的地址寫入。

光電盒

優點:

  • 支援所有設備;
  • 快速轉向伺服器;
  • 無需安裝應用程式即可下載檔案;
  • 足夠的支援服務,包括。 用電話。

缺點:

  • 年輕的項目(評論很少,評論很好);
  • 該網站的介面非常“技術化”,而且並不總是清晰;
  • 沒有詳盡的文件;許多問題需要支援。

客戶選擇了什麼?

他的第一個問題是:免費開發東西有什麼意義? Syncthing 立刻被放棄。 爭論並沒有奏效。

幾天后,由於缺乏支持,客戶斷然拒絕了 Resilio Sync,因為… 目前尚不清楚在緊急情況下該去哪裡。 再加上對公司在美國註冊的不信任。

為了進一步分析,Pvtbox 電子保險箱仍然存在。 我們對該平台進行了全面的技術審核,重點在於攔截、解密資料以及未經授權進入資訊儲存的可能性。

審核流程

我們分析了程式開始時、運行期間和平靜狀態下的連接。 根據現代標準的流量最初是加密的。 讓我們嘗試執行 MITM 攻擊並使用以下命令即時替換證書 Linux(Xubuntu Linux 18.04)、Wireshark, 中間代理。 為此,我們將在 Pvtbox 應用程式和 pvtbox.net 伺服器之間引入一個中介(透過 https 連線與 pvtbox.net 伺服器進行資料交換)。

我們啟動該應用程式以確保程式和檔案同步在其中正常運行。 在 Linux 中,如果從終端運行程序,您可以立即觀察日誌記錄。
機密“雲”。 我們正在尋找開放解決方案的替代方案

關閉應用程式並替換檔案中的 pvtbox.net 主機位址 / etc / hosts文件 具有超級使用者權限。 我們用代理伺服器的位址替換該位址。
機密“雲”。 我們正在尋找開放解決方案的替代方案

現在,讓我們準備好代理伺服器,以應對本地網路中位址為 192.168.1.64 的電腦上的 MITM 攻擊。 為此,請安裝 mitmproxy 軟體套件版本 4.0.4。

我們在連接埠 443 上啟動代理伺服器:
$ sudo mitmproxy -p 443

我們在第一台電腦上啟動 Pvtbox 程序,查看 mitmproxy 輸出和應用程式日誌。
機密“雲”。 我們正在尋找開放解決方案的替代方案

中間代理 報告客戶端不信任來自代理伺服器的欺騙憑證。 在應用程式日誌中我們也看到代理伺服器憑證未通過驗證,程式拒絕執行。

安裝代理伺服器證書 中間件 到具有 Pvtbox 應用程式的電腦以使憑證「受信任」。 在您的電腦上安裝 ca 證書包。 然後將 mitmproxy-ca-cert.pem 憑證從代理伺服器的 .mitmproxy 目錄複製到裝有 Pvtbox 應用程式的電腦的 /usr/local/share/ca-certificates 目錄中。

我們執行命令:
$ sudo openssl x509 -in mitmproxy-ca-cert.pem -通知 PEM -out mitmproxy-ca-cert.crt
$sudo update-ca-證書
機密“雲”。 我們正在尋找開放解決方案的替代方案

啟動 Pvtbox 應用程式。 證書再次驗證失敗,程式無法運作。 該應用程式可能正在使用安全機制 證書固定.

對主機進行了類似的攻擊 signalserver.pvtbox.net, 以及節點之間的對等連接本身。 開發者表示,建立點對點連接的應用程式使用開放的webrtc協議,該協議使用端對端協議加密 DTLSv1.2。

為每個連線設定產生金鑰並透過加密通道傳輸 signalserver.pvtbox.net。

理論上,可以攔截 webrtc 提供和應答訊息,替換其中的加密金鑰,並能夠解密透過 webrtc 到達的所有訊息。 但無法對signalserver.pvtbox.net進行中間人攻擊,因此無法攔截並替換透過signalserver.pvtbox.net傳送的訊息。

因此,不可能對點對點連接執行此攻擊。

還發現了包含該程式附帶的證書的文件。 該檔案位於 /opt/pvtbox/certifi/cacert.pem。 該檔案已替換為包含來自我們的 mitmproxy 代理程式的受信任憑證的檔案。 結果沒有改變 - 程式拒絕連接到系統,在日誌中觀察到相同的錯誤,
該證書未通過驗證。

審核結果

我無法攔截或欺騙流量。 檔案名稱及其內容均以加密形式傳輸;採用端對端加密,應用程式實現了多種安全機制,防止竊聽和滲透。

因此,該公司購買了兩台專用伺服器(物理上位於不同的位置)以永久存取資訊。 第一個伺服器用於接收、處理和儲存訊息,第二個伺服器用於備份。

導演的工作終端和 iOS 手機連接到由此產生的個人雲端。 其他員工則由 Pvtbox 的專職系統管理員和技術支援人員連接。

一段時間以來,沒有收到朋友的任何投訴。 我希望我的評論能夠幫助處於類似情況的 Habr 讀者。

來源: www.habr.com

添加評論