Headline
CVE-2022-47769: Security Advisory: Serenissima Informatica – FastCheckIn (CVE-2022-47768/CVE-2022-47769/ CVE-2022-47770)
An arbitrary file write vulnerability in Serenissima Informatica Fast Checkin v1.0 allows unauthenticated attackers to upload malicious files in the web root of the application to gain access to the server via the web shell.
L’ Offensive Security Team di Swascan ha identificato 3 vulnerabilità sul prodotto.
Serenissima Informatica SpA
Serenissima Informatica è un’azienda che si occupa dello sviluppo di soluzioni per la gestione di PMI, Hotel e catene alberghiere, ristoranti e GDO.
FastCheckIn – descrizione prodotto
Il prodotto FastCheckin (Web Check-In) in particolare aiuta gli utenti di Hotel e catene alberghiere nella compilazione dei propri dati e nella gestione delle proprie prenotazione online.
Technical summary
L’Offensive Security Team di Swascan ha identificato importanti vulnerabilià su: FastCheckIn:
Vulnerabilità
CWE-ID
CVSSv3.1 Vector String
CVSSv3.1 Base Score
Arbitrary File Write (non autenticato)
CWE-22
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
9.8 – Critical
SQL Injection (non autenticato)
CWE-89
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
9.8 – Critical
Absolute/Relative Path Traversal (non autenticato)
CWE-22
AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N
8.6 – High
Swascan ha scelto di non divulgare i dettagli tecnici della vulnerabilità.
Nella sezione seguente la Proof-of-Concept con evidenze offuscate sulle vulnerabilità riscontrate.
Arbitrary File Write (non autenticato) – CVE-2022-47769****Descrizione
L’applicazione risulta vulnerabile ad Arbitrary File Write.
Un attaccante, remotamente e in modalità non autenticata, potrà scrivere nella web root dell’applicazione, qualsiasi file dal contenuto arbitrario per alterare e/o bloccare il funzionamento dell’applicativo oppure per ottenere l’accesso al server tramite web shell.
Proof of Concept
Si mostra di seguito come sia stato possibile scrivere una web shell nella web root dell’applicazione web ed ottenere accesso al server.
Per ottenere tale risultato sono stati effettuati i seguenti passaggi:
- Esecuzione di una HTTP Post Request per scrivere una WebShell (nell’esempio con il nome 70347276-ee93-4366-b396-e1496f67ed6d.aspx ) all’interno della web root;
- Esecuzione di comandi sul server tramite WebShell.
Evidenza 1 Richiesta HTTP contenente la WebShell
Il file C:\\FastCheckIn\\FastCI\\70347276-ee93-4366-b396-e1496f67ed6d.aspx è stato quindi creato con successo e raggiungibile dal web come mostrato nell’evidenza successiva:
Evidenza 2 Esecuzione tramite webshell del comando “whoami”
Riferimenti
https://cwe.mitre.org/data/definitions/20.html
http://cwe.mitre.org/data/definitions/22.html
https://owasp.org/www-community/attacks/Path_Traversal
https://cheatsheetseries.owasp.org/cheatsheets/Input_Validation_Cheat_Sheet.html
SQL Injection (non autenticato) – CVE-2022-47770****Descrizione
L’applicazione web è vulnerabile ad attacchi di tipo SQL Injection non autenticati.
Un potenziale attaccante sarà in grado accedere remotamente, completamente ed in maniera non autenticata alle informazioni contenute nella banca dati ed effettuare operazioni come esfiltrazione e modifica di account utente ed amministrativi, dati personali di utenti ed altre informazioni in essa contenute.
Proof of Concept
Si mostrano di seguito le evidenze della vulnerabilità e di come sia possibile estrarre informazioni sensibili dall’interno della banca dati.
Di seguito l’evidenza dell’enumerazione del DMBS, Microsoft SQL Server e la lista offuscata) di tutti i database presenti sul server:
Evidenza 4 SQLMap Lista database
Ciò conferma la presenza della vulnerabilità.
A fronte della corretta exploitation di questo tipo di vulnerabilità, un attaccante potrebbe acquisire i diritti di amministratore dell’applicativo web, con conseguente accesso a tutte le funzionalità del portale.
Riferimenti
https://www.owasp.org/index.php/SQL_Injection
https://cwe.mitre.org/data/definitions/89.html
https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/SQL_Injection_Prevention_Cheat_Sheet.md
https://owasp.org/Top10/A03_2021-Injection/
https://www.cve.org/CVERecord?id=CVE-2022-47770
Path Traversal (non autenticato) – CVE-2022-47768****Descrizione
La vulnerabilità Path Traversal (Relative e Absolute) consente l’accesso a file presenti nel sistema operativo che risiedono al di fuori della web root dell’applicazione. Manipolando le variabili che richiedono i file, attraverso l’uso dei caratteri “…/” o di un path assoluto (eg. C:\…) è possibile accedere arbitrariamente ai file e/o cartelle contenuti nel sistema operativo come il codice sorgente dell’applicazione o file sensibili che risiedono nella macchina.
Proof of Concept
Di seguito vengono mostrate le evidenze di come è possibile leggere il contenuto di file sul filesystem. Nell’esempio viene mostrata la possibilità di leggere il file c:\windows\win.ini:
Evidenza 5 Richiesta e Risposta HTTP della vulnerabilità Absolute Path Traversal
Riferimenti
https://cwe.mitre.org/data/definitions/22.html
https://cwe.mitre.org/data/definitions/23.html
https://owasp.org/Top10/A01_2021-Broken_Access_Control/
https://owasp.org/www-community/attacks/Path_Traversal
https://www.cve.org/CVERecord?id=CVE-2022-47768
Remediation
Swascan consiglia di non esporre l’applicativo su Internet o, qualora fosse necessario, di accedervi esclusivamente tramite connessione VPN in attesa che il vendor rilasci una patch o un aggiornamento.
Disclosure Timeline
- 07-08-2022: Scoperte le vulnerabilità
- 07-08-2022: Vendor contattato tramite mail (1° tentativo, nessuna risposta)
- 22-09-2022: Vendor contattato tramite mail (2° tentativo, con risposta)
- 22-09-2022: Invio del report contenente le vulnerabilità
- 11-01-2023: Swascan ricontatta il vendor per eventuale review del documento (nessuna risposta)
- 18-01-2023: Swasacan ricontatta il vendor per eventuale review (nessuna risposta)
- 31-01-2023: Swascan pubblica la vulnerabilità
Related news
Serenissima Informatica Fast Checkin version v1.0 is vulnerable to Unauthenticated SQL Injection.