Sikkerhetsforskeren Sabri Haddouche har offentliggjort CSS- og HTML-kode som får WebKit-basert programvare på iOS og MacOS til å gjøre en umiddelbar omstart eller henge.
Koden inkluderer den eksperimentelle CSS-verdien -webkit-backdrop-filter og en flere tusen nøstede div-elementer som alle har denne CSS-verdien.
How to force restart any iOS device with just CSS? ?
Source: https://t.co/Ib6dBDUOhn
IF YOU WANT TO TRY (DON’T BLAME ME IF YOU CLICK) : https://t.co/4Ql8uDYvY3
— Sabri (@pwnsdx) 15. september 2018
Også per epost
Til Bleeping Computer sier Haddouche at koden raskt fører til at alle grafikkressursene til den berørte enheter blir brukt opp. Fordi angrepet ikke krever JavaScript, vil det også fungere i WebKit-baserte epostklienter, slik som Mail-appen.
I iOS er alle nettlesere berørt, siden også nettlesere fra alle andre leverandører enn Apple er nødt til å være basert på den innebygde WebKit-motoren i iOS. I dette operativsystemet fører angrepet enten til en «kernel panic» som før enheten til å starte på nytt, eller en «respring», altså en omstart av SpringBoard-brukergrensesnittet. En video av angrepet kan sees her.
Med den koden Haddouche har offentliggjort, vil angrepet bare få programvare som Mail og Safari til å henge i et sekund, før Mac-en blir merkbart tregere. Men den krasjer ikke og angrepet kan stoppes ved å lukke den aktuelle fanen.
Full stopp
Men Haddouche forteller til Bleeping Computer at han har utviklet en variant av angrepskoden, som også inkluderer noe JavaScript. Den vil få MacOS til å henge fullstendig.
Interessant nok vil det ikke hjelpe med en omstart, da dette bare fører til at den samme siden lastes på nytt og at og Mac-en på nytt stopper opp.
Here is why I did not advertised that it was also working on macOS… pic.twitter.com/zjtFZsHyvv
— Sabri (@pwnsdx) 17. september 2018
Mye tyder også på at også WatchOS er berørt.
Andre nettlesere
Det er ikke bare WebKit som støtter -webkit-backdrop-filter. Det gjør også Microsofts Edge-nettleser. Den greier ikke å vise siden som Haddouche har publisert, men verken krasjer eller henger. I stedet vises en feilmelding.
Demosiden får derimot enkelte utgaver av Internet Explorer til å krasje. Denne gamle nettleseren støtter ikke den aktuelle CSS-regelen, men Haddouche antar at nøstingen av div-elementene som blir for mye for IE å håndtere.
Chrome har innebygd støtte for backdrop-filter-egenskapen, men den er foreløpig deaktivert som standard og -webkit-prefiksen støttes uansett ikke.
Men det er ikke stort mer enn en uke siden Haddouche publiserte kode som får Chrome til å stoppe helt opp.