ios beveiliging Door Antoine v.d. Lee

Maat: px
Weergave met pagina beginnen:

Download "ios beveiliging Door Antoine v.d. Lee"

Transcriptie

1 ios beveiliging Door Antoine v.d. Lee Afstudeerproject domein COMMUNICATION and MULTIMEDIA DESIGN

2 Colofon Auteur Antoine van der Lee Studentnummer adres Opleidingsinstituut Hogeschool van Amsterdam Major Communication & Multimedia Design Afstudeerjaar 2012 Stagebedrijf Mirabeau Begeleider school Justus Sturkenboom 2e lezer Marjolijn Ruyg Begeleider Mirabeau Simon Heerschap 2 IOS BEVEILIGING 2012 Afstudeerproject Gemaakt door Antoine van der Lee Versie: 1.0 Deze scriptie is gelicenseerd onder een Creative Commons Naamsvermelding 3.0 Nederland licentie,

3 Voorwoord Voordat u begint met het lezen van dit document wil ik mijzelf even voorstellen. Ik ben Antoine van der Lee en studeer de opleiding Communication and Multimedia Design aan de hogeschool van Amsterdam. Ik heb ervaring in het ontwikkelen van Windows Phone 7 apps en websites en heb oog voor detail. Bij een project houd ik mij dan ook niet alleen bezig met programmeren, maar ook met design, interactie en testen. In dit document richt ik mij op de beveiliging van ios. Ik wens u veel plezier met lezen! Antoine van der Lee Student Communication and Multimedia Design Dit document is geschreven voor de lezer met weinig programmeerkennis. Diverse begrippen zijn cursief in het groen gedrukt en terug te vinden in een begrippenlijst achterin dit verslag. Ook zijn grote stukken code uit dit onderzoek weggelaten of in de bijlage gestopt. Dit is tevens om het verslag leesbaarder te maken. Bronnen en bijlages worden gemarkeerd met een footnote en zijn onderop de pagina terug te vinden. Achterin dit verslag staat een overzicht met alle gebruikte bronnen, begrippen en bijlages. De digitale versie van dit document biedt de mogelijkheid om op verschillende links te klikken. Zo verwijzen begrippen naar hun omschrijving, bronnen naar hun bronvermelding en is de inhoudsopgave interactief. Dit document is bedoeld voor de docenten en studenten van de Hogeschool van Amsterdam, maar ook voor medewerkers van Mirabeau. Het vormt een verslag van mijn bevindingen bij het bouwen van een beveiligd framework voor ios. 3

4 Inhoudsopgave 4 Colofon... 2 Voorwoord... 3 Inhoudsopgave... 4 Samenvatting... 6 Onderzoek... 6 Prototype... 6 Conclusie... 7 Inleiding... 8 Aanleiding... 8 Probleemstelling... 8 Hoofd & deelvragen... 9 Doelstellingen Oplevering Mirabeau De beveiligingsrisico's binnen het ios platform Beveiligingslekken uit het verleden PayPal WhatsApp Skype De mogelijkheden om data uit een applicatie te halen Jailbreaking Het injecteren van code De standaard beveiliging van Apple Het uitvoeren van code in een draaiende applicatie Het monitoren van dataverkeer Conclusie Het beveiligen van de applicatie tegen de vastgestelde beveiligingsrisico's Relevante beveiligingsrisico's voor mijn eindproduct Pincodebeveiliging Rabobank bankieren ING Bankieren AEGON Saldo check Het tegengaan van een brute-force aanval Het versleutelen van belangrijke data.. 30 Common Crypto Het aanpassen van functies en variabelen Het tegengaan van code injecties Het compliceren van code Het detecteren van een jailbreak Het controleren van een dataverbinding Overige beveiligingsmaatregelen Het verwijderen van bestanden Het verwijderen van database data.38 Het invoeren van een pincode Applicatie screenshots Conclusie Het verifieren van de beveiliging Het controleren van de beveiliging door Apple Bedrijven met een specialisatie op het gebied van beveiliging Conclusie Het toepassen van de gevonden beveiligingoplossingen op het prototype Het implementeren van een wachtwoord-beveiliging Het versleutelings-proces Het inbouwen van een dataversleuteling Het blokkeren van debuggers Het tegengaan van code injecties Het compliceren van code Het detecteren van een jailbreak Het controleren van een dataverbinding Het verwijderen van bestanden en database data... 55

5 Het managen van de keyboard cache.56 Het managen van de automatisch gemaakte applicatie screenshots Conclusie De samenhang van risico s binnen de beveiliging van een applicatie Het verifiëren van de beveiliging Een compleet beveiligde applicatie? Begrippen, Bronnen en Bijlages Begrippen Bronnen Websites Boeken Bijlages

6 Samenvatting Dit verslag gaat over de beveiliging van applicaties op het ios platform. Ik breng verslag van mijn ondervindingen bij het onderzoek naar de beveiligingsrisico s binnen het platform en breng vervolgens oplossingen voor deze problemen in beeld. Verder maak ik een terugkoppeling naar het uiteindelijke prototype en omschrijf ik op welke manier de beveiliging van een applicatie geverifieerd kan worden. Onderzoek Om een applicatie goed te kunnen beveiligen is het belangrijk om een overzicht te creëren van de beveiligingsrisico s die aanwezig zijn. Door te kijken naar voorgekomen beveiligingslekken uit het verleden kan er geleerd worden van de fouten van anderen. Het zou tenslotte behoorlijk stom zijn om te ondervinden dat een beveiligingslek al eens eerder plaats heeft gevonden. Vervolgens ben ik zelf de hacker gaan spelen en heb ik op verschillende manieren geprobeerd data uit een applicatie te halen. Prototype Voor het prototype is er vastgesteld dat het een aantal veel voorkomende functionaliteiten dient te bevatten. Zo is het mogelijk om in te loggen en wordt er data verstuurd naar een externe server. Hierbij is de data beveiligd en wordt de verbinding gecontroleerd op een mogelijke man-in-the-middle aanval. Verder slaat de applicatie een aantal types van gebruikersdata veilig op binnen de applicatie. Deze types zijn afbeeldingen, teksten en cijfers waarmee de meeste scenario s voor een toekomstig project zijn ingedekt. Dit alles is zo goed mogelijk beveiligd aan de hand van de resultaten uit mijn onderzoek. Uiteindelijk kan dit prototype in een korte tijd worden omgebouwd om als basis te dienen voor een toekomstig project. 6 Nadat alle beveiligingsrisico s op een rijtje waren gezet ben ik op zoek gegaan naar oplossingen zodat deze risico s uitgesloten kunnen worden. Om dit uiteindelijk te kunnen verifiëren heb ik met verschillende bedrijven contact gezocht en gekeken naar de mogelijkheden. Als laatste onderdeel heb ik een planning gecreëerd waarmee ik in de beschikbare tijd een zo goed mogelijk beveiligd framework kon realiseren.

7 Conclusie Om een applicatie voldoende te beveiligen dient er rekening gehouden te worden met meerdere beveiligingsrisico s. Het implementeren van een bepaalde beveiliging kan zomaar weinig voorstellen als een andere beveiliging wordt overgeslagen. Het verifiëren van applicaties is een dure investering. Voor mij als student was dit onrealistisch en dus niet te bewerkstellen. De kosten voor een professionele verificatie lopen al snel in de duizenden euro s. Verder lijkt het onmogelijk om een applicatie compleet te beveiligen, maar is het enkel mogelijk om het een hacker zo moeilijk mogelijk te maken. Met genoeg tijd en inspanning zal er altijd een manier te vinden zijn om bij de belangrijke data te komen. 7

8 Inleiding Aanleiding De afgelopen maanden ben ik in een nieuwe wereld beland. Waar ik mij eerst voornamelijk bezig hield met het maken van websites houd ik mij nu dagelijks bezig met het maken van mobiele applicaties. In combinatie met mijn interesse in Apple en ios heb ik mijn afstudeerproject gericht op het ontwikkelen van een applicatie voor de iphone. Voor mij ligt hier de uitdaging om te onderzoeken welke risico s er binnen het ios platform bestaan. Door vervolgens voor deze risico s de oplossingen in kaart te brengen ga ik proberen een zo goed mogelijk beveiligd framework te realiseren. Mijn opdracht doe ik in naam van Mirabeau, het bedrijf waarbij ik sinds afgelopen september al met veel plezier stage loop. In overleg met Mirabeau is er gekozen voor een beveiligd framework voor ios. Het framework zal als basis gaan dienen voor toekomstige projecten waarbij het hoofdzaak is om belangrijke data te beveiligen. 8 Probleemstelling Mobiele telefoons worden steeds slimmer en belangrijker. Uit onderzoek van Telecompaper bleek onlangs nog dat ruim de helft van de Nederlanders (52%) over een smartphone beschikt 1. Met veel verschillende applicaties groeit ook de persoonlijke data op een smartphone en daarmee de vraag naar beveiliging. Het is tenslotte niet de bedoeling dat persoonlijke data simpel te achterhalen is. Een voorbeeld zijn bankier applicaties. Zodra de beveiliging niet op orde is zou het zomaar zo kunnen zijn dat iemand geld kan overmaken met de rekening van een ander. 1 (Telecompaper)

9 Hoofd & deelvragen HOOFDVRAAG Hoe kan ik mijn ios applicatie voldoende beveiligen voor het uitbrengen in de App Store? DEELVRAGEN Welke beveiligingsrisico s spelen er op het ios platform? Welke beveiligingslekken zijn er in het verleden bij andere applicaties geconstateerd? Welke mogelijkheden bestaan er om gegevens uit een applicatie te halen? Hoe kan ik mijn applicatie tegen deze vastgestelde beveiligingsrisico s beveiligen? Hoe verifieer ik dat mijn applicatie voldoende beveiligd is? Worden er door Apple tests uitgevoerd om de beveiliging van een applicatie te controleren? Zijn er andere externe partijen welke gespecialiseerd zijn in de beveiliging van applicaties? Hoe pas ik deze kennis toe op de realisatie van mijn applicatie? Welke oplossingen hebben invloed op de structuur van de applicatie? Welke oplossingen zijn er binnen de gestelde tijd te realiseren? 9

10 Doelstellingen Oplevering 10 Voor deze vragen heb ik een aantal doelstellingen vastgesteld. Naast het feit dat dit zorgt voor een duidelijk overzicht, zorgt dit er ook voor dat mijn onderzoek meetbaar wordt. De doelstellingen die ik heb opgesteld zijn als volgt: Gedurende een periode van 2 dagen onderzoeken welke beveiligingslekken er in het verleden bij applicaties zijn voorgekomen Gedurende een periode van 12 dagen de mogelijkheden om gegevens uit een applicatie te halen proberen vast te stellen Gedurende een periode van 8 dagen oplossingen voor de geconstateerde beveiligingsrisico s proberen vast te stellen Gedurende een periode van 1 dag proberen vast te stellen of er door Apple tests uitgevoerd worden om de beveiliging van een applicatie te controleren Gedurende een periode van 1 dag externe partijen welke gespecialiseerd zijn in de beveiliging van applicaties omschrijven Gedurende een periode van 1 dag vaststellen welke oplossingen er binnen de gestelde ontwikkeltijd te realiseren zijn Gedurende een periode van 1 dag vaststellen welke oplossingen er invloed hebben op de structuur van de applicatie Het doel van mijn onderzoek is om een framework voor de iphone op te leveren welke tegen de gevonden beveiligingsrisico s beveiligd is. Mirabeau kan dit framework vervolgens in toekomstige applicaties als basis gebruiken om een applicatie op verder te bouwen. Het uiteindelijke prototype zal een aantal vaak voorkomende functionaliteiten bevatten: De mogelijkheid om in te loggen Het beveiligd versturen van data naar een externe server Het opslaan van gebruikersdata Afbeeldingen Teksten Cijfers Dit alles dient zo goed mogelijk beveiligd te worden aan de hand van de resultaten uit mijn onderzoek. Uiteindelijk zou het mogelijk moeten zijn om aan de hand van dit framework in een korte tijd de applicatie aan te passen voor een toekomstig project.

11 Mirabeau Zoals al eerder aangegeven maak ik mijn afstudeerproject in opdracht van Mirabeau. Mirabeau is een mediabureau met vestigingen in Amsterdam, Rotterdam, Eindhoven, Utrecht en Hoorn. Met een verwachte groei van 200 medewerkers in de komende 3 jaar heeft Mirabeau een ambitieuze toekomst in het vooruitzicht. Het zal de komende jaren dan ook zijn positie in de markt verstevigen en zich gaan ontwikkelen tot een van de grootste mediabureaus in Nederland. Het bedrijf is opgericht op 2 januari De oprichters van Mirabeau waren al vroeg betrokken bij verschillende ontwikkelingen in het internet. Het bedrijf is snel gegroeid en werd in zowel 2007,2008 en 2009 door de interactieve branche uitgeroepen tot Bureau van het Jaar. Mirabeau streeft naar langdurige relaties met haar opdrachtgevers. In deze relaties worden korte en lange termijnstrategieën uitgewerkt, geanalyseerd en geoptimaliseerd. Een aantal voorbeelden van bedrijven waar Mirabeau mee samenwerkt zijn Funda, Transavia, ING en KLM. Doordat de ontwikkeling op het gebied van onlinemarketing dermate snel gaat, heeft Mirabeau er voor gekozen om verschillende partnerships af te sluiten. Mirabeau loopt voorop en heeft partnerships met de toonaangevende software leveranciers. De developers doorlopen trainingsprogramma s en in samenwerking met de software architecten worden combinaties van pakketten en toepassingen geïmplementeerd. Naast deze specifieke software partners heeft Mirabeau partnerships met bedrijven die specifieke kennis of dienstverlening leveren. 11

12 De beveiligingsrisico's IOS BEVEILIGING binnen het ios platform Inleiding Om een applicatie goed te kunnen beveiliging is het belangrijk om te weten welke beveiligingsrisico s er überhaupt bestaan. Zonder dit gegeven is het onmogelijk om de conclusie te stellen dat de applicatie voldoende beveiligd is. 12 In dit hoofdstuk breng ik allereerst een aantal beveiligingsrisico s uit het verleden in kaart. Vervolgens creëer ik een overzicht van alle mogelijkheden die er bestaan om data uit een applicatie te hacken.

