Bug in Apple’s CoreText crasht iOS- en OS X-apps

Abonneer je gratis op Techzine!

Door een bug in de CoreText-rendering engine van Apple crashen zowel iOS- als OS X-apps zodra geprobeerd wordt om een specifieke set Arabische karakters te renderen.

De bug is gisteren ontdekt en doet de ronde in hack- en programmeerkringen en wordt nu bovendien actief misbruikt, doordat gebruikers expres de Arabische tekens plaatsen om apps te laten crashen.

Het probleem is van toepassing op iOS 6 en OS X 10.8 en lijkt al opgelost in iOS 7 en OS X 10.9, want daar werkt de bug niet meer. Als in iOS 6 in Safari een pagina met de tekens wordt bezocht, dan crasht de browser direct. De gebruiker moet dan de gegevens en cookies wissen om Safari weer te kunnen gebruiken, omdat deze anders bij opnieuw opstarten blijft crashen.

Opmerkelijk is dat TweetBot, dat eveneens CoreText gebruikt, niet crasht op de set karakters.

De bug is door een Russische website ontdekt. De site claimt dat Apple al zes maanden op de hoogte is van het probleem, maar nog niet heeft gereageerd. De tekst lijkt inderdaad in februari op Twitter te zijn geplaatst met daarin de vraag om crashes aan Apple te melden.

Met de set van karakters is het mogelijk om een DoS-aanval op Apple-apparaten uit te voeren. Door gebruikers de set karakters te sms’en, wordt bijvoorbeeld de sms-app onbeschikbaar gemaakt. Ook is het mogelijk om een WiFi-netwerk in te stellen met als naam de Arabische tekens, wat eveneens voor problemen zal zorgen.

De kans dat de de set van karakters per toeval voorkomt, is overigens nihil.

Facebook verbiedt het plaatsen van de set van karakters. Er verschijnt dan een foutmelding dat het plaatsen van het bericht is mislukt.

Overigens is dit niet de eerste keer dat Apple’s software vatbaar is voor een DoS-aanval. In februari werd bekend dat door ‘file:///’ in te typen op Macs de betreffende app zou crashen en in maart hadden iOS-ontwikkelaars last van een DoS-aanval doordat zij het slachtoffer werden van sms-aanvallen. Apple heeft geen limiet ingesteld op de hoeveelheid berichten die een gebruiker in een bepaalde tijd kan verzenden.