
PoC di path traversal del pannello web del ransomware Jasmin
#SoloScopiEducativi
https://github.com/codesiddhant/Jasmin-Ransomware
Ho scoperto una vulnerabilità di path traversal pre-autenticazione nel pannello web del ransomware Jasmin (CVE-2024-30851), che consente a un attaccante di de-anonimizzare gli operatori del pannello e di estrarre le chiavi di decrittazione. Il ransomware Jasmin è stato osservato in una recente campagna di sfruttamento di TeamCity (CVE-2024-27198, CVE-2024-27199) (https://twitter.com/brody_n77/status/1765145148227555826)
Screencast dal 2024-04-04 18-51-07.webm
L'endpoint interessato (Jasmin-Ransomware/Pannello Web/download_file.php) non chiama die() dopo aver inviato l'header Location. Ciò consente a un attaccante di bypassare i requisiti di autenticazione. La chiamata a readfile non è sanitizzata e permette a un attaccante di leggere file arbitrari.
<?php
session_start();
if(!isset($_SESSION['username']) ){
header("Location: login.php");
}
$file=$_GET['file'];
if(!empty($file)){
// Define headers
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=$file");
header("Content-Type: text/encoded");
header("Content-Transfer-Encoding: binary");
// Read the file
readfile($file);
Ci sono anche molte SQLi, una delle quali viene sfruttata per bypassare il login e ottenere i nomi dei file delle chiavi di decrittazione.