13 Beveiligingslekken uit het verleden Wat is er mooier dan leren van de fouten van een ander? Het is een open deur waar je eigenlijk niet omheen kunt. Het zou tenslotte behoorlijk stom zijn om te ondervinden dat een beveiligingslek al eens eerder heeft plaats gevonden. Het geeft namelijk aan dat het onnodig is geweest en je de applicatie hiertegen had kunnen beveiligen. PayPal PayPal is een van de applicaties waarbij een beveiligingslek naar voren is gekomen 1. Het probleem deed zich voor bij mensen die de applicatie vanaf hun iphone gebruikten via een onbeveiligd Wi-Fi netwerk. Het bleek mogelijk om een zogenaamde Man-in-themiddle aanval uit te voeren. Bij een dergelijke aanval wordt de data van een verbinding onderschept en kunnen belangrijke gegevens in de handen van een aanvaller terecht komen. In het geval van de PayPal applicatie was het mogelijk om via een Man-in-the-middle aanval de PayPal-transactiegegevens tussen de iphone en een Wi-Fi netwerk te onderscheppen. Echter werd een update met een oplossing voor het lek binnen 24 uur nadat Pay- Pal op de hoogte was gebracht al verzonden richting Apple. Afbeelding 1 - Het invoervenster voor het veranderen van een WhatsApp status WhatsApp Ook bij WhatsApp zijn er een aantal beveiligingslekken naar voren gekomen. Zo was het mogelijk om een account te kapen door een SMS bericht te onderscheppen, konden statussen aangepast worden (Afbeelding 1) en waren chatberichten via een netwerk sniffer te onderscheppen en te bekijken 2. Op het Android platform bleken berichten zelfs onbeveiligd opgeslagen in een database welke met een simpele database tool geopend kan worden (Zwaag, PayPal iphone-app krijgt snelle update wegens beveiligingslek) 2 WhatsApp Messenger - Onderzoeksrapport (Blz. 12)

14 WhatsApp had deze problemen kunnen voorkomen door de dataverbindingen beter te beveiligen. Door de data te versleutelen zouden deze beveiligingslekken niet zijn opgevallen. Skype Bij Skype was het door een beveiligingslek mogelijk om het adresboek van een contact te kopiëren 3. Binnen Skype werden de chatberichten in een html-bestand opgeslagen. Het encoderen van de volledige naam van een Skype-gebruiker ging echter niet goed waardoor het mogelijk was om javascriptcode te injecteren. Zodra de contactpersoon het bericht ging lezen werden al zijn contacten doorgestuurd naar de hacker Skype - Onderzoeksrapport (Blz. 17)

15 De mogelijkheden om data uit een applicatie te halen Om een applicatie goed te beveiligen is het belangrijk om te weten welke manieren er bestaan om gegevens uit een applicatie te halen. De gevonden beveiligingslekken uit het verleden brengen al een aantal risico s naar voren: Man-in-the-middle aanval SMS Spoofen bij het verifiëren van een account Een server zonder authenticatie Het zonder versleuteling opslaan van gebruikersdata Het verkeerd encoderen van een lokaal HTML bestand waardoor Javascript code geïmplementeerd kan worden Met behulp van het boek Hacking and Securing ios Applications van Jonathan Zdziarski heb ik zelf geprobeerd bepaalde data te achterhalen. In dit hoofdstuk breng ik verslag van mijn bevindingen. Jailbreaking Om een beeld te krijgen hoe het hacken van een ios applicatie in zijn werking gaat ben ik gestart met het zogenaamd jailbreaken van een iphone 1. Jailbreaking staat voor het proces waarbij een aantal systeem beperkingen verwijderd worden. Letterlijk vertaald betekent het gevangenis uitbraak. Dit staat voor de beveiligde omgeving van ios waaruit je als het ware ontsnapt (Zdziarski 38). Onder deze applicaties vallen onder andere veel applicaties die door hackers worden gebruikt. Ook voor mij was het daarom nodig om mijn iphone te Jailbreaken. Jailbreaking maakt het onder andere mogelijk om applicaties buiten de App Store om te installeren. Sommige applicaties worden door de App Store niet toegestaan en zijn dus niet via de App Store te downloaden Jailbreaking - Onderzoeksrapport (Blz. 19)

16 Het injecteren van code 16 Een van de mogelijkheden die een gejailbreakte iphone biedt is het injecteren van code. Het geeft hackers de mogelijkheid om data te kopiëren, kwaadaardige of schadelijke software te injecteren of een aantal andere manieren van aanvallen uit te voeren (Zdziarski 27). Door de code automatisch op te laten starten bij het opstartproces van de iphone wordt er een zogenaamde daemon gecreëerd. Een daemon is een programma welke op de achtergrond draait zonder dat de gebruiker het doorheeft (Zdziarski 34). Het geeft de hacker de mogelijkheid om zonder het weet van de gebruiker data te stelen of een verbinding aan te leggen met een thuisnetwerk. Een voorbeeld hiervan is dat een database met alle berichten bij het opstarten van de iphone naar een server van de hacker wordt verstuurd. De standaard beveiliging van Apple Binnen ios zijn er standaard al een aantal beveiligingsmaatregelen geïmplementeerd. Zo is het mogelijk om data binnen de keychain op te slaan, een zogenaamde kluis binnen ios. De keychain wordt versleuteld Afbeelding 2 - Het achterhalen van de pincode van een iphone zodra de iphone versleuteld is. Verder zorgt Apple ervoor dat een aantal belangrijke bestanden worden versleuteld. Deze versleuteling zorgt ervoor dat bijvoorbeeld de berichten niet zomaar zijn in te lezen. Om deze versleuteling eraf te halen dien je te beschikken over een zogenaamde decryptiesleutel, welke vrij komt zodra de iphone van zijn versleuteling wordt gehaald. Hierdoor zou het onmogelijk moeten zijn om bij deze data te komen zonder de weet van de pincode. De pincode beveiliging van een iphone is echter simpel en snel te doorbreken met een zogenaamde brute-force aanval. Bij een brute-force aanval wordt elke mogelijke combinatie geprobeerd, totdat de juiste gevonden is 2. Om een dergelijke aanval uit te voeren dient de iphone opgestart te worden met een andere opstartschijf waarop de code voor een brute-force aanval geïnstalleerd staat. Op het scherm verschijnen vervolgens alle wachtwoorden die geprobeerd zijn, totdat de juiste gevonden is. 2 (Last Bit Software)

17 In het boek van Jonathan staat een voorbeeldcode om deze brute-force aanval uit te voeren (Zdziarski 120). Deze code achterhaalt de pincode, vervolgens alle encryptie sleutels en maakt het daarna mogelijk om Het uitvoeren van code in een draaiende applicatie Naast de beveiliging van bestanden is de applicatiestructuur een belangrijk aandachtspunt. Zo is het mogelijk om functies van een applicatie uit te voeren terwijl de applicatie op de iphone geopend is. H e t u i t l e z e n v a n d e f u n c t i e s Afbeelding 3 - De gevonden accountgegevens een tekstbestand met deze gegevens via het netwerk naar de computer te kopiëren. In dit bestand staat verschillende data, waaronder de sleutels om de versleuteling van bestanden af te halen. Verder is het mogelijk om met dit bestand de versleuteling van de keychain elementen te verwijderen. Zo is het mogelijk om accountgegevens en wachtwoorden te achterhalen van verschillende services en applicaties. Het geeft aan dat de standaard encryptie van Apple onvoldoende beveiliging bied en deze data simpel te achterhalen is. De eerste stap in dit proces is het uitlezen van de functies. Dit is nodig om te weten welke functies er bestaan en welke er dus zijn uit te voeren. Standaard zijn de applicaties van de iphone versleuteld en is het niet mogelijk om de functies uit te lezen. Door de versleuteling van de applicatie te verwijderen is het mogelijk om deze functienamen zichtbaar te maken. Dit proces wordt ook wel reversed enginering genoemd (Amini)

18 Afbeelding 4 - Een class dump geeft een overzicht van functies en variabelen Uiteindelijke verschijnen alle functies en variabelen van de applicatie (Afbeelding 4). Er kon namelijk een functie worden aangeroepen waarmee het inlogscherm verdween. 18 In dit voorbeeld is de applicatie PhotoVault gebruikt. Deze applicatie beweert dat het afbeeldingen op de iphone of ipad kan beveiligen. Dit gebeurt door middel van een pinbeveiliging bij het opstarten van de applicatie. H e t u i t v o e r e n v a n d e f u n c t i e s Na het indexeren van alle functies is de volgende stap het uitvoeren van functies terwijl de applicatie geopend is. Met behulp van Jonathan s boek bleek het mogelijk om de beveiliging van de applicatie Photovault op verschillende manieren te omzeilen 4. 4 Het omzeilen van een beveiliging met behulp van cycript - Onderzoeksrapport Bijlage 4 Deze applicatie geeft aan hoe simpel het is om bepaalde beveiligingen te doorbreken. H e t w i j z i g e n o f c r e ë r e n v a n f u n c t i e s Het is ook mogelijk om bestaande functies te wijzigen. Hierdoor is het mogelijk om code te manipuleren en daarmee een beveiliging te omzeilen. Stel dat er bijvoorbeeld een functie bestaat die terugkeert of de pincode juist is, dan kan deze functie zodanig aangepast worden zodat de pincode altijd juist wordt bevonden. Met Cycript is het daarnaast ook mogelijk om zelf functies aan te maken. Zo is het bijvoorbeeld mogelijk om een pop-up te laten verschijnen (Afbeelding 5).

19 H e t w i j z i g e n e n u i t l e z e n v a n v a r i a b e l e n Het monitoren van dataverkeer Mobiele applicaties maken vaak gebruik van verschillende services waarbij er een verbinding wordt gemaakt met een externe server. Bij deze verbinding wordt er data via het internet verstuurd, waarna de server vaak een antwoord terugstuurt. Deze data kan belangrijke informatie bevatten en is daardoor erg interessant voor een hacker (Zdziarski 209). Een voorbeeld is een inlogsysteem waarbij het account en het wachtwoord naar een server verstuurd worden. Deze server geeft vervolgens een antwoord of het inloggen gelukt is. Een hacker zou in dit voorbeeld deze accountgegevens kunnen onderscheppen. Het is daarom belangrijk om data met een versleuteling naar een server te versturen. Afbeelding 5 - Door middel van Cycript is het mogelijk om functies aan te maken en bijvoorbeeld een pop-up te laten verschijnen Er zijn verschillende manieren om data te onderscheppen. Hieronder volgt een overzicht met de methodes welke voor een hacker interessant zijn. Naast het uitvoeren, wijzigen en creëren van functies is het tevens mogelijk om variabelen te wijzigen of uit te lezen. Zo bleek het bij de PhotoVault applicatie mogelijk om de pincode te wijzigen en vervolgens met deze pincode in te loggen 5. 5 Het wijzigen en uitlezen van variabelen - Onderzoeksrapport (Blz. 30) A P N H i j a c k i n g APN staat voor Access Point Name en bevat alle gegevens voor een iphone of ipad om data te versturen en te ontvangen via een netwerk (Zdziarski 209). Een hacker kan deze gegevens aanpassen zodat een verbinding eerst langs een tussenstation komt voordat het naar de buitenwereld gaat. Het 19

20 aanpassen kan handmatig of met de tool Apple Configuration Utility. Op deze manier is het mogelijk om alle data die langs komt te monitoren en spreekt men van APN Hijacking. P ay l o a d d e l i v e r y De Payload Delivery methode lijkt veel op de APN Hijacking methode. Het verschil is dat de configuratie van een iphone of ipad bij deze methode via een installatiebestand wordt aangepast (Zdziarski 212). Een voorbeeld is dat het bestand via een verstuurd wordt met een nepbericht waarbij het lijkt alsof het bestand van Apple afkomstig is. Hierbij is de hacker dus wel afhankelijk van de gebruiker welke het bestand moet installeren (Afbeelding 6). P r o x y s e r v e r Een andere manier is het opzetten van een proxyserver. Een proxyserver is een computer die zich tussen het apparaat van de gebruiker en het internet bevindt 6. Bij deze methode wordt er gebruik gemaakt van de Wi-Fi verbinding van de iphone. Door deze verbinding via de computer te laten verlopen kan de data gemonitord worden. Afbeelding 6 - Een welke van Apple afkomstig lijkt te zijn Om dit in te stellen dienen de Wi-Fi instellingen van de iphone aangepast te worden. Dit kan handmatig of via een code injectie gedaan worden. Ook is het mogelijk om het net zoals de Payload Delivery methode met een installatiebestand in te stellen (Java)

21 Afbeelding 7 - De onderschepte accountgegevens Vervolgens kan het dataverkeer gemonitord worden met tools als SSLStrip en Paros Proxy. Deze tools creëren een overzicht van het dataverkeer tussen de proxyserver en het apparaat. Zo bleek dat de accountgegevens van mijn eigen Content Management Systeem simpel te traceren waren met SSL- Strip (Afbeelding 7). 21

22 Conclusie Na een ware ontdekkingsreis als beginnende hacker sta ik vooral versteld van het feit hoe makkelijk het is om de pincode van een iphone te achterhalen. Ik heb verschillende methodes zelf kunnen toepassen en kan daaruit de conclusie trekken dat een aantal beveiligingsimplementaties van Apple vervallen op het moment dat de pincode is ingevoerd. Al met al dient elke methode waarbij belangrijke data gebruikt wordt goed uitgedacht te worden. Hierbij lijkt het onmogelijk om de data volledig onbereikbaar te maken, maar is het vooral de kunst om het de hacker zo moeilijk mogelijk te maken. De versleuteling van verschillende bestanden vervalt, waaronder die van verschillende databases. Zo ook de keychain elementen waarin wachtwoorden en andere gebruikersgegevens worden opgeslagen. Als ontwikkelaar loop je een behoorlijk beveiligingsrisico als je puur op de beveiliging van ios vertrouwd. Ook is het mij duidelijk geworden dat hackers de applicatie niet alleen van buitenaf, maar ook van binnenin kunnen bekijken. De structuur van een applicatie wordt daardoor een stuk belangrijker. Functies en variabelen zijn simpel aan te passen en geven een hacker de mogelijkheid om een applicatie flink aan te passen. Naast het feit dat data binnen de applicatie veilig opgeslagen dient te worden is het ook belangrijk om uitgaande data te versleutelen. Met verschillende tools is het mogelijk om de data te onderscheppen en uit te lezen. 22

23 23

24 Het beveiligen van IOS BEVEILIGING 24 de applicatie tegen de vastgestelde beveiligingsrisico's Inleiding Nadat ik de beveiligingsrisico s heb vastgesteld is het zaak om voor elk risico een oplossing te vinden. In dit hoofdstuk beschrijf ik de oplossingen voor de gevonden beveiligingsrisico s welke betrekking hebben op mijn eindproduct

25 Relevante beveiligingsrisico's voor mijn eindproduct Om het geheel zo overzichtelijk mogelijk te houden heb ik alle beveiligingsrisico s die voor mijn applicatie relevant zijn nog even op een rijtje gezet: Een viercijferige pincode is binnen een aantal minuten te achterhalen. Er zijn verschillende methodes om bestanden van de iphone te kopiëren. Door de pincode in te voeren wordt de standaard Apple versleuteling verheven en heeft een hacker vrij doorgang. Ook de gegevens in de keychain elementen van Apple zijn te achterhalen. Er kan dus niet simpelweg op de beveiliging van ios vertrouwd worden. Functies en variabelen kunnen uitgelezen en aangepast worden. De applicatiestructuur is dus erg belangrijk. Het moet niet mogelijk zijn om bijvoorbeeld een inlogscherm te omzeilen door simpelweg een functie aan te passen. Dataverkeer vanuit de applicatie naar een externe server kan door middel van een aantal tools makkelijk onderschept worden. Het inlezen van deze data is voor een hacker daardoor een fluitje van een cent. Tevens zal ik nog een aantal overige beveiligingsmaatregelen omschrijven welke niet direct aan een beveiligingsrisico te koppelen zijn. Verder heb ik twee beveiligingslekken die in het verleden zijn voorgekomen bij andere applicaties buiten mijn onderzoek gehouden. Zo bleek het bij Skype mogelijk te zijn om code te injecteren via een HTML bestand. Aangezien ik in mijn applicatie geen verbinding met de database via een HTML bestand zal laten lopen heb ik dit risico weggelaten. Een ander lek vond plaats op serverniveau waarbij het mogelijk was om WhatsApp statussen aan te passen. Dit valt buiten mijn onderzoek waardoor ik ook dit risico heb weggelaten. 25

