跳到正文
CVE-high(cvefeed.io)·· 4 小時前精選品質評分78

pgAdmin 4 CVE-2026-116238:登入限制可被繞過,Flask‑Security 影響認證機制

CVE-2026-116238 - pgAdmin 4: The failed login limit can be bypassed, and Flask-Security's own views skip pgAdmin's login and password checks

重點導讀

pgAdmin 4 在伺服器模式下,內部帳號的登入失敗限制(預設 MAX_LOGIN_ATTEMPTS 為 3)可被 Flask‑Security 的登入與驗證檢視繞過,導致未授權者可無限制猜測任何內部帳號(包括管理員)密碼。

推薦理由

此漏洞允許未授權者無限制嘗試內部帳號密碼,更新至 9.19 可修復,建議即時升級與審核身份驗證設定,並監控帳號鎖定事件。

正文 · 中文翻譯

譯文尚未完整,完整內容請切換至原文。

In server mode pgAdmin 4 locks an internal account after MAX_LOGIN_ATTEMPTS failed logins (3 by default). The limit could be bypassed, giving an unauthenticated attacker an unlimited number of password guesses against any internal account, including the administrator's, in the default configuration: - Flask-Security registers its own views next to pgAdmin's. A login submitted to its /login view was checked and logged in without pgAdmin's failed login count or lock. Its /verify view checked a signed-in user's password without limit, its /change view changed a password without pgAdmin's change password permission or re-encrypting the user's saved server passwords, and its /reset views sent and applied password resets for accounts that are not internal or are locked. - The internal account was looked up by its exact username, while the login form matches the email ignoring case, so a login with the username typed in another case was neither counted nor checked for the lock. - With LDAP or webserver authentication also configured, a wrong internal password was never counted, and with Kerberos or webserver authentication configured a guess could be answered without being counted. In addition, where accounts from different authentication sources share an email address, a password reset could be sent for, or applied to, an account from another source, and the About box showed the server configuration to a user whose email was that of an administrator's account. The fix refuses submissions to Flask-Security's own views, counts every failed internal login however the username is typed and whatever other sources are configured, no longer lets a login that posts a password fall back to an authentication source that does not check it, and locks only internal authentication. Password resets and the About box act only on the user's own internal account. Desktop mode is not affected. This issue affects pgAdmin 4: before 9.19.

影響

受影響產品

以下產品受到 CVE-2026-116238 漏洞的影響。 即使 cvefeed.io 知道精確的產品版本 仍然 受到 影響,資訊並未在下表中呈現。

ID 供應商 產品 操作
1 Pgadmin pgadmin_4

Common Vulnerability Scoring System(CVSS)是一套標準化框架 用於評估軟體與系統漏洞的嚴重程度。 我們會收集並顯示各來源的 CVSS 分數,針對每個 CVE。

分數 版本 嚴重性 向量 可利用性分數 影響分數 來源
CVSS 3.1 高 f86ef6dc-4d3a-42ad-8f28-e6d5547a5007
CVSS 3.1 高 MITRE-CVE
CVSS 4.0 致命 f86ef6dc-4d3a-42ad-8f28-e6d5547a5007
CVSS 4.0 致命 f86ef6dc-4d3a-42ad-8f28-e6d5547a5007

將 pgAdmin 4 更新至 9.19 或更高版本,以修正身份驗證繞過與鎖定機制漏洞。

  • 將 pgAdmin 4 更新至 9.19 或更高版本。
  • 如有可用,請套用供應商修補程式。
  • 檢視身份驗證設定。
  • 監控內部帳號鎖定。

此處提供精選外部連結,包含深入資訊、實用解決方案與相關工具,與 CVE-2026-116238 相關。

URL Resource
https://github.com/pgadmin-org/pgadmin4/commit/35c9235d17a7d5a99778f01b2f1b9e5e3a3b7fde
https://github.com/pgadmin-org/pgadmin4/commit/58c531d831179dc9b0a5bf873ccb80c71c8d387a
https://github.com/pgadmin-org/pgadmin4/commit/c6ef41a951012cd877a1992b5dac681eec36e48d
https://github.com/pgadmin-org/pgadmin4/issues/10676

