CVE-2023-46865
Published: 30 October 2023
Summary
CVE-2023-46865 is a high-severity Code Injection (CWE-94) vulnerability in Craterapp Crater. Its CVSS base score is 7.2 (High).
Operationally, ranked in the top 1.3% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
Deeper analysis
Crater versions through 6.0.6 contain a code-injection flaw in CompanyController.php at the /api/v1/company/upload-logo endpoint. The endpoint processes an uploaded Company Logo image without sanitizing or validating PNG IDAT chunks, allowing an attacker to embed arbitrary PHP code that is later executed by the application.
Only an authenticated superadmin account can reach the endpoint, but once the malicious PNG is uploaded the server will interpret and run the injected PHP, giving the attacker full control over the underlying host including the ability to read or modify any data accessible to the web process.
Public references include an open GitHub issue, a merged pull request, and multiple proof-of-concept repositories that demonstrate the attack; a detailed write-up is also available at notes.netbytesec.com. The CVE carries a CVSS score of 7.2 and an EPSS of 0.70, reflecting sustained interest in exploitation after disclosure.
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2023-51031
Vulnerability details
/api/v1/company/upload-logo in CompanyController.php in crater through 6.0.6 allows a superadmin to execute arbitrary PHP code by placing this code into an image/png IDAT chunk of a Company Logo image.
- CWE(s)
Related Threats
No named actor attribution yet. ATT&CK technique mapping in progress for this CVE.
Affected Assets
Mitigating Controls
Likely Mitigating Controls AI
Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.
Makes persistent code injection into loaded programs impossible when the executable image itself resides on hardware-protected read-only media.
Dynamically generated code can be produced and executed inside the isolated chamber, preventing host compromise from code-injection payloads.
Validates inputs used in dynamic code generation to block injected directives.
Directly prevents execution of attacker-supplied code written into data memory regions.