libXpm 中的漏洞導致代碼執行

由 X.Org 專案開發並用於處理 XPM 格式檔案的 libXpm 3.5.15 庫的修正版本已發布。 新版本修復了三個漏洞,其中兩個(CVE-2022-46285、CVE-2022-44617)在處理專門設計的 XPM 檔案時會導致循環。 第三個漏洞 (CVE-2022-4883) 允許在執行使用 libXpm 的應用程式時執行任意命令。 當執行與 libXpm 關聯的特權程序時,例如帶有 suid root 標誌的程序,該漏洞使得使用者的權限提升成為可能。

此漏洞是由 libXpm 處理壓縮 XPM 檔案的方式引起的 - 在處理 XPM.Z 或 XPM.gz 檔案時,該程式庫使用 execlp() 呼叫啟動外部解壓縮實用程式(uncompress 或gunzip),其路徑是根據在PATH 環境變數上。 此攻擊歸結為將其自己的解壓縮或gunzip可執行檔案放置在使用者可存取的目錄中(存在於PATH清單中),如果啟動使用libXpm的應用程序,則將執行該檔案。

透過使用實用程式的絕對路徑將 execlp 呼叫替換為 execl 來修復漏洞。 此外,還添加了彙編選項“--disable-open-zfile”,它允許您停用壓縮檔案的處理以及呼叫外部實用程式進行解包。

來源: opennet.ru

添加評論