Telenia Software TVOX
Telenia Software è un Vendor Italiano presente nel mercato UC&C e Contact Center dal 1994. Sviluppano sistemi di Customer Interaction rivolti a medie e grandi aziende, pubbliche e private che hanno l’obiettivo di migliorare la qualità delle interazioni interne e i processi di supporto clienti Omnicanale misurando la soddisfazione e i livelli di servizio erogati sia nei canali tradizionali (Voce) che nei canali digitali (Mail/Ticket, Webchat, Sms, Video, IoT, WhatsApp, Telegram, Twitter ecc).
Azienda molto attenta e sensibile alle problematiche di sicurezza e la ringraziamo per la collaborazione durante la fase di responsible disclosure.
Descrizione del prodotto
TVOX è un potente strumento di marketing in grado di utilizzare diversi canali di comunicazione per interagire con i clienti.
Technical summary
L’Offensive Security Team di Tinexta Cyber ha rilevato alcune vulnerabilità sulla ISO scaricabile: TVox 22.0.14
Vulnerability | CVSSv3.1 | Attack Vector |
Blind OS Command Injection (non autenticato) | 9.8 Critical | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Credenziali salvate in chiaro in file di configurazione | 9.4 Critical | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L |
Path Traversal | 7.5 High | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
Nella sezione seguente vengono mostrati i dettagli tecnici delle vulnerabilità rilevate.
Blind OS Command Injection (non autenticato) CVE-2022-43333
Descrizione
L’asset TVOX Web Client è vulnerabile ad attacchi di tipo Blind OS Command Injection da parte di utenti non autenticati.
Un potenziale attaccante sarà in grado di eseguire comandi sul sistema operativo target con il livello di privilegio con cui è in esecuzione il programma effettuando delle semplici richieste GET da browser senza nessun tipo di autenticazione.
Assets
- https://X.X.X.X/t-vox/manager/html/action_export_control.php [pid]
Proof of Concept
Si mostrano di seguito le evidenze della vulnerabilità e di come sia stato possibile eseguire un comando del sistema operativo locale della macchina, nello specifico, come è stata innescata la richiesta di download di un file dalla vps utilizzata nell’attacco.
Evidenza 1 – Richiesta dell’URL con il parametro PID, accodando un secondo comando da eseguire
Evidenza 2 – L’immagine mostra il comando /usr/bin/nc che posto in attesa riceve una connessione dal server
In questo modo, attraverso chiamate successive è stato possibile effettuare l’upload di una web shell in php all’interno di una cartella scrivibile dall’utente locale www-data ed esposta all’esterno, tramite web server:
Evidenza 3 – L’immagine mostra come richiamare la web shell ed eseguire comandi del sistema operativo
Dopo un’attenta analisi è stato rilevato il punto in cui viene innescata la vulnerabilità, nel file:
/opt/telenia/tvox/php/siti/t-vox/t-vox/manager/html/action_export_control.php
Evidenza 4 – Parte di codice che causa la vulnerabilità
Come si vede dall’immagine precedente, la vulnerabilità è innescata in quanto il parametro passato dall’utente al file action_export_control.php non viene validato e viene accodato così com’è al parametro della funzione exec di php, permettendo la concatenazione di istruzioni multiple.
Inoltre tale file è richiamabile dall’esterno e non necessita di autenticazione.
Attraverso chiamate successive è stato possibile ottenere una shell remota sul sistema, permettendo l’accesso alla rete interna.
Evidenza 5 – Accesso alla rete interna ed esecuzione shell remota
Riferimenti
https://owasp.org/www-community/attacks/Command_Injection
https://cwe.mitre.org/data/definitions/78.html
https://owasp.org/Top10/A03_2021-Injection
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-6271
Credenziali salvate in chiaro in file di configurazione
Descrizione
È stata rilevata la presenza di credenziali non “cifrate” (hashed) all’interno del file di configurazione di Rocket.Chat.
Tale file è accessibile all’interno della distribuzione pubblica dell’applicativo da parte del vendor, e consente l’accesso amministrativo all’applicazione Rocket.Chat.
Proof of Concept
Analizzando la ISO messa a disposizione dal vendor è stato possibile constatare che le credenziali messe in chiaro all’interno del file di configurazione di Rocket.Chat /etc/rocketchat/rocketchat.cfg sono le stesse per l’applicazione nel sistema e hanno permesso l’accesso come amministratore all’appicativo Rocket.Chat
Evidenza 6 – Evidenza delle credenziali utilizzate per accedere all’applicazione Rocket.Chat
Riferimenti
https://owasp.org/www-community/vulnerabilities/Password_Plaintext_Storage
https://cheatsheetseries.owasp.org/cheatsheets/Password_Storage_Cheat_Sheet.html
https://cwe.mitre.org/data/definitions/257.html
https://cwe.mitre.org/data/definitions/522.html
https://owasp.org/Top10/it/A04_2021-Insecure_Design
Path Traversal
Descrizione
La vulnerabilità Path Traversal 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.
Assets
- https://X.X.X.X/t-vox/repository_update/get_file_list.php [application]
Proof of Concept
Lo script PHP in oggetto permetteva di listare il contenuto della cartella indicata nel parametro application, senza necessità di autenticazione e tramite una semplice chiamata GET via browser.
Di seguito vengono mostrate le evidenze di come è listare il contenuto di qualsiasi cartella di cui l’utente in esecuzione abbia lettura:
Evidenza 7 – Lista del contenuto cartella /home
Evidenza 8 – Esempio, contenuto della cartella /var/log
Riferimenti
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
Remediation
Per tutte le remediation alle vulnerabilità descritte si consiglia per chi non l’avesse già fatto di aggiornare il software alla versione 22.0.23 presente all’indirizzo: https://www.teleniasoftware.com/timeline/tvox-22-0-23/
Disclosure Timeline
- 19-07-2022: Vulnerabilità identificata
- 20-07-2022: Vendor contattato via email (1° tentativo)
- 26-07-2022: Vendor contattato via contatto dal sito (2° tentativo)
- 01-08-2022: Vendor contattato via form di chat sito (risposto, preso accordi via email)
- 08-11-2022: Assegnato cve-id: CVE-2022-43333 per la RCE
- 21-11-2022: Vendor pubblica aggiornamento 22.0.23 con i fix alle vulnerabilità
- 30-11-2022: Tinexta Cyber pubblica la vulnerabilità