Met behulp van Pegasus van de Israëlische NSO Group is wereldwijd bij tal van politici, journalisten en andere belangrijk geachte mensen in hun telefoons ingebroken. Nu hebben medewerkers van Project Zero van Google de code van dat progje voor de telefoons van Apple in handen gekregen. Dat schijnt bijzonder listig in elkaar gestoken te zijn. Dat gaat zelfs zo ver om met een ‘simpel’ bewegend GIF-bestandje je te laten denken dat je met een computer te maken hebt.
Er zouden zo’n 50 000 (telefoons van) mensen zijn getroffen door Pegasusaanvallen. Om die binnen te dringen heeft de NSO Group gebruik gemaakt van verschillende kwetsbaarheden, zoals die welke Forcedentry wordt genoemd. Daar heeft de gebruiker geen weet van. Daardoor kan zonder medeweten van de gebruiker Pegasus op de telefoon worden geïnstalleerd.
Anders dan gebruikelijk bij het kraken van telefoons of computers hoeft de gebruiker nergens op te klikken om de installatie van de kwalijke code op zijn toestel in gang te zetten. Het lek bevindt zich in de manier waarop iMessage bewegende GIF-plaatjes weergeeft/opent.
Als die toepassing een GIF-bestand probeert te openen gebruikt het een van de twintig beschikbare afbeeldingscodecs, afhankelijk van het bestandstype. Er is een codec voor PDF-bestanden. Om een iPhone te besmetten, heeft de NSO Group zo’n PDF-bestand gemaakt dat wordt geopend door de CoreGraphics PDF-lezer, die op zijn beurt de JBIG2-codec gebruikt. Het lek zit in de laatste, waarmee het mogelijk is om het vollopen van de buffer te veroorzaken.
Computer nadoen
JBIG2 kan echter geen scripts interpreteren, wat de mogelijkheden beperkt tot eenvoudige logische functies. De ontwikkelaars van NSO Group gebruikten daarom 70.000 commando’s om een rudimentaire computerarchitectuur te simuleren die een script kan uitvoeren om het toestel te infiltreren. Dit is een zeer geavanceerde aanval die mazen in het systeem gebruikt/misbruikt. Project Zero-specialisten noemden het “een van de technisch meest geavanceerde prestaties die we ooit hebben gezien.” Apple loste de fout op 13 september op met versie iOS 14.8. Op naar de volgende kwetsbaarheid…
Bron: Futura-Sciences