- Redaktionen
- Skribent ●
UPPDATERAD. Redaktör Jakob Nilssons vecka med en Samsung Galaxy Alpha fortsätter. Idag försöker han synkronisera sina kontakter och kalendrar – men det är inte alltid helt enkelt att byta från ett ekosystem till ett annat.
…det är inte särskilt smidigt, men det känns mestadels som Apples fel som borde bygga in bättre exportfunktioner i sin molntjänst. Jag hade velat se en funktion i IOS, eller åtminstone på webbplatsen för Icloud för att exportera innehållet.
Varför inte bara sync iCloud på en dator med "Contacts" appen, exportera dem därifrån?
Att förlita sig på iCloud på Android känns lite som att svära i kyrkan i dagsläget även om Apple verkar öppna upp iCloud något (i varje fall till Windows). Hur som haver, genom "Contacts" på OSX kan du synka iCloud > Localt och sedan migrera över till ett Google-konto.
Eller har jag missat något?
Varför inte bara sync iCloud på en dator med "Contacts" appen, exportera dem därifrån?
Att förlita sig på iCloud på Android känns lite som att svära i kyrkan i dagsläget även om Apple verkar öppna upp iCloud något (i varje fall till Windows). Hur som haver, genom "Contacts" på OSX kan du synka iCloud > Localt och sedan migrera över till ett Google-konto.
Eller har jag missat något?
Ja det var ju det jag gjorde, eller snarare så exporterade jag kontakterna från OS X som ett Vcard och lade in det i telefonen. Problemet jag ser är för de stackare som inte har tillgång till en dator, utan är helt mobila genom Iphone eller Ipad.
Jag vet inte hur noga appar från Google Play kontrolleras, och har ingen koll på appens utvecklare. Jag vågar helt enkelt inte fortsätta, och bestämmer mig för att strunta i synkronisering och nöja mig med att göra en regelrätt migration.
Google kontrollerar inte appar som distribueras genom Play. Anledningen är väldigt enkel, det går inte göra kontrollera om en app är god eller ond. Det är trivialt att bygga en app som beter sig på ett sätt när den godkänns och sedan helt ändrar beteende när den väl kommer ut till användare. Det enda sättet som man kan göra en kontroll som ens är i närheten av att fånga malware är att ta emot den i form av källkod, göra en fullständig audit och att man sedan bygger binären som går ut till användare. Det finns flera anledningar till varför detta aldrig kommer att hända; den vecka som det brukar ta att få ut uppdateringar på App Store idag är ingenting i jämförelse med hur lång tid det skulle ta.
Så Google är egentligen bara ärlig. Du kan inte lita på en app, oavsett om det är från Play eller App Store. Den kan spionera på dig, utnyttja lokala exploits och annat hur mycket den vill. Varken Apple eller Google kan stoppa detta genom någon form av kontrollprocess. Använd bara program som du litar på, allt annat är bara spel för gallerierna.
Det enda som Apple kan åstadkomma genom att granska varje enskild uppladdning till App Store är att filtrera bort appar som kraschar direkt, har andra uppenbara buggar eller är politiskt icke önskvärda.
Hej!
Några felaktigheter som smugit sig in i tråden.
1. iCloud använder öppna standarder för att kommunicera. I fallen kontakter och kalender används CardDAV och CalDAV. Hittar ni klienter för dessa protokoll är saken biff. Använder själv två program från Marten Gajda för att synka en Andriod-telefon mot iCloud.
2. Apple gör mer för att undersöka innehållet i en app och jobbar aktivt med att ta bort appar som bryter mot avtalet. Det inkluderar spionerande samt att varna dig om någon app vill kunna göra mer.
I Andriod får man reda på alla saker en app vill kunna göra vid installation och man måste godkänna allt eller inget. I iOS kan du vara selektiv i efterhand och endast ge tillgång till det som är ok för dig.
Bättre system tycker jag.
2. Apple gör mer för att undersöka innehållet i en app och jobbar aktivt med att ta bort appar som bryter mot avtalet. Det inkluderar spionerande samt att varna dig om någon app vill kunna göra mer.
I Andriod får man reda på alla saker en app vill kunna göra vid installation och man måste godkänna allt eller inget. I iOS kan du vara selektiv i efterhand och endast ge tillgång till det som är ok för dig.
Bättre system tycker jag.
Hur undersöker Apple innehållet i en app? De har inte tillgång till källkoden. De kan inte kolla vad den gör. Det är en teknisk omöjlighet för Apple att på ett par minuter kolla om en app gör något medvetet illvilligt.
Det enda som faktiskt kan skydda användare är sandboxing. Att appen inte får tillgång till information utan användarens vetskap. Men det är inte praktiskt att begränsa all funktionalitet, det blir till slut ohanterligt att använda och kan medföra starka begränsningar över vilka appar som ens kan byggas.
Hur undersöker Apple innehållet i en app? De har inte tillgång till källkoden. De kan inte kolla vad den gör. Det är en teknisk omöjlighet för Apple att på ett par minuter kolla om en app gör något medvetet illvilligt.
Det enda som faktiskt kan skydda användare är sandboxing. Att appen inte får tillgång till information utan användarens vetskap. Men det är inte praktiskt att begränsa all funktionalitet, det blir till slut ohanterligt att använda och kan medföra starka begränsningar över vilka appar som ens kan byggas.
Det är omöjligt för oss att exakt veta hur det går till. Såvida du inte jobbar med detta på Apple.
Men du kan ju läsa Apples Guidelines, de har varit rätt hårda genom åren.
Det är omöjligt för oss att exakt veta hur det går till. Såvida du inte jobbar med detta på Apple.
Men du kan ju läsa Apples Guidelines, de har varit rätt hårda genom åren.
Här är ett exempel på hur enkelt det är att skriva en app som gör en sak när Apple testar det, och något annat när det kommer ut till användare. Ta ett datum någon gång i framtiden, efter att Apple har kontrollerat och godkänt appen. När väl dagens datum har passerat den punkten tar den en annan code path. Svårare än så är det inte; och det är bara en attackvektor, det finns många andra sätt att göra precis samma sak.
NSDate *now = [NSDate date]; NSDateComponents *comps = [[NSDateComponents alloc] init]; [comps setYear: someYear]; [comps setMonth: someMonth]; [comps setDay: someDay]; NSDate *future = [[NSCalendar currentCalendar] dateFromComponents: comps]; if ([now compare: future] == NSOrderedDescending) { [self doSomethingEvil]; } else { [self doSomethingGood]; }
Vi kan säga så här, om Apple har en metod för att med god precision avgöra om en app gör något medvetet illvilligt så har någon på Apple ett turingpris att hämta.
Här är ett exempel på hur enkelt det är att skriva en app som gör en sak när Apple testar det, och något annat när det kommer ut till användare. Ta ett datum någon gång i framtiden, efter att Apple har kontrollerat och godkänt appen. När väl dagens datum har passerat den punkten tar den en annan code path. Svårare än så är det inte; och det är bara en attackvektor, det finns många andra sätt att göra precis samma sak.
NSDate *now = [NSDate date]; NSDateComponents *comps = [[NSDateComponents alloc] init]; [comps setYear: someYear]; [comps setMonth: someMonth]; [comps setDay: someDay]; NSDate *future = [[NSCalendar currentCalendar] dateFromComponents: comps]; if ([now compare: future] == NSOrderedDescending) { [self doSomethingEvil]; } else { [self doSomethingGood]; }
Vi kan säga så här, om Apple har en metod för att med god precision avgöra om en app gör något medvetet illvilligt så har någon på Apple ett turingpris att hämta.
Perfekt!
Då är det bara att knåpa ihop din app och bestämma hur du ska blåsa alla iPhone-användare på pengar och skicka in till App Store. Dårfinkarna som kollar apparna kommer ju inte ha någon koll ändå. Eller?
Här är ett exempel på hur enkelt det är att skriva en app som gör en sak när Apple testar det, och något annat när det kommer ut till användare. Ta ett datum någon gång i framtiden, efter att Apple har kontrollerat och godkänt appen. När väl dagens datum har passerat den punkten tar den en annan code path. Svårare än så är det inte; och det är bara en attackvektor, det finns många andra sätt att göra precis samma sak.
NSDate *now = [NSDate date]; NSDateComponents *comps = [[NSDateComponents alloc] init]; [comps setYear: someYear]; [comps setMonth: someMonth]; [comps setDay: someDay]; NSDate *future = [[NSCalendar currentCalendar] dateFromComponents: comps]; if ([now compare: future] == NSOrderedDescending) { [self doSomethingEvil]; } else { [self doSomethingGood]; }
Vi kan säga så här, om Apple har en metod för att med god precision avgöra om en app gör något medvetet illvilligt så har någon på Apple ett turingpris att hämta.
Det där är trivialt att upptäcka, det är ju bara att ställa fram klockan på enheten till ett framtida datum.
Det där är trivialt att upptäcka, det är ju bara att ställa fram klockan på enheten till ett framtida datum.
Som jag sa är det ett exempel. Man skulle t. ex. lika gärna kunna styra det med en server.
Så länge Apple inte detaljgranskar källkoden samt bygger den app som går ut till användare så tjänar Apples rigorösa kontroll inte till något annat än att styra vilka appar som iOS-användare ska få använda. Det ger noll skydd mot malware.
Vad som däremot skyddar mot malware är sandboxing och annan teknik som begränsar appens möjligheter att göra skada.
Perfekt!
Då är det bara att knåpa ihop din app och bestämma hur du ska blåsa alla iPhone-användare på pengar och skicka in till App Store. Dårfinkarna som kollar apparna kommer ju inte ha någon koll ändå. Eller?
Du menar något i stil med Paths app som laddade upp iOS-användares adressbok till sina servrar. Bra att ha eller något. Jag tycker att detta i högsta grad klassas som en typ av malware. Men den gick glatt igenom Apples kontroll.
Du menar något i stil med Paths app som laddade upp iOS-användares adressbok till sina servrar. Bra att ha eller något. Jag tycker att detta i högsta grad klassas som en typ av malware. Men den gick glatt igenom Apples kontroll.
Det där är en snart 3 år gamla artikel eller läser jag fel?
Det där är en snart 3 år gamla artikel eller läser jag fel?
Jag har inte sett något som tyder på att app review sedan dess har börjat köra packet inspection av nätverkstrafiken för att upptäcka den typen spionerande, framför allt inte om den går via TLS. Apple har ingen möjliget att upptäcka sånt genom att testköra appen. De kan se om den startar, att den utseendemässigt ser ok ut, att den går att använda; men de har ingen som helst möjlighet att utan källkoden kontrollera exakt vad appen gör.
Vad som däremot hjälper är om iOS varnar användaren att appen vill komma åt dina kontakter. Då kan man göra ett val, ska man illåta att appen får tillgång till informationen eller inte. Litar jag på att den här appen hanterar informationen väl.
Jag har inte sett något som tyder på att app review sedan dess har börjat köra packet inspection av nätverkstrafiken för att upptäcka den typen spionerande, framför allt inte om den går via TLS.
Vad som däremot hjälper är om iOS varnar användaren att appen vill komma åt dina kontakter. Då kan man göra ett val, ska man illåta att appen får tillgång till informationen eller inte. Litar jag på att den här appen hanterar informationen väl.
Sant. Men att se vad appen vill göra är en vital skillnad. Och att även kunna stänga av åtkomsten i framtiden är även det.
Skälet till att sandboxing finns ör just att det i praktiken ör omöjligt att i förväg upptäcka all skadlig kod. Program gör saker. Huruvida det är bra eller dåliga saker beror enbart på om en mänsklig värdering klassar det som önskvärt eller icke önskvärt beteende. Både buggar och malware gör icke önskvärda saker och den enda skillnaden ligger i upphovsmannens intentioner, dvs. Huruvida hen avsåg eller inte avsåg att uppnå beteendet.
Utan sandboxing så är det som att ge någon din husnyckel och hoppas på att hen inte tar sig för något skadligt. Med sandboxing ger du sophämtarna nyckel till soprummet, trädgårdsmästaren nyckel till trädgårdsskjulet, och bara dina familjemedlemmar hela nyckelknippan.
Tror man att Apples förfarande utgör någon garanti mot skadlig kod så lever man i en farlig villfarelse. Därmed inte sagt att det saknar värde, tvärtom, det förhindrar säkert många malware genom att bara fungera som en tröskel, men det utgör absolut ingen som helst garanti.
Utifrån mitt perspektiv som användare, utan större insyn i hur deras screening fungerar och utan kunskap i varken Cocoa/Swift eller vad som nu krävs, så tycker jag att det verkar fungera bra som det är nu.
De som skapar mjukvara för att begå oegentligheter, oavsett plattform, riktar ju så klart sina kanoner mot den största marknaden. På datorsidan är det ju Windows-plattformen och på smartdevice-sidan är det väl jämnt skägg mellan iOS och Android. Det tar hus i helvete varje gång något i stil med Path-app händer och då så få iOS-appar uppmärksammas med skadlig kod så, vilket hittas direkt på ena eller andra sättet, så måste ju upplägget fungera hyfsat bra.
Visst verkar det fungera bra, men samtidigt måste man inse att det är just de okända skadligheterna som är de värsta. Med andra ord vet man inte säkert om det finns en massa skadligheter, som inte upptäckts.
Ta till exempel den nyligen upptäckta säkerhetsbristen i Bash, ett otroligt spritt program, långt mycket mer genomlyst än någon av apparna i AppStore, ändå så upptäcks såna grejer. Path upptäcktes ju för att det var så lätt att upptäcka, men hade tillverkaren haft för avsikt att maskera det hade det kunnat gå oupptäckt långt mycket längre, kanske för alltid.
Ska man vara riktigt säker måste man vända på antagandet, och utgå från att alla program är osäkra och därför vara kollosalt restriktiv med vad man installerar och vilka privilegier appen har.
Visst, som privatperson ska man ju inte drabbas av paranoia och tro det värsta hela tiden, men kanske ska man inte heller tro att alla programmakare är Moder Theresa.
Visst verkar det fungera bra, men samtidigt måste man inse att det är just de okända skadligheterna som är de värsta. Med andra ord vet man inte säkert om det finns en massa skadligheter, som inte upptäckts.
Ta till exempel den nyligen upptäckta säkerhetsbristen i Bash, ett otroligt spritt program, långt mycket mer genomlyst än någon av apparna i AppStore, ändå så upptäcks såna grejer. Path upptäcktes ju för att det var så lätt att upptäcka, men hade tillverkaren haft för avsikt att maskera det hade det kunnat gå oupptäckt långt mycket längre, kanske för alltid.
Ska man vara riktigt säker måste man vända på antagandet, och utgå från att alla program är osäkra och därför vara kollosalt restriktiv med vad man installerar och vilka privilegier appen har.
Visst, som privatperson ska man ju inte drabbas av paranoia och tro det värsta hela tiden, men kanske ska man inte heller tro att alla programmakare är Moder Theresa.
Det är nog som du säger, sandlådefilosofin som ger det största bidraget till säkerheten. App stores bidrag är nog mest att det bara finns en källa till appar och även om Apple inte kan granska allt så finns det någon form av "kvalitetsstämpel" som Apple ställer sig bakom vilket underlättar för gemene man.