26 Pincodebeveiliging Uit het vorige hoofdstuk bleek dat een viercijferige pincode binnen enkele minuten te achterhalen is. Door een zogenaamde brute-force aanval worden alle pincodes geprobeerd, totdat de juiste gevonden is. Met deze juiste pincode is vervolgens alle data te bereiken. Om vast te stellen wat de juiste oplossing voor dit probleem is ben ik de applicaties van de Rabobank, de ING en Aegon gaan bekijken. Bij deze bankierapplicaties is beveiliging een belangrijk onderdeel. Uiteindelijk heb ik uit al deze verschillende applicaties de pluspunten gefilterd en deze gecombineerd om tot een zo goed mogelijke beveiliging te komen. Rabobank bankieren Om gebruik te maken van de Rabobank applicatie dient een gebruiker allereerst zijn telefoon te registreren met behulp van een Random Reader. Een Random Reader is een authenticatiemiddel welke aan de hand van de pincode van de gebruiker en een gegeven code een inlogcode genereert. Met deze inlogcode kan de gebruiker zijn rekeningnummer valideren. Vervolgens wordt er aan de gebruiker gevraagd om een pincode van vijf cijfers te kiezen. Dit in tegenstelling tot de viercijferige pincode van de iphone. Het inloggen werkt niet zonder een internetverbinding, wat aangeeft dat de authenticatie op serverniveau plaatsvind. Ook is de juiste pincode daardoor niet in het geheugen van de telefoon te vinden. Dit blijkt ook uit het uitlezen van de keychain, waarbij er geen gegevens van de Rabobank applicatie te vinden zijn. Afbeelding 8 - Het inlogscherm van de Rabobank App 26

27 H e t v o o r d e e l v a n e e n v i j f c i j f e r i g e p i n c o d e Een voordeel van een langere pincode is dat er meerdere mogelijkheden zijn. Met vier cijfers zijn er mogelijkheden en met vijf cijfers zijn dat er Het aantal mogelijkheden vertienvoudigd en zorgt ervoor dat een Brute-force aanval meerdere mogelijkheden langs moet gaan. Een brute-force aanval is hierdoor niet uitgesloten, maar het kost een hacker waarschijnlijk wel een stuk meer tijd om de pincode te achterhalen. Echter zal het account bij meerdere keren verkeerd inloggen waarschijnlijk geblokkeerd worden. vindt de authenticatie op serverniveau plaats en is de pincode niet in het geheugen terug te vinden. ING Bankieren De applicatie van de ING vraagt bij de eerste keer opstarten om een aantal gegevens van de gebruiker 1. Als deze gegevens kloppen wordt er om een bevestigingscode gevraagd. Deze code is op te halen via Mijn ING, waarbij er eenmalig een TAN-code nodig is. Een TAN-code bestaat uit zes cijfers en wordt vanuit ING gratis per sms verzonden 2. Vervolgens dient de gebruiker een pincode van vijf cijfers op te geven. In het vervolg is enkel deze pincode nodig om in te loggen. Net als de Rabobank applicatie maakt ING gebruik van een vijfcijferige inlogcode. Ook 1 (Zwaag, ING Bankieren: vernieuwende app voor mobiel bankieren op iphone, ipad en Android) 2 (ING) Afbeelding 9 - Het koppelen van een rekeningnummer ing de ING app AEGON Saldo check De AEGON saldo check applicatie verschilt qua inloggen met de applicatie van ING en de Rabobank. Het maakt namelijk gebruik van een gebruikersnaam en wachtwoord in plaats van een rekeningnummer met pincode. Een groot voordeel van een wachtwoord is dat er veel meer mogelijkheden zijn. De 27

28 lengte is variabel en in tegenstelling tot cijfers zijn er bij letters 26 mogelijkheden. Daarnaast kunnen er ook hoofdletters en cijfers gebruikt worden. Dit zorgt voor een totaal van 62 mogelijkheden per ingevoerde karakter. Het spreekt voor zich dat het bij een brute-force aanval meer tijd kost om een dergelijk wachtwoord te achterhalen. Bovendien is de lengte van het wachtwoord niet bekend, waardoor het aantal mogelijkheden verder toeneemt. Het tegengaan van een brute-force aanval Om een inlogsysteem veilig te maken dient er rekening gehouden te worden met een brute-force aanval. Het is een methode die door hackers gebruikt wordt om wachtwoorden te achterhalen door simpelweg elke mogelijkheid uit te proberen. Na contact te hebben gezocht met meerdere beveiligingsbedrijven bleek dat er met een geavanceerd systeem meer dan 300 miljoen pogingen per seconde geprobeerd kunnen worden. Een inlogsysteem zonder authenticatie op server niveau zal daarom snel te doorbreken zijn. Om het systeem daarnaast veilig genoeg te maken is het verstandig om voor een wachtwoord te kiezen met veel verschillende mogelijkheden, maar het is ook belangrijk om te kijken naar het gedrag van de mens bij het gebruik van een wachtwoord. Uit een onderzoek van Daniel Amitay blijkt dat veel iphone gebruikers een simpel patroon gebruiken bij hun pincode 3. Daniel registreerde pincodes en concludeerde dat er 8884 keer de pincode 1234 gebruikt werd en 5246 keer de pincode In totaal bleek dat 15% van de pincodes uit een simpel patroon bestonden. Afbeelding 10 - Het inlogscherm van de AEGON app 28 3 (Amitay)

29 Uit een ander onderzoek van PC Tools blijkt dat 45% van de bevolking uit de Benelux op alle websites die het bezoekt hetzelfde wachtwoord gebruikt 4. Dit gegeven zou er voor gezorgd kunnen hebben dat ING en Rabobank voor een pincode van vijf cijfers gekozen hebben. De pincode van een iphone bleek namelijk simpel te achterhalen en uitgaande van dit onderzoek is de kans dat de pincode van de iphone hetzelfde is als de pincode van andere applicaties tenslotte 45%. Uit deze resultaten kunnen een aantal conclusies getrokken worden. Veel gebruikers kiezen hetzelfde wachtwoord voor verschillende toepassingen. Ook wordt er vaak een simpel te onthouden wachtwoord gekozen. Een pincode van vier cijfers is daarom geen goede keus, aangezien de kans vrij groot is dat de gebruiker dezelfde gebruikt als voor hun iphone vergrendeling. Er zijn verschillende manieren om te voorkomen dat de gebruiker een simpel patroon of een makkelijk te raden wachtwoord kiest. Een van de mogelijkheden is om de gebruiker een wachtwoord toe te sturen. Hiermee houd je de sterkte van het wachtwoord in eigen hand en ontneem je de gebruiker de mogelijkheid om een bekend patroon te kiezen. Dit kan tegelijkertijd voor ergernis zorgen bij de gebruiker. Hij dient tenslotte een nieuw patroon uit zijn hoofd te leren. Een andere optie is het vastzetten van een patroon. Door de gebruiker te forceren om naast cijfers ook letters te gebruiken dwing je de gebruiker om een lastiger wachtwoord te kiezen. Echter houd de gebruiker wel de mogelijkheid om een voor hem bekend wachtwoord te nemen. Hierbij is het wel belangrijk om te zorgen dat er genoeg combinaties overblijven. De beste oplossing lijkt een combinatie van deze twee mogelijkheden. Door een combinatie van twee letters met vijf cijfers te gebruiken ontstaat er een wachtwoord met mogelijkheden. Door de twee letters vast te zetten en de gebruiker de mogelijkheid te geven de vijf cijfers zelf in te vullen worden de twee mogelijkheden gecombineerd. Het resultaat is uiteindelijk een wachtwoord welke met een brute-force aanval lastig te achterhalen is. Het geeft de gebruiker voldoende tijd om zijn account bij diefstal van zijn iphone te deactiveren. Deze maatregelen in combinatie met authenticatie op serverniveau moeten een brute-force aanval door een hacker zo goed als uitsluiten (PC Tools)

30 Het versleutelen van belangrijke data Binnen een applicatie zijn er verschillende data welke versleutelt dient te worden. Zo zijn er bestanden als een database of afbeeldingen, maar dienen ook wachtwoorden na het invoeren direct versleuteld te worden. Common Crypto Jonathan behandeld in zijn boek een handige tool bij het versleutelen van data genaamd Common Crypto (Zdziarski 244). Deze tool bied een aantal verschillende manieren van versleutelen en is standaard beschikbaar binnen het framework van de iphone. De soorten versleutelingen verschillen in sterkte en zijn niet allemaal even geschikt voor elke applicatie. Een standaard encryptie maakt gebruik van één sleutel genaamd de master sleutel. Er ontstaat echter een probleem, want waar slaan we deze encryptie sleutel in op? De keychain bleek namelijk simpel te achterhalen en ook variabelen zijn uit te lezen. Een oplossing voor dit probleem is het gebruiken van een zogenaamde master sleutel encryptie. Data wordt versleuteld met behulp van de master sleutel, maar de master sleutel wordt los daarvan nog versleuteld met een wachtwoord. Om de versleuteling van een bestand te verwijderen is dus allereerst het wachtwoord nodig. Met het wachtwoord kan de master sleutel achterhaald worden om hier vervolgens de versleuteling van de data mee te verwijderen. Deze methode heeft als voordeel dat de master sleutel nooit aangepast hoeft te worden. Stel dat de gebruiker zijn wachtwoord aanpast, dient enkel de master sleutel opnieuw versleuteld te worden. In het geval dat het wachtwoord direct gebruikt zou worden om alle data te versleutelen zou alle data opnieuw versleuteld moeten worden met het nieuwe wachtwoord. Daarnaast is het mogelijk om de master sleutel aan de hand van een geheime vraag te versleutelen. Deze sleutel kan dan gebruikt worden in het geval dat de gebruiker zijn wachtwoord vergeet. 30

31 Afbeelding 11 - Het versleutelproces met een openbare en geheime sleutel Het boek Computer netwerken van James F. Kurose en Keith W. Ross omschrijft deze manier van versleutelen aan de hand van een afbeelding (Afbeelding 11) 1. In het voorbeeld is de linker persoon Alice en de rechter persoon Bob. Het boek omschrijft de versleuteling als volgt: Veronderstel dat Alice wil communiceren met Bob. Zoals is weergegeven in afbeelding 8.6 gebruiken Bob en Alice in plaats van één geheime sleutel (zoals bij de symmetrische sleutelsystemen), twee sleutels. Bob (de ontvanger van de berichten van Alice) heeft twee sleutels; een openbare sleutel die iedereen (inclusief Trudy de indringer) kent en een geheime sleutel die alleen Bob kent. In het geval van een iphone applicatie is Alice de gebruiker en Bob de applicatie. Binnen de applicatie is er dus naast het wachtwoord van Alice nog een andere sleutel bekend. Alle data wordt eerst met de openbare sleutel versleutelt en vervolgens nog eens met de geheime sleutel. Bij deze methode dient een hacker naast de openbare sleutel ook de geheime sleutel te achterhalen (Kurose and Ross)

32 Bij deze manier van versleutelen wordt er gebruik gemaakt van iets wat je hebt (de data en de master sleutel) en iets wat je weet (het wachtwoord). Dit wordt ook wel een Key Derivation Function genoemd. Key Derivation Functions hebben een aantal voordelen: De tijd van het ophalen van een sleutel kan beïnvloed worden. Dit kan gebruikt worden om een brute-force aanval te vertragen. Naast het wachtwoord kunnen er meerdere waardes gebruikt worden voor een versleuteling Bijv. het toestel identificatienummer, coördinaten of een bepaalde tijd. Het biedt de mogelijkheid om de lengte van de sleutel te bepalen. Om naast deze methode gebruik te maken van een externe server kan er nog een extra sleutel gebruikt worden. Deze sleutel wordt bewaard op een server en pas vrijgegeven zodra de gebruiker is ingelogd. Om de versleuteling van de master sleutel te verwijderen dient de hacker naast het wachtwoord ook de andere waardes te achterhalen. De tijd die hier voor nodig is zal al snel oplopen tot een maand, waardoor de gebruiker genoeg tijd heeft om zijn account af te sluiten. 32

33 Het aanpassen van functies en variabelen Hackers hebben de mogelijkheid om op een draaiende applicatie in te haken door middel van een debugger. Hiermee kunnen ze functies en variabelen aanpassen. Ook zijn variabelen uit te lezen. Om dit tegen te gaan dient het geheugen beveiligd te worden. Jonathan geeft in zijn boek een aantal preventieve handelingen die het de hacker al een stuk moeilijker maakt (Zdziarski 264): Sla nooit belangrijke data in het geheugen op voordat een gebruiker is ingelogd. Bewaar belangrijke data niet in instance variabelen welke simpel zijn uit te lezen. Bewaar geen verwijzing naar belangrijke sleutels in instance variabelen. Bewaar belangrijke data alleen in het geheugen op het moment dat je ze gebruikt. Het tegengaan van code injecties Een van de eerste methodes die hackers uitproberen is het aanpassen en toevoegen van functies (Zdziarski 295). Deze manier van hacken is tegen te gaan door functies te controleren voor ze worden uitgevoerd. Geïnjecteerde code beland in zogenaamde address space, oftewel, een ruimte binnen het geheugen. Binnen de address space kan er gekeken worden waar functies vandaan komen. Als een functie niet vanuit de applicatie of het framework van Apple komt kan het opstarten onderbroken worden. Het komt dan namelijk van een onbekende bron zoals bijvoorbeeld een code injectie (Afbeelding 12). De functies worden gevalideerd en op het moment dat de geïnjecteerde code langs komt wordt het proces gestopt. 33 Afbeelding 12 - Het valideren van functies

