GHSA-8P2F-FX4Q-75CX
Vulnerability from github – Published: 2025-08-22 16:49 – Updated: 2025-08-22 21:08Summary
In Unopim, it is possible to create roles and choose the privileges. However, users without the “Delete” privilege for Products cannot delete a single product via the standard endpoint (expected behavior), but can still delete products via the mass-delete endpoint, even when the request contains only one product ID.
Severity: High CVSS Score 8.1 (CVSS 3.1 Vector: AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H) Category: Broken Access Control / Missing Authorization (OWASP A01:2021) Impact: Unauthorized product deletion -> data loss, possible business disruption
Affected Behavior
Single delete (enforced):
DELETE /admin/catalog/products/{id} returns 401 with "This action is unauthorized" for users lacking the Delete privilege.
Mass delete (not enforced):
POST /admin/catalog/products/mass-delete allows deletion without the Delete privilege. This occurs for both multiple IDs and a single ID submitted to the bulk endpoint.
PoC
A video was captured in Burp Suite for a proof of concept. The cookies were used directly from Burp Suite and rendered the My Account page to prove what cookies belong to what users. The video PoC is listed in references.
Impact
Unauthorized product deletion -> data loss, possible business disruption
{
"affected": [
{
"database_specific": {
"last_known_affected_version_range": "\u003c= 0.3.0"
},
"package": {
"ecosystem": "Packagist",
"name": "unopim/unopim"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "0.3.1"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2025-55741"
],
"database_specific": {
"cwe_ids": [
"CWE-284",
"CWE-862"
],
"github_reviewed": true,
"github_reviewed_at": "2025-08-22T16:49:55Z",
"nvd_published_at": "2025-08-22T16:15:46Z",
"severity": "HIGH"
},
"details": "### Summary\nIn Unopim, it is possible to create roles and choose the privileges. However, users without the \u201cDelete\u201d privilege for Products cannot delete a single product via the standard endpoint (expected behavior), but can still delete products via the mass-delete endpoint, even when the request contains only one product ID.\n\n**Severity**:\u00a0High CVSS Score 8.1 (CVSS 3.1 Vector:\u00a0[AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H](https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?vector=AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H\u0026version=3.1))\n**Category**: Broken Access Control / Missing Authorization (OWASP A01:2021)\n**Impact**: Unauthorized product deletion -\u003e data loss, possible business disruption\n\n### Affected Behavior\n**Single delete (enforced):**\n**DELETE** `/admin/catalog/products/{id}` returns 401 with \"This action is unauthorized\" for users lacking the Delete privilege.\n\n**Mass delete (not enforced):**\n**POST** `/admin/catalog/products/mass-delete` allows deletion without the Delete privilege. This occurs for both multiple IDs and a single ID submitted to the bulk endpoint.\n\n### PoC\nA video was captured in Burp Suite for a proof of concept. The cookies were used directly from Burp Suite and rendered the My Account page to prove what cookies belong to what users. The video PoC is listed in references.\n\n### Impact\nUnauthorized product deletion -\u003e data loss, possible business disruption",
"id": "GHSA-8p2f-fx4q-75cx",
"modified": "2025-08-22T21:08:49Z",
"published": "2025-08-22T16:49:55Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/unopim/unopim/security/advisories/GHSA-8p2f-fx4q-75cx"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-55741"
},
{
"type": "WEB",
"url": "https://github.com/unopim/unopim/commit/c14eebe653aafd8dc713ca729165177e63315989"
},
{
"type": "WEB",
"url": "https://github.com/unopim/unopim/commit/f49fa630afd36ff61c146b3e5bc7a0808667ca19"
},
{
"type": "PACKAGE",
"url": "https://github.com/unopim/unopim"
},
{
"type": "WEB",
"url": "https://www.youtube.com/watch?v=J_WV8fCXlJM"
},
{
"type": "WEB",
"url": "https://youtu.be/J_WV8fCXlJM"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H",
"type": "CVSS_V3"
}
],
"summary": "UnoPim has Broken Access Control"
}
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.