Google Pixel-fejlen giver dig mulighed for at “pakke ud” skærmbilleder fra de sidste fire år
Tilbage i 2018 fik Pixel-telefoner en indbygget screenshot-editor kaldet Markup med udgivelsen af Android 9.0 Pie. Værktøjet vises, hver gang du tager et skærmbillede, og ved at trykke på appens penikon får du adgang til værktøjer som beskæring og en række farvede tegnepenne. Dette er meget praktisk, hvis man antager, at Google Markup-værktøjet faktisk gør, hvad det siger, men den nye sårbarhed indikerer, at ændringerne foretaget af dette værktøj i virkeligheden ikke var destruktive! Pixel-skærmbilleder taget inden for de sidste fire år kan klippes eller uredigeres.
Fejlen blev opdaget af Simon Aarons og fik navnet “Acropalypse” eller mere formelt CVE-2023-21036. Der er en eksperimentel app på acropalypse.app , der kan fortryde redigering af Pixel-skærmbilleder, og den virker faktisk! Herder er også en god teknisk artikel af Aarons samarbejdspartner David Buchanan. Hovedessensen af problemet er, at Googles skærmbilledeeditor overskriver den originale skærmbilledefil med dit nye redigerede skærmbillede, men den afkorter eller komprimerer ikke den fil på nogen måde. Hvis dit redigerede skærmbillede har en mindre filstørrelse end originalen – meget let at gøre med beskæringsværktøjet – ender du med en PNG med en masse skrammel skjult for enden. Disse uønskede data består af de efterfølgende bits af dit originale skærmbillede, og faktisk kan disse data gendannes.
Det lyder som en dårlig måde at skrive et screenshot-beskæringsværktøj på, men til Googles forsvar fungerede Android 9-versionen af markup-værktøjet korrekt og beskærede den overskrevne fil. Android 10 bragte dog en masse dramatiske “Scoped Storage”-ændringer til, hvordan fillagring fungerede i Android. Det er ikke klart, hvordan eller hvorfor dette skete, men måske som en del af denne enorme bølge af filhåndteringsforpligtelser, kom en udokumenteret ændring ind i Android Frameworks filparser: frameworkets “skrive”-tilstand stoppede med at afkorte overskrevne filer, og en fejl blev oprettet i markup. Markup-værktøjet var afhængig af OS-filhåndtering, og den måde, det fungerede på, ændrede sig i en senere udgivelse, som ingen så ud til at bemærke.
proof of concept-værktøjet på acropalypse.app fungerer glimrende. Hvis du tilfældigvis har en ukorrigeret Pixel-enhed liggende, kan du beskære skærmbilledet, indlæse det i værktøjet, og du vil få de ubeskårne data tilbage. Det er ikke perfekt – du ender normalt med en dårligt beskadiget PNG med et stort tomt område og derefter et bånd af flotte farver, men du kan ret pålideligt gendanne bunden af det beskårede billede. Fejlen er blevet retteti Pixel-sikkerhedsopdateringen fra marts 2023, hvor den blev markeret som en høj sikkerhedssårbarhed. Dette har kun nogensinde påvirket Pixel-skærmbillede-editoren, som gemmer PNG’er ved at overskrive dem, og ikke Google Photos-editoren, som gemmer JPG’er ved at lave en ny kopi. Så det er normalt beskårne skærmbilleder, der er sårbare, ikke beskårne kamerabilleder, medmindre du laver noget virkelig mærkeligt som at tage et skærmbillede af dit kameraoutput.
Men blot at rette fejlen for fremtidige brugere løser ikke rigtig problemet. Der er stadig et spørgsmål om Pixel-skærmbilleder fra de sidste fire år, som er tilgængelige og muligvis fulde af skjulte data, som folk ikke var klar over, at de delte. Hvis du deler dette skærmbillede offentligt, afhænger hvorvidt skærmbilledet er et databrud eller ej, af hvem der poster det. Nogle apps, såsom Twitter, komprimerer alle uploadede filer igen, hvilket fjerner skjulte data fra dit skærmbillede. Hvis appen i stedet deler den originale fil, kan tredjeparten fjerne beskæringen af dit skærmbillede. Især er Discord blevet bekræftet til at gøre dette, og mange andre beskedapps bruger sandsynligvis også kildefilen.
Skriv et svar