34 I n l i n e f u n c t i e s Het uitvoeren van code injecties is hiermee nog niet onmogelijk. De hacker dient echter de code in bestaande functies te injecteren wat het proces vooral moeilijker maakt. Dit wordt bijvoorbeeld met een tool als Cycript gedaan. Om dit tegen te gaan kan er in elke functie een authenticatiecheck geplaatst worden. Echter is het mogelijk om met een debugger simpele checks uit te schakelen 1. Hiervoor dient de naam van de check bekend te zijn, welke te achterhalen is met de tool Otool (Afbeelding 13). Afbeelding 13 - Het overzicht van Otool laat zien dat de functie is_session_valid wordt aangeroepen Door deze functie inline te maken is hij niet meer te vinden via een tool als Otool (Zdziarski 306). Met het inline maken van een functie wordt er geen functie meer aangeroepen, maar wordt de daadwerkelijke code van de functie gekopieerd op de locatie waar het wordt aangeroepen 2. Hierdoor is het niet meer mogelijk om simpelweg de functie voor het authentiseren aan te passen, maar dient de code op elke plek waar het wordt aangeroepen omzeilt te worden. Het compliceren van code Door de code van een applicatie te compliceren wordt de code een stuk minder leesbaar voor een hacker. Er zijn verschillende manieren om dit te doen. O p t i m a l i s at i e f l a g s Een van de mogelijkheden is het toevoegen van optimalisatie flags (Zdziarski ). Deze flags beïnvloeden het compileren van code en zorgen ervoor dat de code geoptimaliseerd wordt. Daarnaast zorgt het ervoor dat de code complexer en daardoor bij een symbol table dump vaak minder leesbaar wordt. Echter kan het er in sommige gevallen ook voor zorgen dat de code leesbaarder wordt doordat er veel wordt weggelaten. Een symbol table dump genereerd een overzicht van methodes en variabelen in assembly taal waarbij onder andere het geheugenadres is uit te lezen. Het gebruiken van optimalisatie flags komt vooral tot zijn recht als het beveiligen van variabelen belangrijker is dan het beveiligen van functies. Alle toewijzingen van variabelen worden namelijk onzichtbaar, terwijl functies nog steeds leesbaar zijn Het uitschakelen van checks met behulp van een debugger - Onderzoeksrapport Bijlage 6 2 Het verschil tussen een normale en een inline functie - Onderzoeksrapport Bijlage 7

35 S t r i p p i n g Door de code van een applicatie te strippen verdwijnen ook de functies bij een symbol table dump (Zdziarski ). Stel dat er een functie als check_op_debuggers wordt gebruikt, een hacker maakt een symbol table dump, ziet deze functienaam en zorgt ervoor dat deze functie wordt uitgeschakeld. Het wordt een stuk moeilijker als deze functienamen niet uit te lezen zijn met een symbol table dump 3. In combinatie met het eerder genoemde inline maken van een functie zou er voor zorgen dat een hacker aanzienlijk meer tijd nodig heeft om een applicatie te hacken. F u n r o l l - l o o p s Een laatste methode is het toevoegen van zogenaamde funroll-loops (Zdziarski ). Een funroll-loop zorgt ervoor dat een loop in een symbol table dump herhaalt wordt. Als er binnen deze loop bijvoorbeeld een securitycheck wordt gedaan dan dient een hacker niet één keer, maar meerdere keren deze check te omzeilen 4. Net als de eerder genoemde methodes wordt het injecteren van code hiermee niet uitgesloten, maar vooral bemoeilijkt. Het detecteren van een jailbreak Alle eerder genoemde methodes zijn enkel mogelijk op een gejailbreakte iphone. Een jailbreak zorgt ervoor dat bepaalde beveiligingen worden verwijderd en verschillende tools geïnstalleerd kunnen worden. Door te detecteren of een toestel gejailbreakt is kunnen veel methodes uitgesloten worden. Op het moment dat er een jailbreak gedetecteerd is kan er op een passende manier gereageerd worden door bijvoorbeeld de applicatie af te sluiten of data te verwijderen. Er zijn verschillende manieren om een jailbreak te detecteren 5 : Het testen van bepaalde functies die met een jailbreak niet meer werken. Het zoeken naar jailbreak gerelateerde applicaties Het controleren van de bestandsgrote van het bestand /etc/fstab Het controleren op omgeleide folders Het blijft echter wel mogelijk om deze check te omzeilen. In combinatie met eerder genoemde methodes zal het wel behoorlijk lastig worden om de functie te vinden en vervolgens uit te schakelen. Bovendien heeft een applicatie geen waarde meer in het geval dat de data bij het vinden van een jailbreak verwijderd zou worden. 3 Het verschil na het strippen van code - Onderzoeksrapport Bijlage Het verschil na het implementeren van een funrollloop - Onderzoeksrapport Bijlage 9 5 Het detecteren van een jailbreak - Onderzoeksrapport Bijlage 10

36 Belangrijke data valt dan niet meer te achterhalen, tenzij de hacker een back-up van de applicatie zou hebben gemaakt. Echter kan de data door de gebruiker ook niet meer achterhaald worden, tenzij het extern staat opgeslagen. Daarnaast sluit je met deze check een behoorlijk aantal gebruikers uit. Alle gebruikers met een gejailbreakte iphone kunnen de applicaties tenslotte niet meer gebruiken. Het maakt de applicatie dus een stuk veiliger, maar heeft ook zo zijn nadelen. 36

37 Het controleren van een dataverbinding Uit onderzoek bleek dat met een zogenaamde Man-in-the-middle aanval een dataverbinding kan worden afgeluisterd. Zo is het bijvoorbeeld mogelijk om belangrijke data zoals gebruikersgegevens te onderscheppen of certificaten te kopiëren. Door een certificaat te kopiëren kan een hacker zich voordoen als een gebruiker en daarmee belangrijke data ontvangen van een server. Het is dus belangrijk om een dataverbinding te controleren voordat er data verstuurd wordt. Apple heeft een standaard beveiliging in ios gebouwd waarmee een dataverbinding wordt gevalideerd, namelijk SSL. Daardoor is het niet mogelijk om bijvoorbeeld naar een website te navigeren zodra een verbinding als onveilig wordt gezien (Afbeelding 14). De code controleert de verbinding en checkt tevens of er code geïnjecteerd is waarmee de SSL beveiliging omzeilt kan worden. In combinatie met de eerder genoemde maatregelen waarmee de applicatie wordt beveiligd is het daardoor voor een hacker erg lastig om een dataverbinding af te luisteren. Echter blijft het niet onmogelijk doordat de mogelijkheid bestaat dat ook deze checks omzeilt worden. Daarom is het belangrijk om naast deze preventieve maatregelen de data altijd versleuteld te versturen. SSL staat voor Secure Sockets Layer en zorgt voor het versleutelen en verifiëren van gegevens tussen een applicatie en een server (Kurose and Ross 726). Zonder deze beveiliging is een dataverbinding met verschillende tools simpel af te luisteren. Echter blijkt dat de standaard check binnen ios simpel te omzeilen is 1. Dit gebeurt door middel van een code injectie. Het is daarom belangrijk om in de applicatie zelf ook de dataverbinding te controleren. Jonathan geeft hiervoor een voorbeeldcode in zijn boek (Zdziarski 298). Afbeelding 14 - De verbinding mislukt omdat de verbinding als onveilig wordt gezien 37 1 Het omzeilen van de standaard SSL beveiliging - Onderzoeksrapport Bijlage 11

38 Overige beveiligingsmaatregelen Buiten de geconstateerde beveiligingsrisico s zijn er nog een aantal maatregelen welke de applicatie beveiligen. 38 Het verwijderen van bestanden In het geval dat een applicatie een bestand verwijderd is het voor een hacker vaak nog mogelijk om dit bestand te achterhalen. Om dit tegen te gaan dient een bestand eerst geleegd te worden voordat het daadwerkelijk verwijderd wordt. Jonathan geeft hiervoor een voorbeeldcode in zijn boek (Zdziarski 273). Hiermee verliest het bestand zijn waarde en heeft een hacker er weinig meer aan. Het verwijderen van database data Net als bij het verwijderen van bestanden blijft ook database data opgeslagen ondanks dat het verwijderd lijkt te zijn. Om dit te voorkomen is een speciale manier van verwijderen nodig. Door in plaats van een verwijder query een update query te gebruiken en de data te vervangen met de zeroblob functie verdwijnt de data uit het geheugen (Zdziarski 282). De zeroblob functie veranderd elk karakter in een 0 waardoor het geen ruimte meer in het geheugen in beslag neemt. Keyboard cache Om het automatisch corrigeren van teksten goed te laten werken wordt alle keyboard input opgeslagen. Hierdoor bouwt ios een bibliotheek aan woorden op en kan het in het vervolg woorden voor de gebruiker aangeven of corrigeren (Zdziarski 283). Er zijn echter een aantal uitzonderingen: Data uit tekstvelden die gemarkeerd zijn als een input voor wachtwoorden worden niet opgeslagen. Teksten met alleen getallen worden niet opgeslagen. Dit is vooral om te voorkomen dat rekeningnummers en dergelijke kunnen worden achterhaald. Data uit tekstvelden waarbij autocorrect is uitgeschakeld worden niet opgeslagen. Kleine woorden worden niet altijd opgeslagen.

39 Het is dus vrij simpel om dit tegen te gaan. Door het automatisch corrigeren in een tekstveld uit te zetten zal er geen input worden opgeslagen. Ook kan dit probleem worden opgelost door het tekstveld als wachtwoordveld in te stellen. Als laatste is het ook nog mogelijk om het kopiëren en plakken van teksten uit te zetten. Het invoeren van een pincode Hoe goed je een applicatie ook beveiligt, je vertrouwd uiteindelijk op de gebruiker die de pincode weet. Daarmee komt er nog een beveiligingsprobleem om de hoek kijken. Het zou zomaar zo kunnen zijn dat er iemand over zijn schouder meekijkt. Doordat ios overal hetzelfde toetsenbord gebruikt voor het invoeren van getallen kan deze persoon de pincode simpel aflezen. Jonathan komt met een oplossing voor dit probleem (Zdziarski 285). Door een ander toetsenbord te gebruiken dan het origineel is het mogelijk om de getallen in willekeurige volgorde terug te laten keren (Afbeelding 15). Hierdoor is het voor iemand die meekijkt een stuk lastiger om te zien welke pincode er wordt ingevoerd. Het kan echter ook voor irritatie bij de gebruiker zorgen doordat een vast patroon wordt doorbroken. Dit is echter iets om uit te zoeken met een gebruikerstest. Afbeelding 15 - Het invoerscherm met de cijfers in willekeurige volgorde Applicatie screenshots Op het moment dat een applicatie naar de achtergrond verdwijnt wordt er een screenshots van het huidige scherm gemaakt. Dit wordt gedaan om een soepele overgang te creëren op het moment dat de applicatie weer wordt geopend. Zo zou het zomaar zo kunnen zijn dat een gebruiker zijn rekening heeft bekeken en vervolgens een andere applicatie opent. De applicatie wordt hierbij niet afgesloten, maar in het geheugen bewaard. In de afbeelding zou in dit geval zijn rekening te zien zijn. Doordat deze screenshots niet worden verwijderd is het mogelijk om deze afbeeldingen te achterhalen. 39

40 Afbeelding 16 - De code om ervoor te zorgen dat de automatisch opgeslagen afbeeldingen geen belangrijke data bevatten Om dit tegen te gaan dient het scherm geleegd te worden voordat de afbeelding gemaakt wordt (Zdziarski 285). Jonathan geeft hiervoor een voorbeeldcode (Afbeelding 16). 40

41 Conclusie Voor elk gevonden risico is er een oplossing, maar het lijkt onmogelijk om een hacker volledig tegen te houden. Met genoeg tijd en kennis zal er in elke applicatie wel een gaatje gevonden worden om data te achterhalen. Het is alleen zaak het zo moeilijk mogelijk te maken waardoor het voor hacker een stuk minder interessant wordt. Bepaalde beveiligingen zijn afhankelijk van andere. Een functie om een dataverbinding te controleren kan simpel omzeilt worden als functies en variabelen zonder problemen zijn uit te lezen. Het is dus zaak om alle beveiligingsrisico s uit te sluiten. 41

42 IOS BEVEILIGING 42 Het verifieren van de beveiliging Inleiding Om er zeker van te zijn dat een applicatie voldoende beveiligd is dient de beveiliging van mijn applicatie gecontroleerd te worden. In dit hoofdstuk breng in de manieren om de beveiliging van een applicatie te verifiëren in kaart.

43 Het controleren van de beveiliging door Apple Voordat een applicatie in de App Store gepubliceerd wordt dient deze gesigneerd te worden. Geregistreerde developers kunnen hun eigen applicatie signeren en naar de App Store versturen. Alleen gesigneerde applicaties worden door de App Store geaccepteerd. Dit zorgt ervoor dat een applicatie waarmee geknoeid is niet zomaar uitgebracht kan worden 1. Nadat een applicatie bij Apple is binnengekomen wordt deze getest op verschillende punten aan de hand van Apple s richtlijnen 2. Hierbij wordt er bijvoorbeeld gecontroleerd of een applicatie niet crasht, maar wordt er ook gecontroleerd op verdachte functionaliteiten. Dit is om te voorkomen dat er een applicatie in de App Store terecht komt met slechte bedoelingen. Er wordt echter niet gecontroleerd of een applicatie goed beveiligd is tegen de verschillende hack methodes. Een applicatie is dus niet per definitie veilig op het moment dat deze succesvol aan de App Store is toegevoegd. Bedrijven met een specialisatie op het gebied van beveiliging Er zijn verschillende bedrijven die zich bezig houden met het testen van de beveiliging van applicaties. Dit gebeurt niet alleen bij mobiele applicaties, maar ook bij bijvoorbeeld websites. Een dergelijke test wordt ook wel penetration testing genoemd. Delen van deze test kunnen geautomatiseerd worden, maar er zijn ook onderdelen die handmatig moeten worden gedaan. Het belangrijkste doel van een penetration test is het bepalen van de kwetsbaarheden in een beveiliging 3. 1 (Apple, Deploying iphone and ipage) 43 2 (Apple, App Store Review Guidelines) 3 (Marqit)

44 44 D E L L Dell is een van de bedrijven die zich hiermee bezig houd en test een applicatie op drie verschillende manieren: Mobile Application Security Best Practices Review Controleert het design en test de beveiliging via de user-interface. Mobile Application Technical Assessment Betreft een handmatige test waarbij er gericht getest wordt om de beveiliging te doorbreken. Webservice or API Testing Controleert verschillende dataverbindingen en gebruikte API s. Dell bied verder voor 12 maanden service met als uitgangspunt een zo goed mogelijk beveiligde applicatie te realiseren 4. V i a f o r e n s i c s Een andere bedrijf welke zich bezig houd met de beveiliging van applicaties is viaforensics 5. Bij dit bedrijf wordt een applicatie op de volgende punten getest: Het managen van browsegeschiedenis en opgeslagen data Het testen op een Man-in-the-middle aanval 4 (Dell) Het permanent verwijderen van bestanden De beveiliging van een inlogscherm De beveiliging van dataverbindingen De beveiliging tegen debuggers en andere tools die een applicatie kunnen manipuleren terwijl de applicatie geopend is De beveiliging bij onverwachtse onderbrekingen De beveiliging van data in een backup Als alle tests succesvol worden doorstaan krijgt de applicatie een certificaat om aan te geven dat de beveiliging van de applicatie op orde is. V e r i z o n Verizon is een internationaal bedrijf wat zich bezig houd met meerdere services. Een van deze services is mobiele beveiliging. In een is mij verteld op welke onderdelen er onder andere getest wordt: Het testen op een brute-force aanval De beveiliging van dataverbindingen De beveiliging tegen debuggers Daarnaast wordt er een code review uitgevoerd om beveiligingsrisico s naar boven te krijgen. Per dag wordt er 950 tot 1200 in rekening gebracht. De kortste test die ze uitvoeren duurt drie dagen en de langste soms wel eens 30. Een dergelijke test kan dus flink in de kosten lopen. 5 (viaforensics)

