背景

Celer Network官方8月18日表示,北京時間3:45至6:00期間,部分cBridge用戶被引導至惡意智能合約。最初,cBridge前端介面被懷疑受到DNS攻擊。

與以往的Nomad、Wormhole、Ronin、Harmony等跨鏈橋駭客事件完全不同,這次攻擊並非由智慧合約和跨鏈協定的bug或相關伺服器的入侵造成,而是跨鏈橋被駭客入侵。鎖定在cBridge的鏈上資產也得到了安全保障。在本次攻擊中,駭客直接針對Celer系統之外的互聯網架構中的底層基礎設施,透過欺騙互聯網底層路由協議,讓跨鏈用戶在一段時間內訪問「釣魚」的前端用戶界面(BGP)。Celer網路之所以能夠限制損失,是因爲他們的及時迴應。這是因爲Celer網路團隊擁有24小時的監控系統。他們的客戶服務團隊能夠發現問題並及時向社區發出警報。 Celer Network團隊授權慢霧安全團隊迴應此緊急情況並進行深入調查。

分析過程

Celer Network 團隊最初懷疑是 DNS 攻擊,經過溝通,我們瞭解到了有關域名的更多信息:cbridge-prod2.celer.network。我們發現在攻擊過程中瀏覽器並沒有報告證書錯誤。因此,我們的調查首先從解決 DNS 攻擊的可能性開始。(特別感謝@greysign1 幫助我們快速檢查 DNS 攻擊的可能性)

我們首先查看了相關證書信息:

該證書似乎已被意外更改,其中 Let’s Encrypt 頒發的原始證書被 GoGetSSL 頒發的僞造證書替換。

