特斯拉基礎設施中的一個漏洞使得控制任何汽車成為可能。

揭曉 相關資訊 問題 在特斯拉網路中組織保護,這使得完全破壞與消費汽車互動的基礎設施成為可能。 特別是,所發現的問題使得能夠存取負責維護與汽車的通訊通道並透過行動應用程式發送命令的伺服器。

結果,攻擊者成功地透過特斯拉基礎設施獲得了對任何汽車資訊系統的root存取權限,或遠端向汽車傳輸控制命令。 除此之外,還展示了發送啟動引擎和解鎖車門等命令的能力。 為了獲得訪問權限,所需要的只是知道受害者汽車的車輛識別號碼。

該漏洞由安全研究員 Jason Hughes 於 2017 年初發現
(傑森·休斯(Jason Hughes)),他立即向特斯拉通報了這些問題,並在事件發生僅三年半後公開了他發現的資訊。 值得注意的是,特斯拉於2017年在收到漏洞通知後數小時內修復了該問題,之後從根本上加強了對其基礎設施的保護。 由於發現了漏洞,研究人員獲得了 50 萬美元的獎勵。

對特斯拉基礎設施問題的分析始於對網站提供的下載工具的反編譯 toolbox.teslamotors.com。 在 service.teslamotors.com 網站上擁有帳戶的特斯拉汽車用戶有機會為開發人員下載所有模組。 模組以最簡單的方式加密,加密金鑰由同一台伺服器給出。

將產生的模組反編譯為 Python 程式碼後,研究人員發現程式碼包含位於公司內部網路上的各種 Tesla 服務的嵌入式憑證,這些服務可透過 VPN 存取。 特別是,在程式碼中,我們能夠找到位於內部網路的「dev.teslamotors.com」子網域中的一台主機的使用者憑證。

直到 2019 年,為了將汽車連接到 Tesla 服務,使用了基於 OpenVPN 軟體包的 VPN(後來被基於 Websocket 的實作取代),並使用為每輛車產生的金鑰。 VPN 用於確保行動應用程式的運作、取得電池充電站清單以及其他類似服務。 研究人員嘗試掃描透過 VPN 連接汽車後可存取的網絡,發現客戶可存取的子網與特斯拉內部網路沒有充分隔離。 除此之外,可以存取 dev.teslamotors.com 子網域中的主機,並找到了該主機的憑證。

受感染的伺服器原來是叢集管理節點,負責交付應用程式給其他伺服器。 登入指定主機後,我們能夠取得特斯拉內部服務的部分原始碼,包括mothership.vn和firmware.vn,它們負責向客戶汽車傳輸命令並交付韌體。 在伺服器上也發現了用於存取 PostgreSQL 和 MySQL DBMS 的密碼和登入名稱。 一路走來,事實證明,無需模組中的憑證即可存取大多數元件;事實證明,從客戶端可存取的子網路向 Web API 發送 HTTP 請求就足夠了。

除此之外,在伺服器上發現了一個模組,其中有一個檔案 good.dev-test.carkeys.tar,其中包含開發過程中使用的 VPN 金鑰。 事實證明,指定的金鑰有效,並允許我們連接到 vpn.dev.teslamotors.com 公司的內部 VPN。
在伺服器上也發現了母艦服務代碼,透過研究該代碼可以確定許多管理服務的連接點。 我們發現,如果使用開發人員找到的 VPN 金鑰進行連接,大多數管理服務都可以在任何汽車上使用。 透過操縱服務,可以提取任何汽車每天更新的存取金鑰以及任何用戶端的憑證副本。

透過指定的訊息,可以確定透過 VPN 建立連接的任何汽車的 IP 位址。 由於 vpn.dev.teslamotors.com 子網路沒有被防火牆正確分隔,透過簡單的路由操作,就可以使用客戶端之前獲得的憑證,透過具有 root 權限的 SSH 到達客戶端的 IP 並連接到他的汽車。

此外,所獲得的 VPN 連接到內部網路的參數使得可以透過 Web API mothership.vn.teslamotors.com 向任何汽車發送請求,這些請求無需額外身份驗證即可被接受。 例如,在測試過程中,可以示範如何確定汽車當前位置、解鎖車門並啟動引擎。 車輛的 VIN 號用作選擇攻擊目標的識別碼。

來源: opennet.ru

添加評論