45 S e c u r e a p p s Het Nederlandse bedrijf Secure Apps bied een security scan aan inclusief met een code review 6. Deze code review creëert een goed beeld van de sterke en zwakke punten van de veiligheid van uw app, aldus Secure Apps. Vervolgens wordt er aan de hand van deze resultaten een security scan gedaan. De resultaten uit deze scan worden vervolgens uitgebreid gepresenteerd en in een rapport aangeleverd. Een enkele code review kost bij Secure Apps 2000 en een complete security scan inclusief code review kost Om er zeker van te zijn dat een applicatie goed beveiligd is kan er niet op Apple vertrouwd worden. De checks die vanuit Apple gedaan worden zijn niet gericht op de beveiliging van applicaties. Conclusie Om er zeker van te zijn dat een applicatie goed beveiligd is kan er niet op Apple vertrouwd worden. De checks die vanuit Apple gedaan worden zijn niet gericht op de beveiliging van applicaties. Een andere mogelijkheid is het inhuren van een extern bedrijf die zich richt op de beveiliging van mobiele applicaties. De kosten om een dergelijk bedrijf in te huren lopen echter al snel in de duizenden euro s. Voor mij als student is het daarom onrealistisch om de beveiliging te laten verifiëren. Een andere mogelijkheid is het inhuren van een extern bedrijf die zich richt op de beveiliging van mobiele applicaties. De kosten om een dergelijk bedrijf in te huren lopen echter al snel in de duizenden euro s. Voor mij als student is het daarom onrealistisch om de beveiliging te laten verifiëren (Secure Apps)

46 Het toepassen van de gevonden beveiligingoplossingen op het prototype Inleiding Nadat de beveiligingsrisico s zijn vastgesteld en de oplossingen in kaart zijn gebracht is het zaak om deze bevindingen toe te passen op het eindproduct. IOS BEVEILIGING 46 Om het overzichtelijk te houden zet ik eerst alle nodige beveiligingsimplementaties nog even op een rij: Het implementeren van een wachtwoordbeveiliging Het inbouwen van een dataversleuteling Het blokkeren van debuggers Het tegengaan van code injecties Het compliceren van code Het detecteren van een jailbreak Het controleren van een dataverbinding Het verwijderen van bestanden Het verwijderen van database data Het managen van de keyboard cache Het managen van de automatisch gemaakte applicatie screenshots In het komende hoofdstuk zal ik per onderdeel de terugkoppeling maken naar het gecreëerde prototype.

47 Het implementeren van een wachtwoordbeveiliging Een van de belangrijkste beveiligingsimplementaties is de wachtwoordbeveiliging. Het vormt de ingang voor gebruikers om bij de beveiligde data te komen. Zodra dit onderdeel niet goed beveiligd is, wordt het voor een hacker een stuk makkelijker om bij zijn einddoel te komen. Uit mijn onderzoek bleek dat een wachtwoordbeveiliging zonder authenticatie op serverniveau niet veilig genoeg was. Bij het inloggen wordt er daarom gecommuniceerd met een server welke een sleutel terugkeert op het moment dat er juist is ingelogd. Voor het type wachtwoord is er gekozen voor een combinatie van cijfers en letters. Hierbij worden de eerste twee letters voor de gebruiker gekozen en kan de gebruiker de laatste 5 cijfers zelf kiezen. Hierdoor wordt er voorkomen dat de gebruiker een simpel te herkennen patroon kiest of dezelfde pincode als voor het ontsleutelen van de iphone. H e t d e s i g n Het design van het inlogscherm is niet meer dan twee invulvelden en een inlogbutton. In mijn eerste ontwerp hielp ik de gebruiker door het patroon van het wachtwoord in het design terug te laten komen (Afbeelding 17). Echter geeft dit de hacker ook een duidelijk aanwijzing en een flinke voorsprong bij het achterhalen van het wachtwoord. Verder heb ik er voor gekozen om de gebruikersnaam niet te onthouden, in tegenstelling tot de onderzochte bankieren applicaties. De gebruikersnaam wordt namelijk meegenomen in het versleutelingsproces en door deze geheim te houden dient de hacker nog een onderdeel te achterhalen. Het uiteindelijke design is dan ook niet meer dan twee invulvelden met een placeholder (Afbeelding 18). 47 Afbeelding 17 - Het oude design Afbeelding 18 - Het nieuwe design

48 48 Het versleutelingsproces Zodra de gebruiker inlogt wordt er een versleutelingsproces opgestart. Hierbij wordt er een zogenaamde hoofdsleutel gecreëerd door middel van een aantal iteraties. Uiteindelijk wordt alle data met deze hoofdsleutel versleuteld en ontsleuteld. Tijdens het bouwen van deze implementatie kwam ik er door een extern bedrijf achter dat mijn wachtwoordsysteem niet veilig genoeg was en er authenticatie op serverniveau nodig was. Hierdoor moest er een versleuteld pakket naar de server gestuurd worden welke vervolgens op de server weer ontsleuteld kon worden. Mijn eerste versleuteling was dan ook niet veilig genoeg 1. In het overzicht is te zien dat er een aantal stappen worden doorlopen. 1. Bij de eerste stap worden de gebruikersnaam en wachtwoord samen met een salt omgezet naar een rode sleutel. Deze rode sleutel wordt bij het registreren opgeslagen in de keychain, waardoor het bij het inloggen mogelijk is om te kijken of de gebruikersgegevens kloppen door deze sleutels te vergelijken. 2. Om te voorkomen dat de sleutel uit de keychain in een volgende stap kan worden geïnjecteerd, worden de ge- bruikersnaam en wachtwoord bij deze stap nogmaals gebruikt. In combinatie met een salt vormt dit uiteindelijk de groene sleutel. 3. Als laatste extra versleuteling wordt de groene sleutel versleuteld met een salt om de gele sleutel te creëren. 4. Met de gele sleutel wordt de hoofdsleutel versleuteld. Dit vormt een blauwe sleutel welke bij het registeren wordt opgeslagen in de keychain. 5. Bij het inloggen wordt de gele sleutel gecreëerd. Met deze sleutel is het mogelijk om de blauwe sleutel te ontsleutelen en de hoofdsleutel te achterhalen. In dit proces wordt er geen gebruik gemaakt van een externe server. In mijn uiteindelijke implementatie wordt er een extra sleutel gebruikt welke afkomstig is van een externe server 2. Dit zijn een flink aantal extra stappen. Het originele proces is verder uitgebreid en vormt uiteindelijk de paarse sleutel. Deze wordt samen met de groene public sleutel opgestuurd naar de server. Voor de communicatie tussen de iphone en de server wordt er gebruik gemaakt van een openbare en een geheime sleutel. Deze methode van versleutelen is in mijn onderzoek naar voren gekomen 3. Het pakketje wordt bij deze methode met een geheime sleutel versleuteld. De server heeft 2 Bijlage 2 - Mijn uiteindelijke encryptie 1 Bijlage 1 - Mijn eerste encryptie 3 Common Crypto - Onderzoeksrapport (Blz. 42)

49 deze geheime sleutel in zijn database staan en kan deze door middel van de openbare sleutel achterhalen. Vervolgens is het mogelijk om het pakketje te ontsleutelen, de data te controleren en een versleuteld pakket terug te sturen. Dit is te zien in het middelste gedeelte van bijlage 2. Het pakketje wordt vervolgens op de iphone ontsleuteld en gecontroleerd. Uiteindelijk wordt de lichtgroene sleutel gecreëerd waarmee de hoofdsleutel versleuteld en ontsleuteld kan worden. Bij het controleren van het pakketje wordt er naar een aantal dingen gekeken. Op de server wordt gekeken hoe oud het pakketje is en of de inloggegevens kloppen. Als het pakketje ouder dan 5 minuten is wordt het inlogproces afgebroken en dient de gebruiker opnieuw in te loggen. Dit is om te voorkomen dat een hacker een pakketje probeert te hergebruiken. Vervolgens wordt er gekeken of de gebruikersgegevens overeenkomen. Zodra dit niet klopt wordt er een response terug gestuurd naar de iphone met het aantal inlogpogingen die nog over zijn. Zodra het pakketje op de iphone binnenkomt wordt er gekeken hoe oud het pakketje is en of het inloggen gelukt is. Zodra het inloggen om welke reden dan ook mislukt is wordt er een pop-up getoond met een bericht naar de gebruiker. 49 Afbeelding 19 - Zodra het inloggen mislukt is wordt dit door middel van een pop-up aan de gebruiker getoond

50 50 H e t b e v e i l i g e n v a n d e d ata v e r b i n d i n g Naast het versleutelen van de pakketjes die worden rondgestuurd is het ook belangrijk om de dataverbinding te controleren op een man-in-the-middle aanval. Zodra de controle faalt wordt de applicatie afgesloten. Deze controle wordt op meerdere plekken binnen de applicatie aangeroepen. Het inbouwen van een dataversleuteling Om te voorkomen dat de data zonder in te loggen te bereiken is en van waarde kan zijn is het nodig om de data te versleutelen. Dit wordt gedaan door middel van de hoofdsleutel welke bij het inloggen achterhaalt wordt. Binnen het ios platform kan er gebruik gemaakt worden van een Core Data database. Een Core Data database is eigenlijk een gewone SQL database met een schilletje eromheen. Hierdoor is het mogelijk om door middel van het ontwikkelprogramma de database aan te passen. Ook is het mogelijk om gebruik te maken van zogenaamde transformables. Dit zijn functies die worden aangeroepen bij het injecteren en uitlezen van de waardes uit de database. Deze functionaliteit was een uitkomst voor het versleutelen van de data. Zodra de data in de database wordt toegevoegd wordt het eerst versleuteld. Zodra de data wordt uitgelezen wordt het direct ontsleuteld. Hierdoor vindt het versleutelingsproces op één plek binnen de applicatie plaats en heeft de data geen waarde voor een hacker omdat het versleuteld in een database staat opgeslagen. I n l o g s e s s i e s Om te voorkomen dat een gebruiker constant opnieuw moet inloggen om de hoofdsleutel te achterhalen wordt er gebruik gemaakt van een inlogsessie. Bij het inloggen wordt er vanuit de server een sessiesleutel teruggestuurd. Hiermee wordt de hoofdsleutel versleuteld en in het geheugen van de applicatie opgeslagen. Op het moment dat er data versleuteld of ontsleuteld dient te worden wordt er een pakketje met de openbare sleutel naar de server verzonden. De server controleert vervolgens of de sessie geldig is en stuurt een versleuteld pakketje terug met daarin de sessie sleutel. Hiermee is vervolgens de hoofdsleutel weer te ontsleutelen. Verder wordt er op de server gecontroleerd hoe oud de sessie is. Zodra deze ouder dan een uur is wordt er een response naar de iphone teruggestuurd waardoor de applicatie wordt uitgelogd.

51 V e r s c h i l l e n d e d atat y p e s Voor mijn applicatie had ik de doelstelling om teksten, afbeeldingen en cijfers versleuteld op te slaan. Deze verschillende datatypes worden rechtstreeks versleuteld in de database opgeslagen. Afbeeldingen worden dus niet lokaal versleuteld opgeslagen, maar omgezet naar bytes welke vervolgens versleuteld worden toegevoegd aan de database. Het blokkeren van debuggers Om te voorkomen dat de applicatie aangepast kan worden op het moment dat deze draait, is het nodig om te controleren of er debuggers worden gebruikt. Deze check (Afbeelding 20) wordt op elke pagina en voor belangrijke functies aangeroepen. Een voorbeeld van een belangrijke functie is het versleutelen van data. Allereerst wordt de functie ptrace uitgevoerd. Zodra er een debugger wordt gebruikt zorgt het aanroepen van deze functie ervoor dat de applicatie wordt afgesloten. Als extra check wordt de functie check_debuggers aangeroepen. Dit is om te voorkomen dat een hacker door middel van een debugger de ptrace functie overslaat. Dit is mogelijk doordat de hacker voor het opstarten van de applicatie al breakpoints kan instellen. Breakpoints zijn punten waar de applicatie dient te stoppen en waar vervolgens commando s uitgevoerd kunnen worden. 51 Afbeelding 20 - Het controleren of er een debugger wordt gebruikt

52 Zodra de functie check_debuggers een 1 terugstuurt is er sprake van een debugger en dient de applicatie afgesloten te worden. Om dit te testen heb ik geprobeerd een debugger te gebruiken bij mijn applicatie. De functie werkte waardoor er een foutmelding verscheen (Afbeelding 21). Afbeelding 21 - Een debugger is gedetecteerd en de applicatie wordt afgesloten Het tegengaan van code injecties Om te voorkomen dat een hacker code kan injecteren en daarmee belangrijke data kan onderscheppen dient er gecontroleerd te worden op code injecties. Uit het onderzoek bleek dat dit mogelijk was door alle functies te controleren op hun herkomst 4. Daarnaast dienen functies inline gemaakt te worden waardoor ze bij een zogenaamde symbol table dump niet naar voren komen. Jonathan gaf in zijn boek de code om te controleren op code injecties (Zdziarski 295). Om te controleren of deze code ook daadwerkelijk werkt ben ik zelf code gaan injecteren. De functie werkte naar behoren en de code injectie injection3.dylib werd gedetecteerd (Afbeelding 22). Daarnaast zijn alle functies inline gemaakt (Afbeelding 23). Afbeelding 22 - Het detecteren van een code injectie Afbeelding 23 - Inline functies 52 4 Het tegengaan van code injecties - Onderzoeksrapport (Blz. 44)

53 Het compliceren van code Om het uitlezen van functies en variabelen te bemoeilijken is het nodig om de code te compliceren. Uit het onderzoek bleek dat dit mogelijk was door optimalisatie flags, stripping en funroll-loops 5. Deze flags zijn simpel toe te voegen in de settings van het ontwikkelprogramma (Afbeelding 24). Afbeelding 25 - De instellingen voor het strippen van de code Voor het strippen zitten er binnen xcode een aantal standaard ingebouwde instellingen (Afbeelding 25). Hierin is vooral de Strip Linked Product instelling belangrijk welke ervoor zorgt dat de functies onherkenbaar worden bij een class dump. Afbeelding 24 - De instellingen voor de optimalisatie flags 53 5 Het compliceren van code - Onderzoeksrapport (Blz. 45)

