Skip to main content

pig-mesh Pig CVE-2026-91995

| EUVDEUVD-2026-78435 CRITICAL
Unverified Password Change (CWE-620)
2026-09-15 VulnCheck GHSA-7g92-2j5x-mj6h
9.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify exposed pig /register/password endpoint
  2. Delivery
    Submit target username with bogus current password
  3. Exploit
    Verification result discarded, new password accepted
  4. Execution
    Admin credential overwritten
  5. Impact
    Log in as admin, full administrative control

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Password change verification
Exploitation Conditions

Requires network reachability to the pig application's /register/password endpoint (the SysRegisterController register-password route), which is exposed for password self-service; no valid current password and no authentication are needed because the verification result is discarded. The only real limiting factors are that the target instance must run pig before 4.1.0 and the endpoint must be reachable by the attacker; no user interaction, non-default configuration, or prior credentials are required. An attacker who knows or guesses a username (e.g. the default 'admin') can overwrite that account's password.

Impact

This is a genuine high-priority issue, and the multiple signals largely agree. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H) describes a remote, low-complexity, unauthenticated flaw, and the description plus the commit diff corroborate that: checkPassword() returns its real result in the R.data boolean, but resetUserPassword() tested checkedPassword.isOk() (which is true even for a wrong password) instead of the data value, so the verification result was discarded entirely - a textbook CWE-620 Unverified Password Change. A public exploit exists (geo-chen/oss writeup) and the root cause is confirmed by the fix commit, so exploitability is not speculative. There is no CISA KEV listing and no EPSS score in the input, so there is no evidence of active mass exploitation yet - the status is 'publicly available exploit code exists,' which is distinct from in-the-wild use. The one metric worth scrutinizing is impact scope: the vendor scored VA:N (no availability impact), but because the primitive lets an attacker overwrite the admin account password, it yields full admin takeover, which realistically implies confidentiality, integrity AND availability compromise (the legitimate admin is locked out). Overall this is a real, easily weaponized authentication bypass in an internet-facing registration endpoint, not a high-CVSS-but-low-risk paper cut.

Exploit ScenarioDerived

A remote unauthenticated attacker sends a POST to the /register/password endpoint supplying the target username (e.g. 'admin'), an arbitrary/incorrect 'current password,' and a new password. Because the password-verification result is discarded, the server accepts the request and overwrites the admin credential, letting the attacker log in with the password they just set and take full administrative control. A public proof-of-concept/writeup for this exact flow is available.

Act Now Prioritize within 24-48h. Why: CRITICAL severity + public POC available.
1 PoC candidate (unverified) Patch available 0.6% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 16, 2026

Unauthenticated credential takeover in pig-mesh Pig before 4.1.0 allows any remote attacker who can reach the /register/password endpoint to overwrite the password of an arbitrary account, including the built-in 'admin' account, and thereby obtain full administrative control of the platform. The flaw is an authentication bypass: the endpoint's password-reset logic calls checkPassword() but discards the boolean result, so the submitted 'current password' is never actually validated. Publicly available exploit code exists (a proof-of-concept write-up and the upstream issue are linked), and the vendor has released version 4.1.0 as the fix; there is no indication of confirmed exploitation in CISA KEV at the time of analysis, but the combination of unauthenticated remote exploitation, high impact (CVSS 4.0 base 9.3; independently assessed CVSS 3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) and public exploit code makes rapid patching warranted.

RemediationAI

