注意!SQLite被曝漏洞,Chrome 火狐等數千應用或受影響

Editor發表於2018-12-17

近日,騰訊 Blade 安全團隊發現SQLite 中存在一個影響數千應用的漏洞,受害應用包括所有基於 Chromium 的瀏覽器。該漏洞允許攻擊者在受害者的計算機上執行惡意程式碼,並洩漏程式記憶體或導致程式崩潰。


注意!SQLite被曝漏洞,Chrome 火狐等數千應用或受影響


SQLite,第一個Alpha版本誕生於2000年5月,是一款輕型,遵守ACID的關係型資料庫管理系統,包含在一個相對小的C庫中。佔用資源非常低,在嵌入式裝置中,可能只需要幾百K的記憶體就夠了。


它能夠支援Windows/Linux/Unix等主流作業系統,同時能夠跟很多程式語言相結合,比如 Tcl、C#、PHP、Java等,還有ODBC介面。與Mysql、PostgreSQL這兩款開源的世界著名資料庫管理系統相比,它的處理速度更快。

目前,此SQLite漏洞尚未收到CVE標識號,暫將其命名為“Magellan”(麥哲倫)。


注意!SQLite被曝漏洞,Chrome 火狐等數千應用或受影響


由於 SQLite 嵌入在數千個應用程式中,因此該漏洞會影響各種軟體,包括物聯網裝置、桌面軟體、Web 瀏覽器、Android 與 iOS應用。不光網路瀏覽器會遭受攻擊,其他產品和應用也會受到影響。例如,Google Home就面臨安全威脅。


如果底層瀏覽器支援 SQLite 和 Web SQL API,那麼將漏洞利用程式碼轉換為常規 SQL 語法也可以通過訪問網頁等操作遠端利用此漏洞。Chromium 瀏覽器引擎支援此 API,這意味著像 Chrome、Vivaldi、Opera和 Brave 等瀏覽器都會受到影響,而 Firefox 和 Edge 由於不支援此 API,因此不受影響。


注意!SQLite被曝漏洞,Chrome 火狐等數千應用或受影響


但另一方面,雖然 Firefox 不支援 Web SQL API,不會受到遠端利用攻擊,但是其自帶了一個本地可訪問的SQLite 資料庫,這意味著本地攻擊者可能利用此漏洞來執行程式碼。


Check Point研究員艾亞爾·伊特金(EyalItkin)也指出,該漏洞還需要攻擊者能夠發出任意的SQL指令,從而破壞資料庫並觸發漏洞,因而會大幅減少受影響的漏洞數量。


ZDNet 表示,由於開發者很少更新程式碼庫及其應用的元件部分,因此很可能這個漏洞在接下來幾年內還會持續產生影響。


安全研究人員表示,他們在今年秋季早些時候向 SQLite 團隊報告了此問題,SQLite 3.26.0 中進行了修復。Chrome 71 已經解決了該問題,但是 Opera 的 Chromium 版本還沒有更新,這意味著它很可能還會受到影響。

儘管如此,其他安全研究人員已經開始梳理SQLite補丁以對其進行逆向工程,並瞭解漏洞是如何工作的。


但即使SQLite團隊釋出補丁,很多應用仍會在今後幾年面臨威脅。原因在於:升級所有桌面、移動或網頁應用的底層資料庫引擎是個危險的過程,經常導致資料損壞,所以多數程式設計師都會盡可能向後推遲。


處置建議


建議使用Chromium系產品的團隊,儘快更新至官方穩定版本71.0.3578.80,如果使用產品中涉及SQLite,請更新到3.26.0.


另外,如暫時沒有條件採用官方提供的修補方案,也有一些應急建議方案:


1)關閉SQLite中的fts3功能;


2)禁用WebSQL:編譯時不編譯third-party的sqlite元件。由於WebSQL沒有任何規範,目前僅有Chrome、Safari支援。


最後,驗證方法:重新編譯後的核心應無法在控制檯呼叫openDatabase函式。



參考來源:

  • cnbeta
  • 量子位

更多資訊:



相關文章