54 Het detecteren van een jailbreak Veel van de methodes om data te hacken zijn enkel mogelijk op een gejailbreakte iphone. Door binnen de applicatie te controleren of de iphone gejailbreakt is wordt het voor een hacker een stuk moeilijker om data te achterhalen. Echter wordt er hierdoor ook een groot aantal gebruikers uitgesloten. Het is daarom de vraag of een toekomstige klant hierop wilt controleren. Afbeelding 27 - Het controleren van de jailbreak flag Om deze reden heb ik ervoor gekozen om een zogenaamde macro flag toe te voegen (Afbeelding 26). Afbeelding 28 - Het controleren op een jailbreak Vervolgens is het mogelijk om in de code te controleren of deze flag op 1 staat en er dus op een jailbreak gecontroleerd moet worden (Afbeelding 27). Deze controle wordt bij het opstarten van de applicatie gedaan waardoor de applicatie bij een eventueel gedetecteerde jailbreak zo snel mogelijk kan worden afgesloten (Afbeelding 28). De functie fork zal bij een gejailbreakte iphone een waarde van onder de nul opleveren waardoor de iphone vervolgens afgesloten zal worden. 54 Afbeelding 26 - De jailbreak macro flag

55 Het controleren van een dataverbinding Om een man-in-the-middle aanval uit te sluiten is het nodig om de dataverbinding te controleren. Door gebruik te maken van de standaard beveiliging binnen ios is het mogelijk om er achter te komen of de dataverbinding afgeluisterd wordt. De connectie zal namelijk falen waardoor er vervolgens een functie zal worden uitgevoerd die het falen moet afhandelen (Afbeelding 29). Door hier de applicatie af te sluiten zal het voor een hacker een stuk moeilijker worden om de verbinding af te luisteren. In combinatie met de overige beveiligingsimplementaties zal het tevens erg lastig worden om deze controle over te slaan. Het verwijderen van bestanden en database data In de huidige prototype worden bestanden als bytes in de database opgeslagen. Er worden geen bestanden op het bestandssysteem opgeslagen. Hierdoor is de beveiligingsimplementatie voor het verwijderen van bestanden vervallen. Daarnaast wordt er gebruik gemaakt van een Core Data database waarbij het verwijderen van data door de Core Data service wordt afgehandeld. Hierdoor is het niet mogelijk om de data te vervangen met de zeroblob functie zoals omschreven in het onderzoeksrapport 6. Afbeelding 29 - Zodra de connectie faalt wordt de applicatie afgesloten 55 6 Het verwijderen van database data - Onderzoeksrapport (Blz. 48)

56 Het managen van de keyboard cache Om het automatisch corrigeren van teksten goed te laten werken wordt alle keyboard input binnen het ios platform opgeslagen. Hierdoor bouwt ios een bibliotheek aan woorden op en kan het in het vervolg woorden voor de gebruiker aangeven of corrigeren (Zdziarski 283). Er bleken echter een aantal uitzonderingen te zijn: Data uit tekstvelden die gemarkeerd zijn als een input voor wachtwoorden worden niet opgeslagen. Teksten met alleen getallen worden niet opgeslagen. Dit is vooral om te voorkomen dat rekeningnummers en dergelijke kunnen worden achterhaald. Data uit tekstvelden waarbij autocorrect is uitgeschakeld worden niet opgeslagen. Kleine woorden worden niet altijd opgeslagen. Deze implementatie bestond dus enkel uit een paar instellingen. Dit heb ik dan ook bij elk tekstveld toegepast (Afbeelding 30). Afbeelding 30 - De instellingen voor het managen van de keyboard cache Het managen van de automatisch gemaakte applicatie screenshots Op het moment dat een applicatie naar de achtergrond verdwijnt wordt er een screenshots van het huidige scherm gemaakt. Dit wordt gedaan om een soepele overgang te creëren op het moment dat de applicatie weer wordt geopend. Zo zou het zomaar zo kunnen zijn dat een gebruiker zijn rekening heeft bekeken en vervolgens een andere applicatie opent. De applicatie wordt hierbij niet afgesloten, maar in het geheugen bewaard. In de afbeelding zou in dit geval zijn rekening te zien zijn. Doordat deze screenshots niet worden verwijderd is het mogelijk om deze afbeeldingen te achterhalen. 56

57 Jonathan geeft hiervoor een oplossing in zijn boek (Afbeelding 31). Echter heb ik voor een andere implementatie gekozen waarbij er een afbeelding wordt getoond van de applicatie in plaats van een leeg scherm (Afbeelding 32). De code die ik hiervoor gebruikt ziet er iets anders uit en zorgt er als het ware voor dat de afbeelding boven alle schermen zichtbaar wordt voordat de afbeelding gemaakt wordt (Afbeelding 33). Afbeelding 32 - De automatisch gemaakte afbeelding Afbeelding 33 - De code die ervoor zorgt dat de afbeelding naar voren komt Afbeelding 31 - De code om ervoor te zorgen dat de automatisch opgeslagen afbeeldingen geen belangrijke data bevatten 57

Handleiding. Opslag Online voor Windows Phone 8. Versie augustus 2014

Handleiding. Opslag Online voor Windows Phone 8. Versie augustus 2014 Handleiding Opslag Online voor Windows Phone 8 Versie augustus 2014 Inhoudsopgave Hoofdstuk 1. Inleiding 3 Hoofdstuk 2. Installatie 4 2.1 Downloaden van KPN Opslag Online QR Code 4 2.2 Downloaden van KPN

Nadere informatie

iphone app - Roll Call

iphone app - Roll Call iphone app - Roll Call Roll Call - iphone App Deze Paxton applicatie is gratis verkrijgbaar in de App Store. Deze applicatie is ontwikkeld om gebruikt te worden op elk ios apparaat versie 5.1 of hoger

Nadere informatie

Handleiding. Opslag Online. voor Android. Versie februari 2014

Handleiding. Opslag Online. voor Android. Versie februari 2014 Handleiding Opslag Online voor Android Versie februari 2014 Inhoudsopgave Hoofdstuk 1. Inleiding 3 Hoofdstuk 2. Installatie 4 2.1 Opslag Online downloaden via QR-code 4 2.2 Opslag Online downloaden via

Nadere informatie

Kenmerken Nomadesk Software

Kenmerken Nomadesk Software Kenmerken Nomadesk Software DATABEVEILIGING Versleutelde lokale schijf Nomadesk creëert een veilige virtuele omgeving, een Vault, op uw lokale harde schijf. Alle mappen en bestanden opgeslagen op de Vault

Nadere informatie

Aan de slag met de Mobiel Bankieren App voor iphone & ipad (ios) Met deze handleiding kunt u simpel van start

Aan de slag met de Mobiel Bankieren App voor iphone & ipad (ios) Met deze handleiding kunt u simpel van start Aan de slag met de Mobiel Bankieren App voor iphone & ipad (ios) Met deze handleiding kunt u simpel van start Mobiel bankieren met ING U gaat aan de slag met onze Mobiel Bankieren App. We helpen u om stapsgewijs

Nadere informatie

15 July 2014. Betaalopdrachten web applicatie gebruikers handleiding

15 July 2014. Betaalopdrachten web applicatie gebruikers handleiding Betaalopdrachten web applicatie gebruikers handleiding 1 Overzicht Steeds vaker komen we de term web applicatie tegen bij software ontwikkeling. Een web applicatie is een programma dat online op een webserver

Nadere informatie

Start de applicatie op om naar het inlogscherm te gaan. Onthoudt mijn gegevens

Start de applicatie op om naar het inlogscherm te gaan. Onthoudt mijn gegevens iphone app - Users Users - iphone App Deze Paxton applicatie is gratis verkrijgbaar in de App Store. Deze applicatie is ontwikkeld om gebruikt te worden op elk ios apparaat versie 5.1 of hoger en is uitgevoerd

Nadere informatie

Handleiding Opslag Online Client voor Windows. Versie maart 2015

Handleiding Opslag Online Client voor Windows. Versie maart 2015 Handleiding Opslag Online Client voor Windows Versie maart 2015 Inhoudsopgave Hoofdstuk 1. Inleiding 3 Hoofdstuk 2. Installatie 4 2.1 Systeemeisen 4 2.2 Downloaden van de software 4 2.3 Installeren van

Nadere informatie

Hoofdstuk 1 Introductie Meta. Hoofdstuk 2 Mobiel apparaat. 2.1 Land/regio 2.2 Datum/tijd Hoofdstuk 3 Meta-installatie

Hoofdstuk 1 Introductie Meta. Hoofdstuk 2 Mobiel apparaat. 2.1 Land/regio 2.2 Datum/tijd Hoofdstuk 3 Meta-installatie Magister Meta Inhoudsopgave Hoofdstuk 1 Introductie Meta 2 Hoofdstuk 2 Mobiel apparaat 4 2.1 Land/regio 4 2.2 Datum/tijd 4 Hoofdstuk 3 Meta-installatie 6 Hoofdstuk 4 Android/iOS functionaliteit Meta 9

Nadere informatie

HANDLEIDING EXTERNE TOEGANG CURAMARE

HANDLEIDING EXTERNE TOEGANG CURAMARE HANDLEIDING EXTERNE TOEGANG CURAMARE Via onze SonicWALL Secure Remote Access Appliance is het mogelijk om vanaf thuis in te loggen op de RDS omgeving van CuraMare. Deze handleiding beschrijft de inlogmethode

Nadere informatie

Externe toegang met ESET Secure Authentication. Daxis helpdesk@daxis.nl Versie 2.0

Externe toegang met ESET Secure Authentication. Daxis helpdesk@daxis.nl Versie 2.0 Externe toegang met ESET Secure Authentication Daxis helpdesk@daxis.nl Versie 2.0 Inhoudsopgave: Inhoudsopgave:... 1 Inleiding:... 2 Stap 1: Download eenmalig Eset Secure Authentication op uw smartphone...

Nadere informatie

Online aanvragen - Gebruikershandleiding. Online aanvragen Gebruikershandleiding

Online aanvragen - Gebruikershandleiding. Online aanvragen Gebruikershandleiding Online aanvragen Gebruikershandleiding 01 / 11 Online aanvragen Gebruikershandleiding Inhoud Inloggen registreren Wachtwoord vergeten Mijn account Mijn account - Functies Het aanvraagformulier Het aanvraagformulier

Nadere informatie

Handleiding Internet Veiligheidspakket Windows Phone 8 & 8.1 Versie september 2014

Handleiding Internet Veiligheidspakket Windows Phone 8 & 8.1 Versie september 2014 Handleiding Internet Veiligheidspakket Windows Phone 8 & 8.1 Versie september 2014 Inhoudsopgave Hoofdstuk 1. Inleiding 3 Hoofdstuk 2. Bestellen van het Internet Veiligheidspakket 4 Hoofdstuk 3. Installatie

Nadere informatie

De werkelijke namen en beschikbaarheid van menuopdrachten kunnen per mobiel platform verschillen. De stappen kunnen ook verschillen.

De werkelijke namen en beschikbaarheid van menuopdrachten kunnen per mobiel platform verschillen. De stappen kunnen ook verschillen. Handleiding Mobiel Printen via Xerox App 18-9-15 1. Voorwaarden - app vereist ios 7.0 of nieuwer - app vereist Android versie 4 of hoger. - er is momenteel nog geen app voor Windows Phone/MS Surface tablet.

Nadere informatie

Terminal Services. Document: Terminal Services T.b.v. relatie: Isaeus Auteur: Martin Waltmans Versie: 2.3 Datum: 20-3-2007 KB nummer: 100010

Terminal Services. Document: Terminal Services T.b.v. relatie: Isaeus Auteur: Martin Waltmans Versie: 2.3 Datum: 20-3-2007 KB nummer: 100010 Terminal Services Dit document beschrijft hoe op afstand kan worden ingelogd op een Terminal Server. Lees dit document zorgvuldig, voordat u voor het eerst hiervan gebruik maakt! Isaeus Solutions Tel:

Nadere informatie

Meest gestelde vragen en antwoorden. Inhoudsopgave

Meest gestelde vragen en antwoorden. Inhoudsopgave Meest gestelde vragen en antwoorden Inhoudsopgave Door wie is Taxatieweb gebouwd?... 2 Voor wie is Taxatieweb beschikbaar?... 2 Hoe moet ik dit programma op mijn PC installeren?... 2 Waarom hoef ik nu

Nadere informatie

Installatie Remote Backup

Installatie Remote Backup Juni 2015 Versie 1.2 Auteur : E.C.A. Mouws Pagina 1 Inhoudsopgave BusinessConnect Remote Backup... 3 Kenmerken... 3 Beperkingen... 3 Gebruik op meerdere systemen... 3 Systeemeisen... 4 Support... 4 Installatie...

Nadere informatie

Plato gebruikershandleiding

Plato gebruikershandleiding Plato gebruikershandleiding Deze handleiding is voor zowel nieuwe installaties van Plato als voor installaties die niet meer werken. Deze handleiding bestaat uit meerdere instructies voor zowel Microsoft

Nadere informatie

Update Hoofdstuk 11 Beveiligde E mail. 11.4.1 Software installeren. gebaseerd op de volgende versie: Mozilla Thunderbird 3.1.10

Update Hoofdstuk 11 Beveiligde E mail. 11.4.1 Software installeren. gebaseerd op de volgende versie: Mozilla Thunderbird 3.1.10 Update Hoofdstuk 11 Beveiligde E mail gebaseerd op de volgende versie: Mozilla Thunderbird 3.1.10 11.4.1 Software installeren 5. Vervalt De Importeerassistent zit niet meer in de nieuwe versie 6. Vervalt

Nadere informatie

cbox UW BESTANDEN GAAN MOBIEL! VOOR SMARTPHONES EN TABLETS MET HET ios BESTURINGSSYSTEEM GEBRUIKERSHANDLEIDING

cbox UW BESTANDEN GAAN MOBIEL! VOOR SMARTPHONES EN TABLETS MET HET ios BESTURINGSSYSTEEM GEBRUIKERSHANDLEIDING cbox UW BESTANDEN GAAN MOBIEL! VOOR SMARTPHONES EN TABLETS MET HET ios BESTURINGSSYSTEEM GEBRUIKERSHANDLEIDING Inleiding cbox is een applicatie die u eenvoudig op uw computer kunt installeren. Na installatie

Nadere informatie

Instructies Apple iphone & ipad icloud accounts Pagina 1

Instructies Apple iphone & ipad icloud accounts Pagina 1 Instructies Apple iphone & ipad icloud accounts Pagina 1 Instructies Apple iphone & ipad icloud Wanneer u icloud voor e-mail gebruikt is het niet mogelijk om de SMTP server te wijzigen; uw icloud instellingen

Nadere informatie

Handleiding. Opslag Online. voor Windows. Versie februari 2014

Handleiding. Opslag Online. voor Windows. Versie februari 2014 Handleiding Opslag Online voor Windows Versie februari 2014 Inhoudsopgave Hoofdstuk 1. Inleiding 3 Hoofdstuk 2. Installatie 4 2.1 Systeemeisen 4 2.2 Downloaden van software 4 2.3 Installeren van de software

Nadere informatie

Werken op afstand via internet

Werken op afstand via internet HOOFDSTUK 12 Werken op afstand via internet In dit hoofdstuk wordt uitgelegd wat er nodig is om op afstand met de ROS artikel database te kunnen werken. Alle benodigde programma s kunnen worden gedownload

