Beveiligingsonderzoekers hebben proof-of-conceptcode van een iOS-spoof online gezet waarmee het rebootproces wordt verborgen. Dat maakt het moeilijker voor een gebruiker om een telefoon te rebooten, wat verspreiders in staat stelt malware op een toestel te houden.
De code is gemaakt door ZecOps, dat de proof-of-concept op GitHub heeft gezet. Het gaat om een trojan die de onderzoekers NoReboot noemen. Het gaat om een tool waarmee het heropstarten van een iPhone wordt verborgen. De onderzoekers zeggen dat dat interessant is voor malwareverspreiders, omdat daardoor persistence minder snel nodig is.
Veel soorten malware verdwijnen van een telefoon nadat die opnieuw opstart; persistent malware is veel moeilijker te maken en daarmee ook zeldzamer en waardevoller. De onderzoekers spoofen het rebootproces, waardoor het erop lijkt alsof een telefoon herstart of zelfs uitstaat maar in werkelijkheid blijft werken. Het gaat duidelijk om een spoof en niet om een manipulatie van het systeem. Daarom is het geen iOS-probleem dat Apple kan oplossen.
De onderzoekers zeggen dat ze code kunnen injecteren in drie daemons die worden gebruikt bij het herstarten. Dat zijn IncallService
, SpringBoard
en tot slot Backboardd
. De eerste is de slider die gebruikers zien als ze een iPhone proberen te rebooten met de power- en volumeknop. Springboard is het proces voor de gebruikersinterface van iOS. Door daar code naartoe te sturen kan de trojan Springboard tijdelijk uitschakelen. Daardoor kunnen gebruikers geen input meer geven op het scherm.
Tot slot wordt Backboardd aangesproken. Dat laatste is niet per se nodig voor de spoof, maar wordt gebruikt zodat gebruikers eerder de powerknop loslaten. Als ze die te lang inhouden herstart de telefoon alsnog, en werkt het spoofen dus niet meer. Daarom manipuleren de onderzoekers Backboardd zodat het draaiende wieltje sneller aangeeft dat het rebootproces van start is gegaan. Tegelijkertijd kan Springboard worden herladen zodat het lijkt alsof alle processen opnieuw zijn opgestart.
De onderzoekers hebben een video gemaakt waarin te zien is hoe het proces werkt. Tijdens dat proces blijft de camera van een toestel gewoon werken. Gebruikers kunnen uiteraard ook op andere manieren hun telefoon blijven rebooten, dus is het geen waterdichte methode.