Mandriva Linux 安全性公告:postgresql (MDVSA-2015:110)

medium Nessus Plugin ID 82363

概要

遠端 Mandriva Linux 主機缺少一或多個安全性更新。

說明

更新版 postgresql 套件可修正多個安全性弱點:

授予不具備 ADMIN OPTION 的角色,應能防止被授予者從授予角色中新增或移除成員,但是這個限制可藉由先執行 SET ROLE 來輕鬆繞過。安全性影響多半為某角色成員可叫用其他成員的存取權,與其授予者的期望相反。未核准的角色成員新增是較無須顧慮的問題,因為不合作的角色成員可藉由建立檢視或 SECURITY DEFINER 函式,向其他成員提供自己的多數權限 (CVE-2014-0060)。

PL 驗證器函式的主要角色,會在 CREATE FUNCTION 期間遭系統隱含呼叫,但是這些函式通常為使用者可明確呼叫的 SQL 函式。系統不會檢查實際上以某種其他語言寫入之函式的驗證器呼叫,且可遭到以權限提升為目標的惡意利用。該修正涉及新增各驗證器函式中的權限檢查函式呼叫。
非核心程序語言也將需要對其自己的驗證器函式 (若有) 進行此變更 (CVE-2014-0061)。

如果因為並行活動而導致名稱查閱產生不同結論,我們可能會在與其他部分不同的表格上執行部分 DDL。至少在 CREATE INDEX 執行時,攻擊者可能會利用此問題,造成系統針對索引建立以外的表格執行權限檢查,進而允許權限提升攻擊 (CVE-2014-0062)。

MAXDATELEN 常數太小,不適用類型間隔的最長可能值,進而允許 interval_out() 中發生緩衝區滿溢。
雖然日期時間輸入函式更加留意避免發生緩衝區滿溢,但是限制太短,足以導致其拒絕部分有效的輸入,例如含有極長時區名稱的輸入。
ecpg 程式庫中含有這些弱點以及其自身的某些弱點 (CVE-2014-0063)。

多個函式 (大多為類型輸入函式) 計算配置大小時沒有檢查溢位。如果的確發生溢位,系統就會配置過小的緩衝區並超出範圍寫入 (CVE-2014-0064)。

使用 strlcpy() 和相關函式,清楚保證固定大小的緩衝區不會滿溢。跟前述項目不同,這些案例是否真的代表實際問題仍待商榷,因為多數案例似乎存有之前對輸入字串大小的限制。儘管如此,隱藏此類型的所有 Coverity 警告似乎是明智之舉 (CVE-2014-0065)。

crypt() 可傳回 NULL 的狀況相對較少,但是如果真的發生此情形,contrib/chkpass 會當機。可能成為問題的實際案例為,當 libc 設定為拒絕執行未核准的雜湊演算法 (例如’FIPS 模式’) 時 (CVE-2014-0066)。

由於暫時伺服器是由 make check 使用 trust 驗證加以啟動,相同機器上的其他使用者可以資料庫超級使用者身分連線至該伺服器,然後可能惡意利用啟動測試的作業系統使用者之權限。未來版本可能會納入測試程序的變更來避免此風險,但必須先開放給大眾多加討論。因此,目前只警告同一機器上有未受信任的使用者時,使用 make check 的使用者 (CVE-2014-0067)。

對表格具有有限許可的使用者可能能夠在對整個伺服器錯誤訊息沒有 SELECT 權限的情況下,存取欄中的資訊 (CVE-2014-8161)。

to_char() 函式可能在超出緩衝區結尾處讀取/寫入。這可能在處理範本格式化時,造成伺服器當機 (CVE-2015-0241)。

pgcrypto 模組容易受堆疊緩衝區滿溢影響,進而可能導致伺服器當機 (CVE-2015-0243)。

Emil Lenngren 報告,攻擊者可在用戶端與伺服器之間的同步遺失時插入 SQL 命令 (CVE-2015-0244)。

此更新可提供修正這些問題及其他多個問題的 PostgreSQL 9.3.6 與 9.2.10 版本。

解決方案

更新受影響的套件。

另請參閱

http://advisories.mageia.org/MGASA-2014-0205.html

http://advisories.mageia.org/MGASA-2015-0069.html

Plugin 詳細資訊

嚴重性: Medium

ID: 82363

檔案名稱: mandriva_MDVSA-2015-110.nasl

版本: 1.7

類型: local

已發布: 2015/3/30

已更新: 2021/1/14

支援的感應器: Nessus

風險資訊

VPR

風險因素: Medium

分數: 5.9

CVSS v2

風險因素: Medium

基本分數: 6.5

媒介: CVSS2#AV:N/AC:L/Au:S/C:P/I:P/A:P

弱點資訊

CPE: p-cpe:/a:mandriva:linux:lib64ecpg9.2_6, p-cpe:/a:mandriva:linux:lib64ecpg9.3_6, p-cpe:/a:mandriva:linux:lib64pq9.2_5.5, p-cpe:/a:mandriva:linux:lib64pq9.3_5, p-cpe:/a:mandriva:linux:postgresql9.2, p-cpe:/a:mandriva:linux:postgresql9.2-contrib, p-cpe:/a:mandriva:linux:postgresql9.2-devel, p-cpe:/a:mandriva:linux:postgresql9.2-docs, p-cpe:/a:mandriva:linux:postgresql9.2-pl, p-cpe:/a:mandriva:linux:postgresql9.2-plperl, p-cpe:/a:mandriva:linux:postgresql9.2-plpgsql, p-cpe:/a:mandriva:linux:postgresql9.2-plpython, p-cpe:/a:mandriva:linux:postgresql9.2-pltcl, p-cpe:/a:mandriva:linux:postgresql9.2-server, p-cpe:/a:mandriva:linux:postgresql9.3, p-cpe:/a:mandriva:linux:postgresql9.3-contrib, p-cpe:/a:mandriva:linux:postgresql9.3-devel, p-cpe:/a:mandriva:linux:postgresql9.3-docs, p-cpe:/a:mandriva:linux:postgresql9.3-pl, p-cpe:/a:mandriva:linux:postgresql9.3-plperl, p-cpe:/a:mandriva:linux:postgresql9.3-plpgsql, p-cpe:/a:mandriva:linux:postgresql9.3-plpython, p-cpe:/a:mandriva:linux:postgresql9.3-pltcl, p-cpe:/a:mandriva:linux:postgresql9.3-server, cpe:/o:mandriva:business_server:2

必要的 KB 項目: Host/local_checks_enabled, Host/cpu, Host/Mandrake/release, Host/Mandrake/rpm-list

修補程式發佈日期: 2015/3/29

參考資訊

CVE: CVE-2014-0060, CVE-2014-0061, CVE-2014-0062, CVE-2014-0063, CVE-2014-0064, CVE-2014-0065, CVE-2014-0066, CVE-2014-0067, CVE-2014-8161, CVE-2015-0241, CVE-2015-0242, CVE-2015-0243, CVE-2015-0244

MDVSA: 2015:110