Tipo di vulnerabilità: Cross Site Scripting (XSS) Prodotto: Advanced REST Client applicazione desktop Versione vulnerabile: 17.0.9 Fornitore del/i prodotto/i: https://www.advancedrestclient.com/
1. Descrizione
La vulnerabilità Cross-Site Scripting (XSS) in Advanced REST Client v.17.0.9 consente a un attaccante remoto di eseguire codice arbitrario e ottenere informazioni sensibili.
Ciò può essere ottenuto sfruttando uno script appositamente predisposto all'interno del parametro 'edit details' della funzione New Project.
2. Vettori di attacco
Questa vulnerabilità si manifesta quando un attaccante memorizza in modo dannoso uno script 'XSS' nella descrizione del progetto (formato Markdown), condivide il progetto con la vittima e quindi esegue il progetto condiviso sul PC della vittima utilizzando l'app ARC.
3. Prova di concetto (PoC)
Passo 1) Fare clic sul pulsante '+ADD A PROJECT' nella terza scheda dopo aver avviato Advanced REST Client.
Passo 2) Fare clic sulla scheda 'Open details' per visualizzare il progetto creato.
Passo 3) Fare clic sulla scheda 'Edit details' nel progetto "New Project" creato.
Passo 4) L'attaccante scrive uno 'script XSS' e fa clic sul pulsante 'SAVE'.
root@kitploit:~
<!--Used 'XSS script' for information leakage-->
<!--Another 'XSS script' for phishing-->
Passo 5) All'apertura di un progetto, uno 'script XSS' può generare un alert (perdita di informazioni).
oppure caricare una pagina dell'attaccante (phishing).
Passo 6) I progetti creati dagli attaccanti possono essere esportati tramite la funzione 'Export project'.
Passo 7) L'attaccante assegna un nome al progetto e fa clic sul pulsante 'EXPORT' per esportare il progetto in cui è memorizzato lo 'script XSS'.
Passo 8) Questa app ha anche la possibilità di importare un progetto.
Passo 9) La vittima seleziona 'import all versions of ARC data' dalla scheda superiore per aprire il progetto ricevuto dall'attaccante.
Passo 10) Quando si fa clic sul pulsante 'SELECT FILE' per consentire alla vittima di aprire il file di progetto dannoso contenente lo 'script XSS'.
Passo 11) Dopo aver completato la selezione del file, fare clic sul pulsante 'IMPORT DATA' per importare correttamente.
Passo 12) Il file importato viene eseguito e lo 'script XSS memorizzato' dell'attaccante viene eseguito nell'app 'Advanced REST Client (ARC)' della vittima.
4. Informazioni aggiuntive
Se la vittima esegue un progetto che include payload dannosi condivisi dall'attaccante, è pericoloso perché la vittima non può notare immediatamente il payload.
Ad esempio, questa vulnerabilità può essere utilizzata per rubare informazioni sensibili o eseguire comportamenti dannosi leggendo l'URL del browser di un utente.
È inoltre possibile effettuare attacchi di phishing reindirizzando gli utenti verso altri siti. Prestare attenzione: se una vulnerabilità XSS viene sfruttata in un attacco di phishing, può portare all'esposizione esterna di informazioni sensibili.