CVE-2024-2339 (GCVE-0-2024-2339)
Vulnerability from cvelistv5 – Published: 2024-03-08 20:07 – Updated: 2024-08-02 19:53
VLAI?
Summary
PostgreSQL Anonymizer v1.2 contains a vulnerability that allows a user who owns a table to elevate to superuser. A user can define a masking function for a column and place malicious code in that function. When a privileged user applies the masking rules using the static masking or the anonymous dump method, the malicious code is executed and can grant escalated privileges to the malicious user. PostgreSQL Anonymizer v1.2 does provide a protection against this risk with the restrict_to_trusted_schemas option, but that protection is incomplete. Users that don't own a table, especially masked users cannot exploit this vulnerability. The problem is resolved in v1.3.
Severity ?
CWE
- CWE-20 - Improper Input Validation
Assigner
References
Impacted products
| Vendor | Product | Version | ||
|---|---|---|---|---|
| DALIBO | PostgreSQL Anonymizer |
Affected:
1 , < 1.3.0
(rpm)
|
Credits
The PostgreSQL Anonymizer project thanks Pedro Gallegos for reporting this problem.
{
"containers": {
"adp": [
{
"providerMetadata": {
"dateUpdated": "2024-08-01T19:11:53.328Z",
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE"
},
"references": [
{
"tags": [
"x_transferred"
],
"url": "https://gitlab.com/dalibo/postgresql_anonymizer/-/commit/e517b38e62e50871b04011598e73a7308bdae9d9"
}
],
"title": "CVE Program Container"
},
{
"affected": [
{
"cpes": [
"cpe:2.3:a:dalibo:postgresql_anonymizer:*:*:*:*:*:*:*:*"
],
"defaultStatus": "unknown",
"product": "postgresql_anonymizer",
"vendor": "dalibo",
"versions": [
{
"lessThan": "1.3.0",
"status": "affected",
"version": "1",
"versionType": "rpm"
}
]
}
],
"metrics": [
{
"other": {
"content": {
"id": "CVE-2024-2339",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2024-08-02T19:52:46.930699Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2024-08-02T19:53:36.167Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "PostgreSQL Anonymizer",
"vendor": "DALIBO",
"versions": [
{
"lessThan": "1.3.0",
"status": "affected",
"version": "1",
"versionType": "rpm"
}
]
}
],
"configurations": [
{
"lang": "en",
"value": "A user that own a table also has the CREATE permission"
}
],
"credits": [
{
"lang": "en",
"value": "The PostgreSQL Anonymizer project thanks Pedro Gallegos for reporting this problem."
}
],
"descriptions": [
{
"lang": "en",
"value": "PostgreSQL Anonymizer v1.2 contains a vulnerability that allows a user who owns a table to elevate to superuser. A user can define a masking function for a column and place malicious code in that function. When a privileged user applies the masking rules using the static masking or the anonymous dump method, the malicious code is executed and can grant escalated privileges to the malicious user. PostgreSQL Anonymizer v1.2 does provide a protection against this risk with the restrict_to_trusted_schemas option, but that protection is incomplete. Users that don\u0027t own a table, especially masked users cannot exploit this vulnerability. The problem is resolved in v1.3."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
"version": "3.1"
},
"format": "CVSS"
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-20",
"description": "Improper Input Validation",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2024-03-08T20:07:14.838Z",
"orgId": "f86ef6dc-4d3a-42ad-8f28-e6d5547a5007",
"shortName": "PostgreSQL"
},
"references": [
{
"url": "https://gitlab.com/dalibo/postgresql_anonymizer/-/commit/e517b38e62e50871b04011598e73a7308bdae9d9"
}
],
"title": "Improper Input Validation in PostgreSQL Anonymizer 1.2 allows table owner to gain superuser privileges via masking rule",
"workarounds": [
{
"lang": "en",
"value": "Revoke the CREATE permission to non-superusers"
}
]
}
},
"cveMetadata": {
"assignerOrgId": "f86ef6dc-4d3a-42ad-8f28-e6d5547a5007",
"assignerShortName": "PostgreSQL",
"cveId": "CVE-2024-2339",
"datePublished": "2024-03-08T20:07:14.838Z",
"dateReserved": "2024-03-08T19:53:56.153Z",
"dateUpdated": "2024-08-02T19:53:36.167Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.1",
"vulnerability-lookup:meta": {
"fkie_nvd": {
"descriptions": "[{\"lang\": \"en\", \"value\": \"PostgreSQL Anonymizer v1.2 contains a vulnerability that allows a user who owns a table to elevate to superuser. A user can define a masking function for a column and place malicious code in that function. When a privileged user applies the masking rules using the static masking or the anonymous dump method, the malicious code is executed and can grant escalated privileges to the malicious user. PostgreSQL Anonymizer v1.2 does provide a protection against this risk with the restrict_to_trusted_schemas option, but that protection is incomplete. Users that don\u0027t own a table, especially masked users cannot exploit this vulnerability. The problem is resolved in v1.3.\"}, {\"lang\": \"es\", \"value\": \"PostgreSQL Anonymizer v1.2 contiene una vulnerabilidad que permite a un usuario propietario de una tabla ascender a superusuario. Un usuario puede definir una funci\\u00f3n de enmascaramiento para una columna y colocar c\\u00f3digo malicioso en esa funci\\u00f3n. Cuando un usuario privilegiado aplica las reglas de enmascaramiento mediante el enmascaramiento est\\u00e1tico o el m\\u00e9todo de volcado an\\u00f3nimo, el c\\u00f3digo malicioso se ejecuta y puede otorgar privilegios aumentados al usuario malintencionado. PostgreSQL Anonymizer v1.2 proporciona protecci\\u00f3n contra este riesgo con la opci\\u00f3n restrict_to_trusted_schemas, pero esa protecci\\u00f3n est\\u00e1 incompleta. Los usuarios que no poseen una mesa, especialmente los usuarios enmascarados, no pueden aprovechar esta vulnerabilidad. El problema se resuelve en v1.3.\"}]",
"id": "CVE-2024-2339",
"lastModified": "2024-11-21T09:09:32.830",
"metrics": "{\"cvssMetricV31\": [{\"source\": \"f86ef6dc-4d3a-42ad-8f28-e6d5547a5007\", \"type\": \"Secondary\", \"cvssData\": {\"version\": \"3.1\", \"vectorString\": \"CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H\", \"baseScore\": 8.0, \"baseSeverity\": \"HIGH\", \"attackVector\": \"NETWORK\", \"attackComplexity\": \"HIGH\", \"privilegesRequired\": \"HIGH\", \"userInteraction\": \"NONE\", \"scope\": \"CHANGED\", \"confidentialityImpact\": \"HIGH\", \"integrityImpact\": \"HIGH\", \"availabilityImpact\": \"HIGH\"}, \"exploitabilityScore\": 1.3, \"impactScore\": 6.0}]}",
"published": "2024-03-08T20:15:46.170",
"references": "[{\"url\": \"https://gitlab.com/dalibo/postgresql_anonymizer/-/commit/e517b38e62e50871b04011598e73a7308bdae9d9\", \"source\": \"f86ef6dc-4d3a-42ad-8f28-e6d5547a5007\"}, {\"url\": \"https://gitlab.com/dalibo/postgresql_anonymizer/-/commit/e517b38e62e50871b04011598e73a7308bdae9d9\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\"}]",
"sourceIdentifier": "f86ef6dc-4d3a-42ad-8f28-e6d5547a5007",
"vulnStatus": "Awaiting Analysis",
"weaknesses": "[{\"source\": \"f86ef6dc-4d3a-42ad-8f28-e6d5547a5007\", \"type\": \"Secondary\", \"description\": [{\"lang\": \"en\", \"value\": \"CWE-20\"}]}]"
},
"nvd": "{\"cve\":{\"id\":\"CVE-2024-2339\",\"sourceIdentifier\":\"f86ef6dc-4d3a-42ad-8f28-e6d5547a5007\",\"published\":\"2024-03-08T20:15:46.170\",\"lastModified\":\"2025-02-12T16:44:09.467\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"PostgreSQL Anonymizer v1.2 contains a vulnerability that allows a user who owns a table to elevate to superuser. A user can define a masking function for a column and place malicious code in that function. When a privileged user applies the masking rules using the static masking or the anonymous dump method, the malicious code is executed and can grant escalated privileges to the malicious user. PostgreSQL Anonymizer v1.2 does provide a protection against this risk with the restrict_to_trusted_schemas option, but that protection is incomplete. Users that don\u0027t own a table, especially masked users cannot exploit this vulnerability. The problem is resolved in v1.3.\"},{\"lang\":\"es\",\"value\":\"PostgreSQL Anonymizer v1.2 contiene una vulnerabilidad que permite a un usuario propietario de una tabla ascender a superusuario. Un usuario puede definir una funci\u00f3n de enmascaramiento para una columna y colocar c\u00f3digo malicioso en esa funci\u00f3n. Cuando un usuario privilegiado aplica las reglas de enmascaramiento mediante el enmascaramiento est\u00e1tico o el m\u00e9todo de volcado an\u00f3nimo, el c\u00f3digo malicioso se ejecuta y puede otorgar privilegios aumentados al usuario malintencionado. PostgreSQL Anonymizer v1.2 proporciona protecci\u00f3n contra este riesgo con la opci\u00f3n restrict_to_trusted_schemas, pero esa protecci\u00f3n est\u00e1 incompleta. Los usuarios que no poseen una mesa, especialmente los usuarios enmascarados, no pueden aprovechar esta vulnerabilidad. El problema se resuelve en v1.3.\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"f86ef6dc-4d3a-42ad-8f28-e6d5547a5007\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H\",\"baseScore\":8.0,\"baseSeverity\":\"HIGH\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"HIGH\",\"privilegesRequired\":\"HIGH\",\"userInteraction\":\"NONE\",\"scope\":\"CHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.3,\"impactScore\":6.0},{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H\",\"baseScore\":8.8,\"baseSeverity\":\"HIGH\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":2.8,\"impactScore\":5.9}]},\"weaknesses\":[{\"source\":\"f86ef6dc-4d3a-42ad-8f28-e6d5547a5007\",\"type\":\"Secondary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-20\"}]},{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"NVD-CWE-noinfo\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:dalibo:anonymizer:1.2.0:*:*:*:*:postgresql:*:*\",\"matchCriteriaId\":\"502E5DD4-11FB-47F1-8F8C-ECA6C02130B6\"}]}]}],\"references\":[{\"url\":\"https://gitlab.com/dalibo/postgresql_anonymizer/-/commit/e517b38e62e50871b04011598e73a7308bdae9d9\",\"source\":\"f86ef6dc-4d3a-42ad-8f28-e6d5547a5007\",\"tags\":[\"Patch\"]},{\"url\":\"https://gitlab.com/dalibo/postgresql_anonymizer/-/commit/e517b38e62e50871b04011598e73a7308bdae9d9\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]}]}}",
"vulnrichment": {
"containers": "{\"adp\": [{\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2024-2339\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"total\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-08-02T19:52:46.930699Z\"}}}], \"affected\": [{\"cpes\": [\"cpe:2.3:a:dalibo:postgresql_anonymizer:*:*:*:*:*:*:*:*\"], \"vendor\": \"dalibo\", \"product\": \"postgresql_anonymizer\", \"versions\": [{\"status\": \"affected\", \"version\": \"1\", \"lessThan\": \"1.3.0\", \"versionType\": \"rpm\"}], \"defaultStatus\": \"unknown\"}], \"providerMetadata\": {\"shortName\": \"CISA-ADP\", \"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"dateUpdated\": \"2024-08-02T19:53:31.456Z\"}}], \"cna\": {\"title\": \"Improper Input Validation in PostgreSQL Anonymizer 1.2 allows table owner to gain superuser privileges via masking rule\", \"credits\": [{\"lang\": \"en\", \"value\": \"The PostgreSQL Anonymizer project thanks Pedro Gallegos for reporting this problem.\"}], \"metrics\": [{\"format\": \"CVSS\", \"cvssV3_1\": {\"version\": \"3.1\", \"baseScore\": 8, \"baseSeverity\": \"HIGH\", \"vectorString\": \"CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H\"}}], \"affected\": [{\"vendor\": \"DALIBO\", \"product\": \"PostgreSQL Anonymizer\", \"versions\": [{\"status\": \"affected\", \"version\": \"1\", \"lessThan\": \"1.3.0\", \"versionType\": \"rpm\"}], \"defaultStatus\": \"unaffected\"}], \"references\": [{\"url\": \"https://gitlab.com/dalibo/postgresql_anonymizer/-/commit/e517b38e62e50871b04011598e73a7308bdae9d9\"}], \"workarounds\": [{\"lang\": \"en\", \"value\": \"Revoke the CREATE permission to non-superusers\"}], \"descriptions\": [{\"lang\": \"en\", \"value\": \"PostgreSQL Anonymizer v1.2 contains a vulnerability that allows a user who owns a table to elevate to superuser. A user can define a masking function for a column and place malicious code in that function. When a privileged user applies the masking rules using the static masking or the anonymous dump method, the malicious code is executed and can grant escalated privileges to the malicious user. PostgreSQL Anonymizer v1.2 does provide a protection against this risk with the restrict_to_trusted_schemas option, but that protection is incomplete. Users that don\u0027t own a table, especially masked users cannot exploit this vulnerability. The problem is resolved in v1.3.\"}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-20\", \"description\": \"Improper Input Validation\"}]}], \"configurations\": [{\"lang\": \"en\", \"value\": \"A user that own a table also has the CREATE permission\"}], \"providerMetadata\": {\"orgId\": \"f86ef6dc-4d3a-42ad-8f28-e6d5547a5007\", \"shortName\": \"PostgreSQL\", \"dateUpdated\": \"2024-03-08T20:07:14.838Z\"}}}",
"cveMetadata": "{\"cveId\": \"CVE-2024-2339\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2024-08-01T19:11:53.328Z\", \"dateReserved\": \"2024-03-08T19:53:56.153Z\", \"assignerOrgId\": \"f86ef6dc-4d3a-42ad-8f28-e6d5547a5007\", \"datePublished\": \"2024-03-08T20:07:14.838Z\", \"assignerShortName\": \"PostgreSQL\"}",
"dataType": "CVE_RECORD",
"dataVersion": "5.1"
}
}
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
Loading…