Onderzoekers zeggen een paar ernstige kwetsbaarheden te hebben gevonden in de versleutelde chatapp Threema. In een paper beschrijven ze zeven mogelijkheden om de encryptie te breken, al is misbruik in de praktijk verwaarloosbaar. Threema gebruikt inmiddels andere versleuteling.
Onderzoekers van de ETH Technische Universiteit van Zürich hebben hun bevindingen gepubliceerd in een paper. Ook hebben ze een website opgezet die Breaking The 3ma heet waarin ze hun belangrijkste bevindingen beschrijven. Threema is een beveiligde chatapp die gebruikmaakt van end-to-endencryptie op alle berichten. Daarvoor gebruikt het een zelfgemaakt cryptografisch protocol, maar sinds een paar weken heeft Threema een ander protocol, waardoor de ontdekkingen minder relevant zijn.
Volgens de onderzoekers zitten er diverse kwetsbaarheden in het oudere encryptieprotocol, maar is het daadwerkelijke gevaar klein. De onderzoekers delen de kwetsbaarheden in drie threat models. In alle drie die modellen is toegang nodig tot een server of het communicatiekanaal van slachtoffers, zelfs met een onvergrendeld toestel. Aanvallers met zulke toegang kunnen ook zonder de nieuwe encryptiekwetsbaarheden al veel informatie buitmaken.
Twee kwetsbaarheden kunnen plaatsvinden als een aanvaller zich op een netwerk richt. In dat geval is het mogelijk om permanente toegang te houden op een server als een aanvaller een ephemeral key bemachtigt. Threema gebruikt steeds wisselende sleutels, maar de onderzoekers tonen aan dat als een aanvaller op een client zo'n sleutel weet te bemachtigen, de aanvaller altijd toegang kan houden op de server. Een andere kwetsbaarheid draait om de vouch box, een soort container waarin een ephemeral key wordt gekoppeld aan een andere key. De aanvallers tonen aan dat ze een gebruiker een geldige vouch box key kunnen laten aanmaken waardoor ze zichzelf kunnen voordoen als legitieme client op de server.
Voor drie andere aanvallen is het nodig dat een aanvaller al toegang heeft tot een Threema-server. In dat geval is het bij een van de kwetsbaarheden mogelijk om de timestamp van verzonden berichten te manipuleren of berichten in een verschillende volgorde te laten afleveren, al kan de inhoud van berichten niet worden gelezen. Een andere kwetsbaarheid maakt het mogelijk om oude berichten terug te sturen naar een gebruiker als die de app op een nieuw apparaat installeert. Dat maakt replay attacks mogelijk, zeggen de aanvallers. Bij een derde kwetsbaarheid is het mogelijk een versleuteld bericht naar een andere gebruiker door te sturen, al zijn er ook bij die laatste twee aanvallen geen mogelijkheden om de inhoud van het bericht te lezen.
De onderzoekers beschrijven ook twee aanvallen waarvoor toegang nodig is tot een Android-toestel van een gebruiker. Als een aanvaller die heeft, kan hij een account kopiëren naar een tweede apparaat met een wachtwoord dat ter plekke wordt gekozen. Ook kunnen de onderzoekers een long term key kopiëren als een gebruiker de Threema Safe-cloudback-upfunctie gebruikt. Dat is een aanval die vergelijkbaar is met Crime, dat op tls-verbindingen kan worden toegepast.
De onderzoekers hebben hun bevindingen in oktober vorig jaar voorgelegd aan Threema. Dat heeft alle kwetsbaarheden gerepareerd. Inmiddels heeft Threema ook een nieuw encryptieprotocol, genaamd Ibex, waarin de kwetsbaarheden niet meer voorkomen. Desondanks is Threema niet te spreken over het onderzoek. Het bedrijf zegt dat de informatie sinds november vorig jaar, toen Ibex werd geïntroduceerd, niet meer relevant is en dat de daadwerkelijke impact nagenoeg non-existent is. Het bedrijf weerlegt alle losse kwetsbaarheden door te zeggen dat voor veel ervan ook nog social engineering of andere fysieke toegang tot een apparaat nodig is.
Zelf zeggen de onderzoekers dat hun onderzoek wel degelijk nut heeft, vooral als het gaat om securityaudits. Threema laat onafhankelijke audits uitvoeren, maar volgens de onderzoekers werd daarbij niet gekeken naar de aard van het cryptografische protocol zelf. Een van de onderzoekers waarschuwt tegen het gebruik van zelfgemaakt protocollen.