OnePlus-telefoner som kjører OxygenOS lekker telefonens IMEI hver gang telefonen ser etter en oppdatering. Telefonen bruker en usikker HTTP POST-forespørsel.
De En pluss en var en av de første Android-smarttelefonene som beviste at forbrukere ikke trengte å betale ut $600+ for en flaggskipopplevelse. Med andre ord, selv til et lavere prispunkt bør du aldri slå seg til ro for å kjøpe et dårligere produkt.
Jeg kan fortsatt huske hypen rundt spesifikasjonsavsløringen for OnePlus One - selskapet utnyttet fanatismen som ble vist av Android-entusiaster når det kom til lekkasjer. OnePlus bestemte seg for å sakte avsløre spesifikasjonene til telefonen én etter én i noen uker før den offisielle lanseringen – og det fungerte.
På det tidspunktet saliverte vi over telefonens bruk av Snapdragon 801 med en 5,5" 1080p-skjerm, samt det svært fristende samarbeidet med den nye oppstarten Cyanogen Inc. (hvorav Android-entusiaster var veldig begeistret på grunn av populariteten til CyanogenMod). Og så slapp OnePlus den største bomben på oss alle – startprisen på $299. Bare én annen telefon hadde virkelig overrasket meg for kostnadsytelsen - Nexus 5 - og
Men så laget OnePlus en rekke avgjørelser som, selv om noen var økonomisk forsvarlige, drepte noe momentum for merkevaren blant Android-entusiaster. Først var det kontroversen rundt invitasjonssystemet, så kom de kontroversielle annonsene og faller ut med Cyanogen, deretter selskapet mottok litt hat for OnePlus 2 slipp som i manges øyne klarte ikke å leve opp til sin "Flagship Killer"-moniker, og endelig der er det rødhårede stebarnet OnePlus X smarttelefon som nettopp har mottatt Android Marshmallow en noen dager siden.
To skritt frem, ett skritt tilbake
Til OnePlus sin ære kunne selskapet gjenopplive hypen rundt sine produkter med OnePlus 3. Denne gangen sørget OnePlus ikke bare for å ta opp mange av klagene anmeldere og brukere hadde mot OnePlus 2, men gikk til og med utover i adressering av klager på tidlig vurdering og frigjør kildekoden for tilpassede ROM-utviklere. Nok en gang har OnePlus laget et produkt som er overbevisende nok til å få meg til å revurdere å vente på utgivelsen av neste Nexus-telefon, og få flere av våre ansatte til å kjøpe en (eller to) for dem selv. Men det er ett problem som noen av våre ansatte er forsiktige med - programvaren. Vi er ganske delte når det gjelder hvordan vi bruker telefonene våre - noen av oss lever på den blødende kanten og flasher tilpassede ROM-er som sultanxdas uoffisielle Cyanogenmod 13 for OnePlus 3, mens andre bare kjører lagerfastvaren på enheten deres. Blant våre ansatte er det en viss uenighet om kvaliteten på de nylig utgitte OxygenOS 3.5 fellesskapsbygging (som vi vil utforske i en fremtidig artikkel), men det er ett problem som vi alle er enige om: fullstendig forvirring over det faktum at OnePlus bruker HTTP til å overføre IMEI mens du ser etter programvareoppdateringer.
Ja, du leste riktig. Din IMEI, nummeret som identifiserer din telefon unikt, er sendt ukryptert til OnePlus sine servere når telefonen ser etter en oppdatering (med eller uten brukerinndata). Dette betyr at alle som lytter til nettverkstrafikken i nettverket ditt (eller uten at du vet det mens du surfer på fora mens du er koblet til et offentlig hotspot) kan ta tak i IMEI-en din hvis telefonen din (eller du) bestemmer at det er på tide å se etter en Oppdater.
XDA Portal-teammedlem og tidligere forummoderator, b1nny, oppdaget problemet av avlytte trafikken til enheten hans ved hjelp av mitmproxy og postet om det på OnePlus-forumene tilbake 4. juli. Etter å ha gravd litt mer i hva som foregikk da OnePlus 3 søkte etter en oppdatering, fant b1nny ut at OnePlus krever ikke en gyldig IMEI å tilby en oppdatering til brukeren. For å bevise dette brukte b1nny a Chrome-appen kalt Postman å sende en HTTP POST-forespørsel til OnePlus sin oppdateringsserver og redigerte IMEI-en hans med søppeldata. Serveren returnerte fortsatt oppdateringspakken som forventet. b1nny gjorde andre oppdagelser angående OTA-prosessen (som det faktum at oppdateringsserverne deles med Oppo), men den mest bekymringsfulle delen var det faktum at denne unike enhetsidentifikatoren ble overført HTTP.
Ingen reparasjon i sikte ennå
Etter å ha oppdaget sikkerhetsproblemet, gjorde b1nny sin due diligence og forsøkte å kontakte begge OnePlus forummoderatorer og kundebehandlere som kanskje kan videresende saken oppover i kjeden til de aktuelle teamene. En moderator hevdet at det utstedte ville bli gitt videre; han var imidlertid ikke i stand til å motta noen bekreftelse på at problemet ble undersøkt. Da problemet først ble gjort oppmerksom på Redditors på /r/Android-subreddit, var mange bekymret, men var sikre på at problemet ville bli raskt løst. På XDA-portalen trodde vi også at den usikre HTTP POST-metoden som ble brukt for å pinge OTA-serveren for en oppdatering, til slutt ville bli fikset. Den første oppdagelsen av problemet var på OxygenOS versjon 3.2.1 av operativsystemet (selv om det kunne ha eksistert i tidligere versjoner som vel), men b1nny bekreftet med oss i går at problemet fortsatt vedvarer på den siste stabile versjonen av Oxygen OS: versjon 3.2.4.
POST:User-agent: UA/ONEPLUS A3003/XXX/OnePlus3Oxygen_16.A.13_GLO_013_1608061823/V1.0.0_20150407
Content-Type: text/plain; charset=UTF-8
Host: i.ota.coloros.com
Connection: Keep-Alive
Accept-Encoding: gzip
Content-Length: 188
Raw
{"version":"1","mobile":"ONEPLUS A3003","ota_version":"OnePlus3Oxygen_16.A.13_GLO_013_1608061823","imei":"XXX","mode":"0","type":"1","language":"en","beta":"0","isOnePlus":"1"}
ANSWER:
Server: nginx
Date: Wed, 24 Aug 2016 18:20:24 GMT
Content-Type: application/json; charset=UTF-8
Connection: keep-alive
X-Server-ID: hz0231
No content
Men med den nylige utgivelsen av OxygenOS 3.5-fellesskapsbygget var vi igjen nysgjerrige på å se om problemet vedvarer. Vi tok kontakt med OnePlus angående dette problemet og ble fortalt av en talsperson fra selskapet at problemet faktisk hadde blitt rettet. Imidlertid fikk vi et av portalmedlemmene våre til å flashe den siste fellesskapsbyggingen og bruke mitmproxy for å avskjære OnePlus 3s nettverkstrafikk, og til vår overraskelse oppdaget vi at OxygenOS sendte fortsatt en IMEI i HTTP POST-forespørselen til oppdateringsserveren.
POST http://i.ota.coloros.com/post/Query_Update HTTP/1.1.User-Agent: com.oneplus.opbackup/1.3.0
Cache-Control: no-cache
Content-Type: application/json; charset=utf-8
Host: i.ota.coloros.com
Connection: Keep-Alive
Accept-Encoding: gzip
Content-Length: 188
Raw
{"version":"1","mobile":"ONEPLUS A3000","ota_version":"OnePlus3Oxygen_16.X.01_GLO_001_1608221857","imei":"XXX","mode":"0","type":"0","language":"en","beta":"0","isOnePlus":"1"}
Dette, til tross for den tilsynelatende bekreftelsen på at problemet ble løst, bekymrer oss i XDA dypt. Det gir ikke mening for OnePlus å bruke HTTP til å sende en forespørsel til serverne sine, hvis alt de vil er å bruke vår IMEI til data mining formål, så kan de sannsynligvis gjøre det på en mye sikrere måte metode.
IMEI-lekkasjer og deg
Det er ingenting vesentlig farlig om IMEI-en din lekker over et offentlig nettverk. Selv om den identifiserer enheten din unikt, er det andre unike identifikatorer som kan brukes med ondsinnethet. Apper kan be om tilgang for å se enhetens IMEI ganske enkelt. Så hva er problemet? Avhengig av hvor du bor, kan IMEI-en din brukes til å spore deg av myndighetene eller en hacker som tilsynelatende er interessert nok i deg. Men det er egentlig ikke bekymringer for den gjennomsnittlige brukeren.
Det største potensielle problemet kan være ulovlig bruk av IMEI-en din: inkludert, men ikke begrenset til, svarteliste IMEI-en din eller kloning av IMEI-en som skal brukes på en svartebørstelefon. Hvis begge scenariene inntraff, kan det være en stor ulempe å grave deg ut av dette hullet. Et annet potensielt problem er applikasjoner som fortsatt bruker IMEI-en din som identifikator. Whatsapp, for eksempel, pleide å bruke en MD5-hashed, omvendt versjon av IMEI-en som passordet til kontoen din. Etter å ha sett rundt på nettet hevder noen lyssky nettsteder å kunne hacke Whatsapp-kontoer ved å bruke et telefonnummer og IMEI, men jeg kan ikke bekrefte dem.
Fortsatt, det er viktig å beskytte all informasjon som unikt identifiserer deg eller enhetene dine. Hvis personvernspørsmål er viktige for deg, bør denne praksisen fra OnePlus være bekymrende. Vi håper at denne artikkelen tjener til å informere deg om mulige sikkerhetsimplikasjoner bak dette praksis, og å bringe denne situasjonen til OnePlus sin oppmerksomhet (en gang til), slik at den kan fikses raskt.