Nadere informatie

iphone app - Rapporten

iphone app - Rapporten iphone app - Rapporten Rapporten - iphone App Net2 AN1114-NL Deze Paxton applicatie is gratis verkrijgbaar in de App Store. Deze applicatie is ontwikkeld om gebruikt te worden op elk ios apparaat versie

Nadere informatie

Introductie Werken met Office 365

Introductie Werken met Office 365 Introductie Werken met Office 365 Een introductie voor gebruikers Inhoud Inleiding... 4 Aanmelden bij Office 365... 4 Werken met Office 365 Outlook... 5 Werken met Outlook 2007/2010... 5 Werken met de

Nadere informatie

cbox UW BESTANDEN GAAN MOBIEL! VOOR LAPTOPS EN DESKTOPS MET WINDOWS PRO GEBRUIKERSHANDLEIDING

cbox UW BESTANDEN GAAN MOBIEL! VOOR LAPTOPS EN DESKTOPS MET WINDOWS PRO GEBRUIKERSHANDLEIDING cbox UW BESTANDEN GAAN MOBIEL! VOOR LAPTOPS EN DESKTOPS MET WINDOWS PRO GEBRUIKERSHANDLEIDING Inleiding cbox is een applicatie die u eenvoudig op uw computer kunt installeren. Na installatie wordt in de

Nadere informatie

Gebruikershandleiding MobiDM

Gebruikershandleiding MobiDM Gebruikershandleiding MobiDM Gebruikershandleiding voor versie 3.6.2 Versie 1.0 INHOUDSOPGAVE 1. DE MOBIDM PORTAL.... 2 1.1. INLOGGEN... 2 1.2. WACHTWOORD VERGETEN?... 2 2. TOESTELBEHEER.... 3 2.1. OS-AFHANKELIJKE

Nadere informatie

Security web services

Security web services Security web services Inleiding Tegenwoordig zijn er allerlei applicaties te benaderen via het internet. Voor bedrijven zorgt dit dat zei de klanten snel kunnen benaderen en aanpassingen voor iedereen

Nadere informatie

Hiervoor heeft u toegang nodig met uw persoonlijke account. Vraag uw account aan, aan de hoofd beheerder.

Hiervoor heeft u toegang nodig met uw persoonlijke account. Vraag uw account aan, aan de hoofd beheerder. Handleiding Gebruik Download Chrome voor de beste compatibiliteit Aanmelden link: http://www.omegabelgium.com/cms/ Hiervoor heeft u toegang nodig met uw persoonlijke account. Vraag uw account aan, aan

Nadere informatie

01/05. Websites Nederland over. Mobile marketing. Whitepaper #03/2013. Mabelie Samuels internet marketeer

01/05. Websites Nederland over. Mobile marketing. Whitepaper #03/2013. Mabelie Samuels internet marketeer 01/05 Websites Nederland over Mobile marketing Mabelie Samuels internet marketeer 02/05 Mobile marketing Kunt u zich uw eerste mobiele telefoon nog herinneren? Die van mij was een Motorola, versie onbekend,

Nadere informatie

SnelStart. Stappenplan. SBR btw-aangifte met SnelStart 12. Datum: 18-4-2014 Versie: 0.5 Status: Definitief Auteur: Selfservice

SnelStart. Stappenplan. SBR btw-aangifte met SnelStart 12. Datum: 18-4-2014 Versie: 0.5 Status: Definitief Auteur: Selfservice SnelStart Stappenplan SBR btw-aangifte met SnelStart 12 Datum: 18-4-2014 Versie: 0.5 Inleiding Vanaf 1 januari 2014 is het verplicht om de btw-aangifte te versturen volgens de Standard Business Reporting

Nadere informatie

Veilig e-mailen. Waarom e-mailen via een beveiligde verbinding? U vertrouwt de verbinding met de e-mailserver van InterNLnet niet

Veilig e-mailen. Waarom e-mailen via een beveiligde verbinding? U vertrouwt de verbinding met de e-mailserver van InterNLnet niet Veilig e-mailen E-mail heeft zich inmiddels ruimschoots bewezen als communicatiemiddel. Het is een snelle en goedkope manier om met anderen waar ook ter wereld te communiceren. Als gevolg hiervan vindt

Nadere informatie

Voor de installatie. Ga naar applicaties (zie rode pijl)

Voor de installatie. Ga naar applicaties (zie rode pijl) Handleiding Praktijkbegeleiding App uitgeverij Smit Om de screenshots (de afbeeldingen) in deze handleiding beter te kunnen zien is het raadzaam om in te zoomen. Voor de installatie Het installeren van

Nadere informatie

Veel gemak met je bank op zak. Overal je geldzaken regelen met de SNS Mobiel Bankieren app

Veel gemak met je bank op zak. Overal je geldzaken regelen met de SNS Mobiel Bankieren app Veel gemak met je bank op zak Overal je geldzaken regelen met de SNS Mobiel Bankieren app Inhoud Wat kun je met de app? Met de SNS Mobiel Bankieren app heb je de bank altijd bij je. Geld overmaken, saldo

Nadere informatie

Handleiding Mijn Websign

Handleiding Mijn Websign Handleiding Mijn Websign Gemnet BV Postbus 19535 2500 CM Den Haag Tel: 070-3436900 www.gemnet.nl info@gemnet.nl Versie 1.1, augustus 2011 Handleiding Mijn WebSign Document nummer 1.1 Augustus 2011 Handleiding

Nadere informatie

Basishandleiding. Werknemerloket. Loket.nl

Basishandleiding. Werknemerloket. Loket.nl Basishandleiding Werknemerloket Loket.nl Inhoudsopgave 1 WERKNEMERLOKET... 3 2 TOEGANG TOT WERKNEMERLOKET... 4 3 TOEGANG TOT DE APP WERKNEMERLOKET... 4 4 ESS VIA BANKPORTALEN (FINBOX)... 5 5 DE STARTPAGINA...

Nadere informatie

Aan de slag met het e-mailadres van uw nieuwe Website

Aan de slag met het e-mailadres van uw nieuwe Website Aan de slag met het e-mailadres van uw nieuwe Website Handleiding Inhoud 03 Basisinformatie e-mail 04 E-mailprogramma's 07 SMTP controleren als u geen e-mails kunt versturen 10 Veranderen van SMTP-poort

Nadere informatie

Taxis Pitane voor iphone / ipad

Taxis Pitane voor iphone / ipad Taxis Pitane voor iphone / ipad gebruikershandleiding Censys BV - Eindhoven Voorwoord Censys BV is erkend Apple iphone software ontwikkelaar en heeft eveneens zijn Taxis Pitane voor iphone 3G/3GS/4 versie

Nadere informatie

Onderzoeksverslag Beveiliging

Onderzoeksverslag Beveiliging Onderzoeksverslag Beveiliging Project 3 TI1B - Mohamed, Ruben en Adam. Versie 1.0 / 29 maart 2016 Pagina 1 Inhoud 1. INLEIDING... 3 2. VEILIGHEID EISEN... 3 3. SOFTWARE... FOUT! BLADWIJZER NIET GEDEFINIEERD.

Nadere informatie

Grafisch ontwerp. Referenties. https://developers.google.com/webmasters/mobile-sites/ http://www.bluetrainmobile.com/mobile-showcase

Grafisch ontwerp. Referenties. https://developers.google.com/webmasters/mobile-sites/ http://www.bluetrainmobile.com/mobile-showcase Mobiel Datanose Op dit moment is mobiel datanose niet goed gedaan; je krijgt gewoon de site te zien zoals je het te zien krijgt op pc's of laptops. Maar vaak heb je het probleem dat je op je mobiel moet

Nadere informatie

LegManager Mobile Handleiding

LegManager Mobile Handleiding LegManager Mobile Handleiding Handleiding LegManager Mobile 1 1. Inhoud 1. INHOUD... 2 2. PROGRAMMAVEREISTEN... 3 a. Vragen, opmerkingen en suggesties... 3 b. Welke tablet/ipad of smartphone/iphone kan

Nadere informatie

Gebruik tweefactorauthenticatie

Gebruik tweefactorauthenticatie Gebruik tweefactorauthenticatie Overweeg een wachtwoordmanager, simpele wachtwoorden zijn onveilig Factsheet FS-2015-02 versie 1.0 24 maart 2015 Accounts worden beveiligd door middel van een gebruikersnaam

Nadere informatie

Instructies Android Smartphone & Tablet Pagina 1

Instructies Android Smartphone & Tablet Pagina 1 Instructies Android Smartphone & Tablet Pagina 1 Instructies Android Smartphone & Tablet Deze handleiding gaat er vanuit dat u al een e-mail account geconfigureerd heeft in uw Android Smartphone of tablet

Nadere informatie

1. Uw tablet beveiligen

1. Uw tablet beveiligen 11 1. Uw tablet beveiligen Het risico op virussen of andere schadelijke software (malware genoemd) is bekend van pc s. Minder bekend is dat u ook op een tablet met malware geconfronteerd kan worden als

Nadere informatie

Mobiel Internet Veiligheidspakket

Mobiel Internet Veiligheidspakket Mobiel Internet Veiligheidspakket Gebruikershandleiding Mobiel Internet Veiligheidspakket voor Windows Mobile smartphones Mobiel IVP Windows Mobile Versie 1.0, d.d. 20-07-2011 Inleiding... 3 1 Installatie...

Nadere informatie

ZorgMail Secure e-mail

ZorgMail Secure e-mail ZorgMail Secure e-mail 2014 ENOVATION B.V. Alle rechten voorbehouden. Niets uit deze uitgave mag worden openbaar gemaakt of verveelvoudigd, opgeslagen in een data verwerkend systeem of uitgezonden in enige

Nadere informatie

Handleiding. Outlook Web App 2010 - CLOUD. Versie: 22 oktober 2012. Toegang tot uw e-mailberichten via internet

Handleiding. Outlook Web App 2010 - CLOUD. Versie: 22 oktober 2012. Toegang tot uw e-mailberichten via internet Handleiding Outlook Web App 2010 - CLOUD Versie: 22 oktober 2012 Toegang tot uw e-mailberichten via internet Handleiding Multrix Outlook Web App 2010 - CLOUD Voorblad Inhoudsopgave 1 Inleiding...3 2 Inloggen...4

Nadere informatie

Instructies Apple iphone & ipad Pagina 1

Instructies Apple iphone & ipad Pagina 1 Instructies Apple iphone & ipad Pagina 1 Instructies Apple iphone & ipad Deze handleiding gaat er vanuit dat u al een e-mail account geconfigureerd heeft in Apple iphone / ipad en we laten zien hoe u de

Nadere informatie

Inhoud. Mijn leven. het internet en ik

Inhoud. Mijn leven. het internet en ik Inhoud Inleiding...3 Hoofdstuk 1 Wachtwoord... 4 Hoofdstuk 2 Cybercrime... 6 Hoofdstuk 3 Oplichting... 8 Hoofdstuk 4 Verbinding... 10 Hoofdstuk 5 Webwinkels... 12 Hoofdstuk 6 Sociale media... 14 Hoofdstuk

Nadere informatie

iphone app - Timesheet

iphone app - Timesheet iphone app - Timesheet Timesheet - iphone app Deze Paxton applicatie is gratis verkrijgbaar in de App Store. Deze applicatie is ontwikkeld om gebruikt te worden op elk ios apparaat versie 5.1 of hoger

Nadere informatie

Algemeen Hoe kan ik een TopMec abonnement aanvragen? Waar kan ik de handleiding van de TopMec App downloaden? Waar kan ik de TopMec App downloaden?

Algemeen Hoe kan ik een TopMec abonnement aanvragen? Waar kan ik de handleiding van de TopMec App downloaden? Waar kan ik de TopMec App downloaden? F.A.Q. Algemeen Hoe kan ik een TopMec abonnement aanvragen? Als u nog geen mijngrossier.nl gebruikersnaam en wachtwoord heeft, kunt u een account aanvragen via http://www.mijngrossier.nl/aanmelden. Heeft

Nadere informatie

JPTrain. JPTrainBeta versie 25 mei 2015. Android client voor GBtrainHost

JPTrain. JPTrainBeta versie 25 mei 2015. Android client voor GBtrainHost JPTrain JPTrainBeta versie 25 mei 2015 Android client voor GBtrainHost Inhoud 1. Benodigd voor JPTrain... 3 2. Installatie JPTrain... 3 2.1 Conversie van oude versie(s)... 3 3. Eerste kennismaking met

Nadere informatie

Algemeen. Als u nog geen mijngrossier.nl account heeft kunt u deze aanvragen via www.mijngrossier.nl/aanmelden.

Algemeen. Als u nog geen mijngrossier.nl account heeft kunt u deze aanvragen via www.mijngrossier.nl/aanmelden. F.A.Q. Algemeen Hoe kan ik een TopMec abonnement aanvragen? Voor het aanvragen van een TopMec jaarabonnement is een mijngrossier.nl account nodig. Heeft u al een mijngrossier.nl account en wilt een TopMec

Nadere informatie

Hoofdstuk 1 Introductie Meta. Hoofdstuk 2 Mobiel apparaat. Hoofdstuk 3 Meta-installatie. Hoofdstuk 4 Android/iOS functionaliteit Meta

Hoofdstuk 1 Introductie Meta. Hoofdstuk 2 Mobiel apparaat. Hoofdstuk 3 Meta-installatie. Hoofdstuk 4 Android/iOS functionaliteit Meta Meta voor Hoofdstuk 1 Introductie Meta Hoofdstuk 2 Mobiel apparaat 2.1 Land/regio 2.2 Datum/tijd Hoofdstuk 3 Meta-installatie Hoofdstuk 4 Android/iOS functionaliteit Meta 4.1 Starten 4.2 Inzien gegevens

Nadere informatie

Hoofdstuk 4 Android/iOS functionaliteit Meta

Hoofdstuk 4 Android/iOS functionaliteit Meta Hoofdstuk 1 Introductie Hoofdstuk 2 Mobiel apparaat 2 4 2.1 Land/regio 4 2.2 Datum/tijd 4 Hoofdstuk 3 -installatie Hoofdstuk 4 Android/iOS functionaliteit 4.1 Starten 6 9 9 4.2 Inzien gegevens 11 4.3 Navigatie

Nadere informatie

Instructie Inloggen op Mijn a.s.r. Bank

Instructie Inloggen op Mijn a.s.r. Bank Instructie Inloggen op Mijn a.s.r. Bank Problemen met inloggen? Wij helpen u graag! Stappenplan inloggen Stap 1: Ga naar www.asr.nl Stap 2: Klik rechts bovenin het scherm op de tekst inloggen. Stap 3:

Nadere informatie

Thuiswerkplek; Antwoorden op veelgestelde vragen.

Thuiswerkplek; Antwoorden op veelgestelde vragen. Thuiswerkplek; Antwoorden op veelgestelde vragen. Installeer Citrix Receiver om toegang te krijgen. Onderstaand scherm verschijnt iedere keer als ik inlog op login.rijnstate.nl Dit probleem wordt veroorzaakt