Upgrade to pig-mesh Pig 4.1.0 or later, which is the vendor-released fixed version; the corrective change is upstream commit ce958668f399110b97b3f1fcc5f517ff9bcfd535, which restores enforcement of the checkPassword() result in SysUserServiceImpl.resetUserPassword(). If immediate upgrade is not possible, restrict network access to the /register/password route exposed by SysRegisterController (for example by placing pig-upms behind an API gateway or reverse proxy that blocks that path from untrusted networks, or by firewalling the management/registration ports); this is effective because the exploit depends entirely on reaching that endpoint, but it will break legitimate self-service password resets and any client integrations that call it. A second compensating control is to disable the register/password-reset route in configuration until the upgrade is applied, accepting the loss of self-service password functionality, and to rotate the credentials of privileged accounts (especially 'admin') and review audit logs for unexpected password-change events, since post-exploitation credential overwrites may already have occurred. All administrators should treat previously exposed instances as potentially compromised and verify account credentials after patching. Configuration hardening such as renaming the default 'admin' account reduces targeting convenience but does not fix the underlying unverified-password-change flaw (CWE-620), so it should not be relied on as a substitute for the 4.1.0 upgrade. Reference advisories: https://www.vulncheck.com/advisories/pig-before-4.1.0-unverified-password-change-via-register-password, https://github.com/pig-mesh/pig/issues/1249, and the PoC at https://github.com/geo-chen/oss/blob/main/pig.md.

Affected VersionsENISA

Pig 0 <4.1.0

Affected Packages

euvd pig fix: 4.1.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

pig-mesh Pig (github.com/pig-mesh/pig) is a Java/Spring Cloud microservice-based RBAC administration platform; the affected code lives in the pig-upms module (pig-upms-biz). The vulnerable flow is SysRegisterController (/register/password) invoking SysUserServiceImpl.resetUserPassword(), which first calls checkPassword(username, password). In version 4.0.0, resetUserPassword only tested the transport-level success flag of the returned R wrapper (checkedPassword.isOk()) rather than the boolean payload returned by checkPassword, so the verification outcome was effectively ignored and any value could be supplied as the 'current' password before the new credential was written. The upstream fix (commit ce958668f399110b97b3f1fcc5f517ff9bcfd535) changes the method signature to R<Boolean> and the condition to Boolean.TRUE.equals(checkedPassword.getData()), ensuring the actual password-match result is enforced. This maps to CWE-620 (Unverified Password Change), an authorization/logic class in which the application permits a password change without proving knowledge of the existing credential; because the endpoint is reachable without authentication (CVSS vector PR:N) and acts on a user-supplied username, it is effectively an account-takeover primitive rather than a simple logic error. CPE data (cpe:2.3:a:pig-mesh:pig:*:*:*:*:*:*:*:*) confirms all releases of the pig product prior to 4.1.0 are in scope; EUVD records the affected range as 'Pig 0 < 4.1.0'.

Know when Pig gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 9.3 CRITICAL
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
vuln.today AI 9.8 CRITICAL

Remote, low-complexity, unauthenticated overwrite of any account password yields full admin takeover, so C:H/I:H and A:H (admin lockout); vendor scored A:N by scoping only to the credential-change primitive.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

pig before 4.1.0 contains an authentication bypass vulnerability in the /register/password endpoint where password verification results are discarded, allowing any value as the current password. Remote attackers can submit a username with an incorrect current password to overwrite any account credential including the admin account and gain full administrative control.

Technical POC Analysis

{"analysis":"## Root cause\nCWE-620 Unverified Password Change.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Latest POC

1 PoC candidate from github (unverified)

Sign in to open the public PoC links collected for this CVE.

Executive ViewAI

Why It Matters

Pig (pig-mesh) deployments running versions prior to 4.1.0 are exposed to an unauthenticated remote attacker who can seize full administrative control of the platform by overwriting any account password, including the built-in 'admin' account. Because no credentials or user interaction are required and publicly available exploit code exists, any internet- or network-reachable Pig instance should be treated as a probable target, putting platform configuration, integrated downstream systems, and any data or secrets managed through it at risk. Leadership should treat this as a board-visible availability and data-integrity exposure for every team relying on Pig-managed services until the vendor fix is deployed.

Business Impact: Severe
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.6%
Top 52% exploitable
Prevalence
Medium
popular open-source Spring Cloud RBAC scaffold, moderate real-world production footprint
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC Yes
EPSS 0.6%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity + public POC available
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
Poc
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
Very High

Priority Score

67
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +46
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy