In Firefox per Android grave nella realizzazione del protocollo , utilizzato per la scoperta dei servizi di rete nella rete locale. La vulnerabilità consente a un aggressore, situato nella stessa rete cablata o wireless, di rispondere alle richieste di controllo di Firefox con un messaggio UPnP XML "LOCATION" contenente , che possono aprire un URI arbitrario nel browser o chiamare gestori di altre applicazioni.
Il problema si presenta fino alla versione ed è stato risolto nella versione di Firefox per Android 79, ovvero le vecchie versioni classiche di Firefox per Android sono vulnerabili e per bloccare il problema è necessario passare alla del browser (Fenix), che utilizza il motore GeckoView, basato sulla tecnologia di Firefox Quantum, e un insieme di librerie . Le versioni di Firefox per desktop non sono interessate dal problema.
Per testare la vulnerabilità è stato creato un prototipo dell'exploit. L'attacco viene eseguito senza alcuna azione da parte dell'utente, è sufficiente che sul dispositivo mobile sia in esecuzione il browser vulnerabile Firefox per Android e che la vittima si trovi nella stessa sottorete del server SSDP dell'aggressore.
Firefox per Android invia periodicamente messaggi SSDP in modalità di broadcasting (multicast UDP) per identificare i dispositivi di broadcasting presenti nella rete locale, come lettori multimediali e smart TV. Tutti i dispositivi nella rete locale ricevono questi messaggi e possono inviare una risposta. In condizioni normali, il dispositivo restituisce un link alla posizione di un file XML contenente informazioni sul dispositivo che supporta UPnP. Durante un attacco, invece del link al file XML, è possibile inviare un URI con comandi intent per Android.
Con i comandi intent è possibile reindirizzare l'utente verso siti di phishing o fornire un link a un file xpi (il browser offrirà di installare l'estensione). Poiché le risposte dell'attaccante non hanno limiti, può cercare di sopraffare e inondare il browser di richieste di installazione o siti dannosi, sperando che l'utente commetta un errore e clicchi sull'installazione di un pacchetto dannoso. Oltre ad aprire link arbitrari nel browser stesso, i comandi intent possono essere utilizzati per elaborare contenuti anche in altre applicazioni Android; ad esempio, è possibile aprire un modello di email nel client di posta (URI mailto:) o avviare l'interfaccia per effettuare una chiamata (URI tel:).
Fonte: opennet.ru