Nadere informatie

Outlook Web App 2010 XS2office

Outlook Web App 2010 XS2office Handleiding Outlook Web App 2010 XS2office Toegang tot uw contacten, adressen en e-mail berichten via internet XS2office Versie: 22 juli 2014 Helpdesk: 079-363 47 47 Handleiding OWA Helpdesk: 079-363 47

Nadere informatie

Handleiding installatie TROPAZ - APP voor Android (mobiele apparaten)

Handleiding installatie TROPAZ - APP voor Android (mobiele apparaten) Handleiding installatie TROPAZ - APP voor Android (mobiele apparaten) Algemene inleiding en informatie De Tropaz-app van de trombosedienst Friesland Noord is alleen beschikbaar voor cliënten die onder

Nadere informatie

F U N C T I O N E E L O N T W E R P V O O R F U L L H O U S E M O B I LE ( V I S I O N V E R S I E )

F U N C T I O N E E L O N T W E R P V O O R F U L L H O U S E M O B I LE ( V I S I O N V E R S I E ) F U N C T I O N E E L O N T W E R P V O O R F U L L H O U S E M O B I LE ( V I S I O N V E R S I E ) Datum: 29-09-2010 Auteur: Dairo Bosschart Versie: 1.0 Document: Functioneel_ontwerp (vision versie).docx

Nadere informatie

1. Magister info internet Cambreur College

1. Magister info internet Cambreur College 1. Magister info internet Cambreur College Het Cambreur College gebruikt Magister als schooladministratiesysteem. Hierin worden onder andere de persoonlijke gegevens van de leerlingen en ouders/verzorgers,

Nadere informatie

Handleiding OwnCloud voor SG de Overlaat

Handleiding OwnCloud voor SG de Overlaat Handleiding OwnCloud voor SG de Overlaat Je eigen wolk binnen de Overlaat Geschreven door: Maurice Heeren Datum: 10-12-2014 Versie 2.0 Inhoudsopgave Inhoudsopgave... 2 Inleiding... 3 Toegang krijgen tot

Nadere informatie

Installatie handleiding Reinder.NET.Optac

Installatie handleiding Reinder.NET.Optac Installatie handleiding Reinder.NET.Optac Versie : 2012.1.0.1 Inhoudsopgave 1 Systeemvereisten... 2 2 Pincode... 2 3 Licentie... 2 4 Installatie... 2 5 Eerste gebruik... 4 Titel Pagina 1 van 6 23-1-2012

Nadere informatie

Handleiding voor het lezen van NRC Handelsblad of nrc.next op de ipad, iphone en ipod Touch

Handleiding voor het lezen van NRC Handelsblad of nrc.next op de ipad, iphone en ipod Touch Handleiding voor het lezen van NRC Handelsblad of nrc.next op de ipad, iphone en ipod Touch Klantenservice NRC Media 2015/2016 2 Inhoud Inhoud... 3 1. Installeren... 4 2. Account aanmaken... 6 3. Woonachtig

Nadere informatie

Technisch ontwerp. Projectteam 6. Project "Web Essentials" 02 april 2009. Versie 2.1.0

Technisch ontwerp. Projectteam 6. Project Web Essentials 02 april 2009. Versie 2.1.0 Projectteam 6 Faculteit Natuur en Techniek Hogeschool Utrecht Projectleider: Hans Allis, hans.allis@student.hu.nl Technisch ontwerp Project "Web Essentials" 02 april 2009 Versie 2.1.0 Teamleden: Armin

Nadere informatie

Handleiding TROPAZ - APP voor Android Trombosedienst Leiden

Handleiding TROPAZ - APP voor Android Trombosedienst Leiden Handleiding TROPAZ - APP voor Android Trombosedienst Leiden Algemene inleiding en informatie De Tropaz-app van de trombosedienst Leiden is alleen beschikbaar voor patiënten die onder behandeling zijn bij

Nadere informatie

Online aanvragen Gebruikershandleiding

Online aanvragen Gebruikershandleiding Online aanvragen Gebruikershandleiding 1 2 Inleiding Om een aanvraag te kunnen doen bij VSBfonds moet u zich eerst online registreren. In deze handleiding vindt u een beschrijving van het registratieproces

Nadere informatie

In dit artikel zullen we u uitleggen hoe u uw e-mail in moet stellen in Microsoft Outlook (2013).

In dit artikel zullen we u uitleggen hoe u uw e-mail in moet stellen in Microsoft Outlook (2013). Auteur: Evert Jan Steenvoorden Datum: 23-12-2014 E-mail instellen in Outlook (2013) In dit artikel zullen we u uitleggen hoe u uw e-mail in moet stellen in Microsoft Outlook (2013). Stap 1 Configuratiescherm

Nadere informatie

Resultaten van de scan. Open poorten. High vulnerabilities. Medium vulnerabilites. Low vulnerabilities

Resultaten van de scan. Open poorten. High vulnerabilities. Medium vulnerabilites. Low vulnerabilities De Nessus scan We hebben ervoor gekozen om de webserver met behulp van Nessus uitvoerig te testen. We hebben Nessus op de testserver laten draaien, maar deze server komt grotendeels overeen met de productieserver.

Nadere informatie

Instructies Windows Live Mail Pagina 1

Instructies Windows Live Mail Pagina 1 Instructies Windows Live Mail Pagina 1 Instructies Windows Live Mail Deze handleiding gaat er vanuit dat u al een e-mail account geconfigureerd heeft in Windows Live Mail en we laten zien hoe u de SMTP

Nadere informatie

Veel gemak met je bank op zak. Overal je geldzaken regelen met de SNS Mobiel Bankieren app

Veel gemak met je bank op zak. Overal je geldzaken regelen met de SNS Mobiel Bankieren app Veel gemak met je bank op zak Overal je geldzaken regelen met de SNS Mobiel Bankieren app Inhoud Wat kun je met de app? Met de SNS Mobiel Bankieren app heb je de bank altijd bij je. Geld overmaken, saldo

Nadere informatie

Basishandleiding. Employee Self Service/ App Werknemerloket (werknemer) loket.nl

Basishandleiding. Employee Self Service/ App Werknemerloket (werknemer) loket.nl Basishandleiding Employee Self Service/ App Werknemerloket (werknemer) loket.nl Inhoudsopgave 1 ESS LOKET.NL... 3 2 TOEGANG TOT ESS... 4 3 WERKNEMER TOEGANG TOT APP WERKNEMERLOKET... 4 4 ESS VIA BANKPORTALEN

Nadere informatie

Quick reference Smartflow App

Quick reference Smartflow App Het opstarten van de app 1. Open de smartflow app. 2. U wordt gevraagd om een domein naam in te vullen. Vul de domein naam in die u heeft gekregen van 88degrees. 3. Log in met u inloggegevens. Het hoofd

Nadere informatie

App4Broker : uw nieuwe app!

App4Broker : uw nieuwe app! App4Broker : uw nieuwe app! Pagina 1 van 20 Inhoudsopgave 1. U GEBRUIKT MYBROKER AL... 3 1.1. APP4BROKER DOWNLOADEN OP UW TABLET... 3 1.2. INSTALLATIE VAN HET CERTIFICAAT... 4 2. U HEEFT NOG NOOIT MET

Nadere informatie

Mobile Device Manager Handleiding voor ios

Mobile Device Manager Handleiding voor ios Mobile Device Manager Handleiding voor ios Inhoud 1 Welkom bij Mobile Device Manager 3 1.1 Introductie tot de installatie 3 2 Uitrollen van een ios apparaat 4 2.1 Connectie maken met de server 5 2.2 Downloaden

Nadere informatie

Handleiding inloggen in I-Muis via Citrix Receiver.

Handleiding inloggen in I-Muis via Citrix Receiver. Handleiding inloggen in I-Muis via Citrix Receiver. Deze handleiding beschrijft het inloggen in I-Muis voor Apple gebruikers. Belangrijk is dat u uw contract van First-line bij u heeft. Hierop staan de

Nadere informatie

Handleiding E-mail clients

Handleiding E-mail clients Handleiding E-mail clients Inhoudsopgave Handleiding E-mail clients... 1 1 POP of IMAP... 2 2 Outlook... 2 2.1 Instellen Mailaccount... 2 Stap 1... 2 Stap 2... 2 Stap 3... 3 Stap 4... 3 Stap 5... 3 Stap

Nadere informatie

Handleiding HBO GO V.2

Handleiding HBO GO V.2 Handleiding HBO GO V.2 Inhoudsopgave: Inhoudsopgave 2 Ophalen HBO GO Ipad applicatie in de App Store. 3 Ophalen HBO GO Android Tablet applicatie in de Google Play Store.. 4 HBO GO Registreren en Inloggen..

Nadere informatie

Inhoud Wat is mobiel werken?... 2 Installeren VPN Client... 3 Laptop... 3 Windows 8... 4 Windows 7... 10 Mac OS X... 16 Linux... 16 Tablet...

Inhoud Wat is mobiel werken?... 2 Installeren VPN Client... 3 Laptop... 3 Windows 8... 4 Windows 7... 10 Mac OS X... 16 Linux... 16 Tablet... 333 Inhoud Wat is mobiel werken?... 2 Installeren VPN Client... 3 Laptop... 3 Windows 8... 4 Windows 7... 10 Mac OS X... 16 Linux... 16 Tablet... 18 ios (ipad)... 18 Android... 21 Windows... 21 Smartphone...

Nadere informatie

Handleiding Installatie Certificaat Extranet

Handleiding Installatie Certificaat Extranet Handleiding Installatie Certificaat Extranet Inhoudsopgave 1 Precondities 2 2 Servicedesk Extranet 2 3 Wachtwoordpolicy CAK 2 4 Het Installeren 3 5 Aandachtspunten 4 6 Techniek 5 Classificatie: openbaar

Nadere informatie

Instructies Eudora OSE Pagina 1

Instructies Eudora OSE Pagina 1 Instructies Eudora OSE Pagina 1 Instructies Eudora OSE Deze handleiding gaat er vanuit dat u al een e-mail account geconfigureerd heeft in Eudora OSE en we laten zien hoe u de SMTP server kunt wijzigen

Nadere informatie

Mobile Connect & Apple

Mobile Connect & Apple Mobile Connect & Apple Software versie 4.05.01.00 - Always Best Connected - Hoe Installeert U de Vodafone Mobile Broadband software op uw Apple computer. Index van deze handleiding: Inleiding Het installeren

Nadere informatie

aanmaken van een webaccount om e-books te kunnen lenen P. 3-7 het lenen van e-books de basis P. 13-14

aanmaken van een webaccount om e-books te kunnen lenen P. 3-7 het lenen van e-books de basis P. 13-14 aanmaken van een webaccount om e-books te kunnen lenen P. 3-7 wachtwoord vergeten P. 8-9 uw account beheren P. 10-12 het lenen van e-books de basis P. 13-14 het lenen van e-books online lezen (is streamed

Nadere informatie

Handleiding. Measure App. Versienummer:1.4

Handleiding. Measure App. Versienummer:1.4 Handleiding Measure App Versienummer:1.4 Datum: 14-12-2015 Voorwoord Hartelijk dank voor de aanschaf van de Measure App. M App zal u en uw collega s in staat stellen om begeleid in te meten of na te meten.

Nadere informatie

e-sign app voor ios Handleiding voor installatie en gebruik

e-sign app voor ios Handleiding voor installatie en gebruik Handleiding voor installatie en gebruik Inhoud e-sign app installeren en registreren van uw gebruikersprofiel... 3 Opdrachten selecteren en autoriseren... 11 Overige instellingen en opties... 17 2 e-sign

Nadere informatie

Portal Handleiding voor de gebruiker 4.8

Portal Handleiding voor de gebruiker 4.8 Portal Handleiding voor de gebruiker 4.8 Deze handleiding beschrijft op gebruikersniveau de basisfuncties van de portal. Version: x.x MOBIDM Gebruikershandleiding Pagina 1 Index Introductie 2 Help-bestanden

Nadere informatie

Handleiding Back-up Online Windows Versie april 2014

Handleiding Back-up Online Windows Versie april 2014 Handleiding Back-up Online Windows Versie april 2014 Inhoudsopgave Hoofdstuk 1. Inleiding 3 Hoofdstuk 2. Installatie 4 2.1 Installatie procedure vanuit de installatie-email 4 2.2 Installatie procedure

Nadere informatie

Gebruiksaanwijzing Remote Backup

Gebruiksaanwijzing Remote Backup Gebruiksaanwijzing Remote Backup December 2015 Versie 1.3 Auteur : E.C.A. Mouws Pagina 1 Inhoudsopgave BusinessConnect Remote Backup... 3 Ondersteunde browsers... 3 Inloggen in portal... 3 Gebruik op meerdere

Nadere informatie

Handleiding Magister App Leerlingen

Handleiding Magister App Leerlingen Handleiding Magister App Leerlingen Inhoudsopgave Hoofdstuk 1 Introductie Meta... 2 Hoofdstuk 2 Mobiel apparaat... 2 2.1 Land/regio... 2 2.2 Datum/tijd... 2 Hoofdstuk 3 Meta-installatie... 3 Hoofdstuk

Nadere informatie

Quick Start RitMeter Kilometerregistratie

Quick Start RitMeter Kilometerregistratie Quick Start RitMeter Kilometerregistratie Kilometerregistratie op je Android telefoon SIMOSO 2013 Quick Start RitMeter Kilometerregistratie Kilometerregistratie op je Android telefoon RitMeter, de eenvoudigste

Nadere informatie

Parkinson Thuis Probleemoplossing

Parkinson Thuis Probleemoplossing Parkinson Thuis Probleemoplossing Probleemoplossing Fox Inzicht App In sommige gevallen kan er een handeling van uw kant nodig zijn om ervoor te zorgen dat de apps altijd ingeschakeld zijn. Dit zal voornamelijk

Nadere informatie

The Nanny Versie Informatie

The Nanny Versie Informatie The Nanny Versie Informatie The Nanny versie 4.2.2 29 Mei 2012 Document versie 1.2 Copyright 2012 TecSoft B.V. Kaatsheuvel. Niets uit de uitgave mag worden vermenigvuldigd, Pagina opgeslagen 1 van 7 in

Nadere informatie

2. Wat kost HBO GO? HBO GO is onderdeel van het HBO Pakket. Daarom betaalt u er niets extra voor.

2. Wat kost HBO GO? HBO GO is onderdeel van het HBO Pakket. Daarom betaalt u er niets extra voor. Q&A HBO GO Versie: 0 Versie: 1 Datum: 27 april 2012 ------------------------------------------------------------------------------------------------------------ Algemeen Instellingen Problemen oplossen

Nadere informatie

MobiDM App handleiding voor ios

MobiDM App handleiding voor ios MobiDM App handleiding voor ios Deze handleiding beschrijft de installatie en gebruik van de MobiDM App voor ios. Version: x.x Pagina 1 Index 1. WELKOM IN MOBIDM... 2 1.1. INTRODUCTIE TOT DE INSTALLATIE...

Nadere informatie