GoGetSSL 可以頒發免費的 90 天證書:

  • 證書1分析:https://crt.sh/?id=7356185959

    證書上在以下時間出現 CRL 檢查錯誤:

  • 證書2分析:https://crt.sh/?id=7356185959

    此證書在以下時間還會出現 CRL 檢查錯誤:

    通過檢查證書1的IP地址、證書等信息,我們發現該證書綁定的IP地址是44.235.216.69。

    證書2的IP地址無法查詢到證書2對應的IP地址,可能是由於攻擊持續時間較短,互聯網搜索引擎還未採集到相關信息。

    因此,我們重點分析了 cbridge-prod2.celer.network 域的 IP 解析數據:

    IP 地址 44.235.216.69 與 cbridge-prod2.celer.network 關聯了很長一段時間。

    問題是:這個 IP 地址 44.235.216.69 長期與 cbridge-prod2.celer.network 關聯,這一事實證明它屬於 Celer Network 官方服務器。Celer Network 團隊也證實了這一點。那麼爲什麼這個 IP 會關聯僞造證書呢?

    於是我們開始對44.235.216.69這個AS進行調查,發現這個IP對應的AS存在異常。

    AS16509 公告:

    通過查看 bogons,我們可以確定,這通常是攻擊者僞造 IP 地址來發起攻擊的情況:https://networkdirection.net/articles/routingandswitching/bgp-bogonsandmartians/ https://forum.networklessons.com/t/what-are-bogons/6333

    由於 44.235.216.69 處的 AS 出現異常,我們首先懷疑問題出在 BGP 上,因此我們聯繫了 Celer Network,獲得了攻擊者的 IP 地址:54.84.236.100。我們發現該 IP 地址所在的 AS14618 也出現了異常。(AS14618 也宣佈了 bogons)

    巧的是,AS14618的上游是AS16509(AS16509也是44.235.216.69所在的AS),這提醒我們可能存在BGP攻擊。

    我們的調查顯示,IP:54.84.236.100 被標記爲惡意。

    我們從社區收集了有關 IP:54.84.236.100 的相關信息,並發現該 IP 地址與 2014 年發生的另一起 BGP 攻擊事件有關。但是,由於此事件發生的時間已經很久了,因此可能不再具有相關性。

    隨後我們根據此次 BGP 攻擊留下的記錄繼續調查:

    跟蹤攻擊 IP:54.84.236.100 的 BGP 記錄顯示該路由不再可用。

    我們繼續跟蹤 celer 的 IP:44.235.216.69 的 BGP 路由器跟蹤,並能夠找到正確的路由。

    然後我們檢查了 BGP 節點變更日誌:北京時間:2022 年 8 月 18 日凌晨 2:48 — 2022 年 8 月 18 日上午 7:48 UTC+8

    2022年8月18日,BST凌晨2:48—早上7:48這段時間內發現大量節點增刪變更記錄。

    我們繼續監控 AS 變更日誌,發現 AS14618 以前的路由信息​​爲 44.235.216.0/24,但後來該路徑被改爲 Withdrawn,這證明:

    1. AS14618 中的 44.235.216.0/24 曾經是最佳路徑

    2. 現在 AS14618 中的 44.235.216.0/24 不再是最佳路徑;它已被撤銷。

    (當發生BGP攻擊時,攻擊者會發布一條最優路徑,將流量引向自己的服務器)

    爲了得到更加準確的數據,我們使用下面的bgplay檢查了攻擊前後與44.235.216.69相關的路徑的變化。

    2022年8月17日,我們可以看到在19:19:23 +UTC 至 23:19:23 +UTC 時間段內,BGP 路由路徑信息出現了明顯的波動。

    這一變化體現在將來自 44.235.216.0/24 的流量引導至 AS14618,而攻擊發生後來自 44.235.216.0/24 的流量則通過 AS16509 出去。

    因此我們認爲該事件很可能是一次 BGP 攻擊事件,其中 AS14618 似乎是攻擊者控制的節點(AS14618 的路由器可能存在安全問題,可能被攻擊者利用),攻擊持續了大約 4 個小時。

    攻擊者之所以能夠將證書1(僞造證書)綁定到Celer Network的IP:44.235.216.69,是因爲攻擊者擁有一個與該IP相同的惡意服務器。由於gogetssl支持http認證,因此攻擊者只需將gogetssl提供的文本輸入到惡意服務器即可。因此,攻擊者可以通過BGP攻擊將流量導向與該IP相同的惡意服務器,從而綁定證書1。結果,瀏覽器被警告證書錯誤。

    我們確定 AS14618 已受到攻擊者控制,原因如下。

    • 攻擊者首先將44.235.216.69的流量導向AS14618,攻擊結束後再將44.235.216.69路由回AS16509。

    • 攻擊IP:54.84.236.100也在AS14618內部。

    • 攻擊發生後,AS14618 被撤消至 44.235.216.69。

    回答這個問題:這個 IP 地址 44.235.216.69 長期與 cbridge-prod2.celer.network 關聯,這一事實證明它屬於 Celer Network 官方服務器。Celer Network 團隊也證實了這一點。那麼爲什麼這個 IP 會關聯僞造證書呢?

    如果使用HTTPS協議進行通信,則無法在沒有獲得證書私鑰的情況下對數據(包括客戶端/服務器通信的數據)進行加解密。因此,爲了確保證書正確並能夠進行中間人攻擊,攻擊者需要將在授權機構申請的證書重新綁定到IP地址爲44.235.216.69的惡意服務器上。這使攻擊者能夠解密客戶端的數據,並將惡意代碼插入響應數據包的數據中。

    分析結論

    我們與 Celer Network 團隊合作調查了這次攻擊。儘管這是一次針對 Celer Network 的複雜 BGP 攻擊嘗試,攻擊者從攻擊時機、證書僞造、AS 控制等操作都做了充分準備。

    最後,我們認識到許多項目已經意識到與 BGP 攻擊相關的風險並採取了適當的預防措施。然而,許多人仍然沒有意識到,特別是在 AS 更改引起的網絡路徑修改方面。如果沒有充分的準備和響應措施,則存在被相同或其他攻擊者進一步攻擊的相當大的風險。因此,我們敦促組織、ISP 和服務器託管提供商認識到此類風險並協調防禦策略,以防止類似事件再次發生。並且,與往常一樣,如果您需要幫助,請聯繫 SlowMist 安全團隊。

    依戀

    cbridge-prod2.celer.network DNS 圖表: