Appen som är en väderapp tills den inte är det

En granskning från 9to5Mac publicerad den 17 juli fann över 60 appar i App Store som gör exakt det deras butiksposter visar, förutsatt att ni inte befinner er i Brasilien. Öppna en från en brasiliansk IP-adress och navigeringsverktyget, reseguiden eller väderwidgeten löser upp sig i en plattform för spel online.

De gömde sig inte heller i det fördolda. Brasilianska användare som gick igenom butikens listor i Navigering, Resor och Väder hade lagt märke till ett växande antal grovt gjorda poster nära toppen, många med djurikoner framställda av bildgeneratorer. Minst en av dessa nådde förstaplatsen i kategorin Väder.

Granskningen såg appen från fel land

Varför det spelar roll: kontrollen som skulle fånga detta är geografiskt fastlåst, och beteendet den skulle fånga utlöses geografiskt. Appgranskningen inspekterar inlämningen därifrån granskaren sitter. Appen inspekterar användaren och beslutar därefter. Dessa två fakta möts inte.

Det är hela mekanismen, och den är värd att säga rakt ut eftersom slutsatsen sträcker sig bortom spel. Ett godkännandemärke på en butikspost intygar att en granskare, på en plats, vid ett tillfälle, såg godtagbart beteende. Det intygar inte vad programvaran gör för en användare någon annanstans. Varje regel som upprätthålls vid granskningstillfället, i stället för löpande i fält, ärver samma blinda fläck.

Mönstret syntes i metadatan

Det lärorika med detta fall är hur läsbart bedrägeriet var utifrån. Apparna kom mestadels från utvecklarkonton med en enda publicering, med namn som tycktes härröra från Vietnam och andra länder utanför Brasilien. De delade nästan identiska integritetspolicyer. De klumpade sig kring 15 MB i storlek. Ingen av dem hade registrerade uppdateringar efter publiceringen.

Byggmetoden var offentligt dokumenterad. Ett kodarkiv innehöll instruktioner för att sätta ihop enkla, snabbt framställda appar med djurikoner, drakar, oxar, kaniner, råttor och tigrar, som fjärrstyrt kunde slussa användare till vadslagningssajter medan de visade ett oskyldigt ansikte för granskningen. Detta var ingen sofistikerad kompromettering av en leveranskedja. Det var ett recept, följt i mängd.

Myndigheten agerade före plattformarna

Slutsatsen: efterlevnadstrycket kommer från staten, inte från butiken. Den 15 juli underrättade Brasiliens justitieministerium både Apple och Google och gav dem fem arbetsdagar att besvara tre frågor: hur de upptäcker appar som döljer eller ändrar spelfunktionalitet efter godkännande, hur de kontrollerar att operatörer har federalt tillstånd, och hur de hindrar minderåriga från att nå speltjänster. Apple hade inte svarat på granskningens förfrågningar när den publicerades.

Det är andra gången i år som brasilianska myndigheter pressar Apple om spelappar, efter underrättelser om ålderskontroller i april och en regeluppdatering i maj. En plattform som redan har reviderat sin policy en gång och får samma sorts fråga igen är en plattform där det är dess upptäcktsförmåga, inte dess policy, som står under prövning.

Vad en europeisk operatör bör ta med sig

Två praktiska punkter. För det första, om ni publicerar programvara via appbutiker, framställ inte butiksgodkännandet som en efterlevnadskontroll i er egen dokumentation. Det visar att en inlämning klarade en kontroll vid ett tillfälle, och myndigheter på flera marknader visar nu offentligt att de känner skillnaden.

För det andra, om er enhetspolicy behandlar de officiella butikerna som den betrodda källa som gör oro för installation utanför butiken onödig, behöver det antagandet ett förbehåll. Förtroendet är verkligt men delvis: det filtrerar uppenbar skadlig kod väl och platsberoende beteende dåligt. I EU, där förordningen om digitala tjänster ålägger plattformar skyldigheter kring skydd av minderåriga, skulle samma döljandeteknik som gömde ett kasino bakom en väderikon dölja vad som helst annat för en granskare lika effektivt. Utgå från att butiken fångar det den kan se, och placera era egna kontroller där den inte kan.