CVE 會辨識具體的漏洞例項,而 CWE 則將可能導致漏洞的共通缺陷或弱點分類。CVE-2026-116238 與以下 CWE 相關:

Common Attack Pattern Enumeration and Classification (CAPEC) 儲存攻擊模式,描述攻擊者利用 CVE-2026-116238 弱點的共通特徵與方法。

我們掃描 GitHub 倉庫以偵測新的概念驗證漏洞。以下列出已於 GitHub 發布的公開漏洞與概念驗證,依最近更新排序。

由於潛在效能問題,結果僅限前 15 個倉庫。

以下列出文章中提及 CVE-2026-116238 漏洞的新聞。

下表列出 CVE-2026-116238 漏洞隨時間所做的變更。

漏洞歷史細節有助於瞭解漏洞演變,並辨識近期變更對漏洞嚴重性、可利用性或其他特徵的影響。

  • 新 CVE 已接收 由 f86ef6dc-4d3a-42ad-8f28-e6d5547a5007

    十月. 30, 2026

    Action Type Old Value New Value
    Added Description 在伺服器模式下,pgAdmin 4 在 MAX_LOGIN_ATTEMPTS 次失敗登入(預設為 3 次)後會鎖定內部帳號。此限制可被繞過,允許未經授權的攻擊者對任何內部帳號(包括管理員帳號)進行無限制的密碼猜測,於預設設定下: - Flask‑Security 在 pgAdmin 的旁邊註冊了自己的檢視。提交至其 /login 檢視的登入會被檢查並登入,卻不會被計入 pgAdmin 的失敗登入次數或鎖定。其 /verify 檢視對已登入使用者的密碼進行檢查時沒有上限,/change 檢視則會改密碼,卻不需要 pgAdmin 的變更密碼許可權,也不會重新加密使用者已儲存的伺服器密碼;/reset 檢視則會為非內部或已鎖定的帳號送出並套用密碼重設。 - 內部帳號是以完全相同的使用者名稱查詢,而登入表單則以不區分大小寫的方式匹配電子郵件,因此以不同大小寫輸入使用者名稱的登入既不會被計算,也不會被檢查鎖定。 - 若同時配置了 LDAP 或網頁伺服器驗證,錯誤的內部密碼從未被計入;若配置了 Kerberos 或網頁伺服器驗證,猜測可被回答而不被計算。 此外,當不同驗證來源的帳號共用同一電子郵件地址時,密碼重設可能會被送出或套用至另一來源的帳號,而「關於」對話方塊則會將伺服器設定顯示給其電子郵件屬於管理員帳號的使用者。 修正方案拒絕提交至 Flask‑Security 自己的檢視,無論使用者名稱如何輸入,亦無論配置了哪些其他來源,都會統計每一次失敗的內部登入;不再允許輸入密碼後落回至未檢查的驗證來源,並且僅鎖定內部驗證。密碼重設與「關於」對話方塊僅對使用者自己的內部帳號生效。桌面模式不受影響。 此問題影響 pgAdmin 4:9.19 之前的版本。
    已新增 CVSS V4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
    已新增 CVSS V3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
    已新增 CWE CWE-307
    已新增 CWE CWE-863
    已新增 受影響 New affected value received. <a href="https://github.com/CVEProject/cvelistV5/blob/main/cves/2026/116xxx/CVE-2026-116238.json">CVE-2026-116238</a>
    已新增 參考 https://github.com/pgadmin-org/pgadmin4/commit/35c9235d17a7d5a99778f01b2f1b9e5e3a3b7fde
    已新增 參考 https://github.com/pgadmin-org/pgadmin4/commit/58c531d831179dc9b0a5bf873ccb80c71c8d387a
    已新增 參考 https://github.com/pgadmin-org/pgadmin4/commit/c6ef41a951012cd877a1992b5dac681eec36e48d
    已新增 參考 https://github.com/pgadmin-org/pgadmin4/issues/10676

EPSS 是每日估計在接下來 30 天內觀測到利用活動的機率。 以下圖表顯示該漏洞的 EPSS 分數歷史。

來源: CVE-high (cvefeed.io)
開啟原文