Hvordan ivareta informasjonssikkerheten?

Gjør deg kjent med hva som er god praksis for internkontroll og informasjonssikkerhet, og sørg for å integrere denne. Dette gjelder både når du designer appen og for eventuelle sentrale servere som appen skal kommunisere med. 

Når du passord skal benyttes, sørg for formålstjenlig "salting" og "hashing" på eventuelle sentrale servere. I situasjoner hvor "hashing" av passord ikke er mulig, for eksempel for en app for håndtering av passord, forklar hva dette innebærer for brukeren på en klar og tydelig måte.

Bruk krypterte forbindelser under overføringer for å ivareta informasjonssikkerheten, for eksempel bruke SSL/TLS. Du bør alltid bruke krypterte forbindelser ved overføring av brukernavn, passord og annen sensitiv informasjon, inkludert enheters ID eller andre unike ID-er. For nettsteder som krever innlogging, bør man benytte en kryptert forbindelse for all kommunikasjon så lenge man er innlogget.

Hvis appen din lagrer opplysninger for senere bruk, bør du også vurdere å kryptere disse opplysningene. Krypteringsmetoden må da tilpasses til opplysningenes sensitivitet. Vurder om du etter omstendighetene kan utnytte operativsystemets muligheter for kryptert lagring av data.

Bruk anerkjente krypteringsmetoder fremfor å utarbeide din egen kryptografi. Bli kjent med de mest formålstjenlige krypteringsmetodene for overføring og/eller lagring av opplysninger, og implementer disse på etablert vis.

Du bør unngå å lage egen kode for funksjonalitet som allerede har godt innarbeidede bruksområder som du kan benytte (for eksempel for betaling via app eller oppdatering av app).

Du bør være forsiktig dersom appen din benytter data fra andre apper eller steder. Vær oppmerksom på opplysningenes sensitivitet i den opprinnelige sammenhengen, ikke kun i sammenheng med din app.

 


Eksempel

Formålet med appen er å gjøre det mulig for ansatte å vise og redigere dokumenter mens de er på farten i jobbsammenheng. Tilgang til dokumentene skjer gjennom et virtuelt nettverk (VPN) ved at appen kontakter en intern filserver som om den ansatte var på kontoret.

På den interne filserveren er det også lagret er en del dokumenter som inneholder konfidensiell virksomhetsinformasjon, samt personopplysninger. Av hensyn til sikkerhetskonsekvensene ved et innbrudd på kontoret, benyttes fulldiskkryptering for serveren. Denne er fysisk adskilt og låst inne i et sikkert serverrom.

Ettersom appen kan brukes til å vise de samme filene som serveren, bestemmer du deg for å legge inn lignende begrensninger, inkludert:

  • ingen lagring av dokumenter på enheten med mindre kryptert lagring er aktivertbegrenset
  • mulighet til å ta skjermkopier av dokumenter i appen.

 



I tillegg til den generelle sårbarheten som er knyttet til bruk av Internett eller datamaskiner, må du være bevisst på sårbarheter som mer spesifikt er knyttet til mobilapper, som:

  • Injeksjonsproblemer mellom apper – på samme måte som nettprogrammer kan være sårbare overfor SQL-injeksjoner, kan apper være sårbare overfor injeksjoner ved aksept av input fra andre apper. Sørg for at input blir rensket på en hensiktsmessig måte som også er tilpasset formålet, når din app aksepterer slik input.
  • Mangelfull sjekk av SSL- /TLS-sertifikater – bruk av krypteringen som ligger i en SSL- /TLS-forbindelse er ingen garanti for en sikker forbindelse. Du må også verifisere identiteten til den parten du kommuniserer med ved å sjekke sertifikatet. Hvis du foretrekker å bruke sertifikat-"pinning" i stedet for sertifikater fra en tiltrodd sertifikatutsteder, må du sikre at denne funksjonen er satt opp på riktig måte.
  • Feilkonfigurering av SSL /TLS på sentrale servere – påse at eventuelle sentrale servere kun tillater forbindelser med sterk kryptering og har et gyldig SSL - / TLS-sertifikat. Det begrensede grensesnittet
    på en mobil enhet, kan gjøre det vanskelig å fastslå sikkerhetsstatusen for SSL- / TLS-forbindelser. Hvis den mobile enheten foretar en grundig sjekk av forbindelsen og ender opp med å avvise forbindelsen grunnet en dårlig konfigurert server, kan appen din bli ubrukelig.


Avhengig av hvor omfattende risikoene for personvernet og informasjonssikkerheten er, vurder å foreta en sikkerhetstest både av appen og av eventuelle sentrale servere før utrullingen. Skanning av sårbarhet og grundig testing mot inntrengere kan avdekke potensielle problemer. Hvis du blir oppmerksom på eventuelle problemer og møter disse på en god måte, vil det innebære en kvalitetssikring av appens sikkerhet.