Beveiligingsblunders bij mobiele apps en hoe deze te voorkomen. Beveiligingsproblemen bij mobiele apps lijken onzichtbaar. Echter met een beetje kennis van programmeren en een beetje priegelen vind je meer bugs en gaten in een app dan je bij voorbaat zou denken.
De beveiligingsproblemen in de Nissan Leaf EV app hebben het mogelijk gemaakt om de auto op afstand te bedienen via de zogenaamde API’s (application program interfaces).
Beveiligingsproblemen bij mobiele apps komen vaker voor dan je denkt. Maar ze zijn ook nagenoeg altijd te voorkomen. Nissan nam een maand lang de tijd om zich te verontschuldigen voor de beveiligingsproblemen rondom de mobiele app. Helaas was het zo dat de beveiligingsproblemen in de API’s van Nissan’s app indruisen tegen de meest fundamentele beveiligingsregels. Uiteindelijk hadden ze dus makkelijk voorkomen kunnen worden.
De ontwikkelaars van de app van Nissan hebben essentiële en fundamentele beveiligingsmaatregelen genegeerd voor het valideren van de identiteit van de gebruiker. Je kon op de API van de app inloggen door het VIN nummer (Vehicle Identification Number) in te voeren. Verder werd er geen authenticatie gedaan.
Het resultaat is dat bijna iedereen met een beetje kennis van programmeren en VIN nummer op afstand de systemen van de auto kon inzien en aanpassen. Daarbij is het VIN nummer zichtbaar door de voorruit van de Leaf. Een gigantische fout natuurlijk om dat als beveiliging te gebruiken.
De inbreuk op de beveiliging is dus niet alleen een programmeerfout geweest. Er is overduidelijk te weinig aandacht besteed aan de bescherming van de privacy van de app-gebruikers. Dit is dus gewoon vooral heel dom geweest om het op deze manier te laten werken.
Helaas komen beveiligingsproblemen bij mobiele apps vaker voor dan je zou denken. Om deze reden investeren Apple en Google waanzinnig veel tijd, geld en energie in de beveiliging. Hierdoor hebben de ontwikkelaars veel tools, middelen en mogelijkheden om veilige apps te bouwen.
Apple neemt de veiligheid van het platform zeer serieus. Hun drang naar veilige mobiele apps gaat zelfs zo ver, dat Apple weigerde om via een geheime backdoor de FBI toegang te geven tot de telefoon van een terrorist. Dit omdat ze daarmee de deur open zouden zetten voor andere kwaadwillenden.
Uiteindelijk hangt het allemaal van de ontwikkelaars af. Zij hebben de taak om veilige apps te bouwen. De ontwikkelaas moeten in staat zijn om de data toegankelijk te maken, te verplaatsen en uiteindelijk veilig op te slaan. Hier ligt een verantwoordelijkheid.
Er zijn drie belangrijke beveiligingsregels omtrent het bouwen van veilige mobiele apps. Deze drie regels garanderen een bijna absolute veiligheid voor de app-gebruikers. Daarnaast voorkomen ze dat je in een soortgelijke situatie als bij die van Nissan terecht komt.
Als het gaat om optimale veiligheid, moet je niet alleen de app dichttimmeren. Ook de assets die je toevoegt aan de app moet je beschermen. Alle services die geïntegreerd worden met de app moeten 100% veilig zijn!
Apps zijn verbonden met diverse gegevensbronnen en de data gaat vaak meerdere richtingen op. De verbindingen moeten wel echt veilig zijn. Dit betekent dat je duidelijk inzicht nodig hebt in de diensten en de systemen die jij integreert. Alleen met dat inzicht kun je ervoor zorgen dat de app feilloos werkt voor de eindgebruikers.
Bij het bouwen van apps moet je verantwoordelijkheid nemen om alle systemen onder de loep te nemen. Daarmee kun je potentiële beveiligingsproblemen voorkomen. Zo hebben iOS en Android ingebouwde security tools, waar je veel voordeel uit kan halen. Gebruik die dan ook.
In de race om apps zo snel mogelijk uit te kunnen brengen, kan de veiligheid in het geding raken. De controle op optimale veiligheid kan minder aandacht krijgen. Dit heeft als gevolg dat de extra systemen en services die worden geconfigureerd in de app toekomstige beveiligingsproblemen kunnen opleveren. Dit is dus het geval geweest bij de Nissan app.
Bouw mobiele apps veilig. Neem liever wat langer de tijd, maar geef je veiligheid nooit op voor snelheid. Als eenmaal het vertrouwen weg is bij je app-gebruikers door beveiligingsproblemen, win je dat maar heel moeilijk terug. Immers, vertrouwen komt te voet, maar gaat te paard.
Bedrijven hebben steeds minder controle over de gegevens die zij gebruiken. In feite bezitten ze de gegeven niet altijd zelf. Neem weer het voorbeeld van de Nissan app erbij. De Voertuig Identificatie Nummers (VIN) van de Nissan Leaf worden gebruikt in de Leaf app hack staan op de auto zelf.
Het is verstandig om niet alleen te kijken naar de data die door de app heen gebruikt wordt. Bekijk ook hoe dit in de toekomst eventueel misbruikt kan worden. Je moet overal op voorbereid zijn. Het is heel belangrijk om je veiligheid serieus te nemen. Wanneer de gebruikers ontdekken dat er geen dataveiligheid is en hun privacy niet series wordt genomen, dan ben je verder van huis!
De hierboven geschetste problemen bieden enige stof tot nadenken voor alle app-ontwikkelaars.
Wil je zelf meer weten over de beveiliging van je app? Hier zijn 10 technische tips die kunnen helpen:
Ik help je graag met al je vragen. Je mag me altijd even bellen of mailen.