# CVE-2019-19576: Verot class.upload.php Remote Code Execution via PHAR Upload

Source: https://junglewise.ai/threats/cve-2019-19576-verot-class-upload-php-remote-code-execution-via-phar-upload  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2020-01-16. Updated: 2026-07-21  
License: CC BY 4.0 with a link back

CVE-2019-19576 · Severity: critical · CVSS 9.8 · Published 2020-01-16

A vulnerability in a popular PHP file upload library, used by the Joomla! K2 extension and other web applications, allows attackers to bypass security filters. By uploading a malicious file disguised with a specific extension, an attacker can take complete control of the web server. This could lead to the theft of sensitive customer data, website defacement, or a total service outage.

Technologies: [verot/class.upload.php (Packagist)](https://junglewise.ai/threats/technologies/verot-class-upload-php). Vendors: [Packagist](https://junglewise.ai/threats/vendors/packagist).

## Quick answers

**Is CVE-2019-19576 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2019-19576 being exploited in the wild.

**How severe is CVE-2019-19576?** Critical severity, with a CVSS score of 9.8, published 16 January 2020.

**Which products and versions are affected?** verot/class.upload.php (Packagist) ECOSYSTEM:introduced=0,fixed=1.0.3; Verot.Net Class.Upload.Php < 1.0.3, >= 2.0.0, < 2.0.4.

**Is there a fix for CVE-2019-19576?** Yes. verot/class.upload.php (Packagist): upgrade to 1.0.3 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2019-19576 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2019-19576?** Check whether you run verot/class.upload.php (Packagist) or Verot.Net Class.Upload.Php at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- verot/class.upload.php (Packagist): upgrade to 1.0.3 or later

  ```sh
  composer require verot/class.upload.php:^1.0.3
  ```


## Technical details

An unrestricted file upload vulnerability (CWE-434) exists in verot.net class.upload.php before 1.0.3 and 2.x before 2.0.4. The library's security filter, which renames dangerous file types to .txt, omits the '.phar' extension from its regex-based blacklist. A remote, unauthenticated attacker can exploit this by uploading a PHP Archive (PHAR) file containing malicious code. If the web server is configured to execute .phar files, the attacker can achieve arbitrary remote code execution. This library is notably used in the Joomla! K2 extension (up to version 2.10.1). Patches are available in versions 1.0.3 and 2.0.4.

## Affected products

- verot.net class.upload.php < 1.0.3, >= 2.0.0, < 2.0.4
- Joomla! K2 <= 2.10.1

## Identifiers

- CVE-2019-19576
- GHSA-r5gm-4p5w-pq2p

## Timeline

- 2019-12-04: disclosed: NVD publication date
- 2020-01-16: advisory: GitHub Advisory published

## References

- [https://github.com/getk2/k2/commit/d1344706c4b74c2ae7659b286b5a066117155124](https://github.com/getk2/k2/commit/d1344706c4b74c2ae7659b286b5a066117155124)
- [https://github.com/verot/class.upload.php/commit/5a7505ddec956fdc9e9c071ae5089865559174f1](https://github.com/verot/class.upload.php/commit/5a7505ddec956fdc9e9c071ae5089865559174f1)
- [https://github.com/verot/class.upload.php/commit/db1b4fe50c1754696970d8b437f07e7b94a7ebf2](https://github.com/verot/class.upload.php/commit/db1b4fe50c1754696970d8b437f07e7b94a7ebf2)
- [https://github.com/jra89/CVE-2019-19576](https://github.com/jra89/CVE-2019-19576)
- [https://github.com/verot/class.upload.php/compare/1.0.2...1.0.3](https://github.com/verot/class.upload.php/compare/1.0.2...1.0.3)

## Related threats

- [class.upload.php allows cross-site scripting attacks via uploaded files](https://junglewise.ai/threats/cve-2023-6551-class-upload-php-allows-cross-site-scripting-attacks-via-uploaded)
- [verot.net class.upload.php Unrestricted File Upload via .pht extension](https://junglewise.ai/threats/cve-2019-19634-verot-net-class-upload-php-unrestricted-file-upload-via-pht)
