Uber Data Breach: Wie Sie Ihre App vor solchen Vorfällen schützen können

Veröffentlicht: 2017-11-28

Im Jahr 2016 verlor Uber 57 Millionen Benutzer- und Fahrerinformationen an Hacker, denen sie dann 1.00.000 US-Dollar zahlten, um die Daten zu löschen.

Der Vorfall kam vor ein paar Tagen ins Bild, als ihr CEO Dara Khosrowshahi einen Beitrag veröffentlichte, der Licht auf die Datenschutzverletzung warf . Und seitdem ist der Fall der App-Sicherheit in den Fokus gerückt.

Uber ist nicht der erste Fall einer Datenpanne, es gibt eine Reihe von Fällen, in denen die persönlichen Daten der Benutzer kompromittiert wurden: ein Ereignis, das die Menschen davor zurückschrecken lässt, mobile Apps zu verwenden, die nach ihren Informationen fragen.

Hier ist ein Bild, das die Haltung der Benutzer mobiler Apps angesichts von Bedenken hinsichtlich der App-Sicherheit zeigt –

Bedenken hinsichtlich der App-Sicherheit

Sehen Sie, wie grausam es ist?

Sie können jedoch verhindern, dass Ihre App zur nächsten Fallstudie wird, in der Marken ermahnt werden, ihr App-Sicherheitsspiel auf den Punkt zu bringen.

Hier ist wie -

1. Schützen Sie Ihre App vor Kratzern

Im Quellcode der App gibt es eine Reihe von Schwachstellen, aber die Mehrheit der App-Unternehmen konzentriert sich nur auf den Netzwerkteil, während sie sich auf die Implementierung von Best Practices für die Sicherheit mobiler Apps konzentriert . Es gibt so viele Orte, die die Grundlage für Datenschutzverletzungen sein können – Codierungsfehler, Codetests usw.

Hier sind die Dinge, die Sie tun können, um Ihre App vom Tag ihrer Existenz an zu schützen –

  • Schützen Sie den Code Ihrer App durch Verschlüsselung. Es gibt zwei Möglichkeiten, dies zu tun – Minimierung und Verschleierung, aber sie reichen nicht aus. Es wird empfohlen, bei gut unterstützten Algos zu bleiben, die mit der API-Verschlüsselung kombiniert werden.
  • Führen Sie häufig Quellcode-Scans für Ihre Codes durch

Das Kennzeichen eines sicheren Codes ist, dass er auch nach der Portierung zwischen Betriebssystemen und Geräten sicher bleibt. Das Erstellen eines agilen Codes hilft an dieser Front enorm.

2. Sichern Sie die Netzwerkverbindung vom Backend

lang

Die Cloud-Server, auf die über die API Ihrer App zugegriffen wird, müssen über geeignete Sicherheitsmaßnahmen verfügen, um unbefugten Zugriff zu verhindern und die Daten der Benutzer zu schützen. Die API-Überprüfung sollte so erfolgen, dass keine vertraulichen Informationen vom Client an die App-Datenbank oder den Server weitergegeben werden.

Damit dieser Schritt ein Erfolg wird, muss Ihr Back-End-Entwicklungsprozess robust sein .

So sichern Sie die Netzwerkverbindung

  • Erstellen Sie verschlüsselte Container zum Speichern von Dokumenten und Daten
  • Führen Sie eine Reihe von Schwachstellenanalysen und Penetrationstests Ihres Netzwerks durch, um sicherzustellen, dass die Daten geschützt sind.
  • Verschlüsseln Sie Datenbanken und Verbindungen mit SSL, VPN und TLS für zusätzliche Sicherheit
  • Federation anwenden – die Maßnahme, die Ressourcen über Server verteilt, sodass sie nicht alle an einem Ort sind, während die Schlüsselressourcen von den Benutzern getrennt werden.

3. Authentifizierungs-, Identifikations- und Autorisierungsprozess eingerichtet haben

So stellen Sie sicher, dass Ihre App identifiziert, authentifiziert und autorisiert wird

  • Stellen Sie sicher, dass die APIs, die Ihre App verwendet, nur diejenigen sind, die zum Funktionieren benötigt werden, und gewähren Sie nur Zugriff auf die Teile, die im Fokus stehen, und nicht auf alle App-Funktionalitäten.
  • Es gibt eine Reihe von Tools und Protokollen, die Sie verwenden können und die Sie unbedingt befolgen können, wenn sich Ihre App in der Entwicklungsphase befindet. Hier sind sie -
    • JSON Web Token – Das leichte Tool wird zum Verschlüsseln des Datenaustauschs verwendet, seine unkomplizierte Implementierung macht es ideal für mobile Apps.
    • OpenID Connect – Es ist ein Protokoll, das es den Benutzern ermöglicht, ihre Anmeldeinformationen mithilfe eines ID-Tokens über verschiedene Domänen hinweg wiederzuverwenden, um ihre Zeit bei der Registrierung und Anmeldung jedes Mal mit denselben Informationen zu sparen.
    • OAuth2 – Das Protokoll wird verwendet, um eine sichere Verbindung über einen einmaligen benutzerspezifischen Token zu verwalten. Nach der Installation des Frameworks auf dem Autorisierungsserver können Sie Ihren Benutzern die Erlaubnis zwischen den Endbenutzern und dem Client erteilen, indem Sie Anmeldeinformationen wie 2-Faktor-SMS-Fragen sammeln.

4. Führen Sie eine umfassende Reihe von Tests durch

Im Gegensatz zu einer Web-App werden die meisten Daten mobiler Apps lokal gespeichert, und da sich die Daten auf einem Gerät befinden, dessen Bandbreite, Leistung und Qualität variieren, ist das Risiko, dass es gehackt wird, viel größer.
Neben dem Instabilitätsfaktor in Geräten gibt es auch einige Apps, die dazu neigen, Daten freizugeben, ohne dass die Benutzer es wissen, wie Geschlecht, Alter, Gerätenutzung usw.

Möglichkeiten, um sicherzustellen, dass die Kundendaten in der App sicher sind –

  • Mit Hilfe der Verschlüsselung auf Dateiebene können Sie die Daten Datei für Datei schützen. Dies ist eine der Möglichkeiten, die ruhenden Daten zu verschlüsseln, sodass sie nicht gelesen werden, wenn sie abgefangen werden.
  • Tools wie die Appcelator-Plattform sorgen dafür, dass mobile Daten, die lokal gespeichert sind, sicher sind.

Die Schlüsselverwaltung sollte Ihre Priorität sein. Die Grundlage eines starken Algorithmus sind seine ebenso stärkeren Zertifikate und Schlüssel.

5. Geplante API-Sicherheitsstrategie

Da die mobile Entwicklung eng mit APIs verbunden ist, hängt ein Großteil der Sicherheit einer App davon ab, dass ihre API sicher ist. APIs übertragen Daten zwischen den Anwendungen, der Cloud und zwischen einer Reihe von Benutzern. Alle beteiligten Parteien müssen identifiziert und autorisiert werden, um die Daten einsehen und verwenden zu können. APIs sind der Grundstein für Funktionalität, Inhalt und Daten, daher kann es lange dauern, bis Sie sicherstellen, dass diese gesichert sind.

API

Es gibt drei Phasen in der API, um die Sie sich kümmern müssen, nämlich – Identifizierung, Authentifizierung und Autorisierung.

Schauen wir uns die Elemente aller drei unten an –

Identifikation

Der erste Teil des Prozesses, Identifizierungs-Hacks, kann durch die Implementierung von API-Schlüsseln verhindert werden. Diese Schlüssel sind zufällige, eindeutige Kennungen, die Passwörter überflüssig machen.
Während Sie mit den API-Schlüsseln sicherstellen können, wann die Daten gesehen werden, können Sie nicht entscheiden, dass sie von jemandem gesehen werden, der sie sehen sollte.

Authentifizierung

Es ist der Prozess, der garantiert, dass die Informationen von jemandem gesehen werden, der sie sehen sollte. In diesem Stadium legen Sie Benutzernamen und Passwörter fest, um sicherzustellen, dass das System eine zusätzliche Sicherheitsstufe erhält.

Genehmigung

Dieser Schritt beantwortet die Frage – Was kann man mit der API machen. Die Schritte zum Sichern dieses Prozesses umfassen die 2-Faktor-Autorisierung, Tokens und Einmalpasswörter.

6. Testen Sie die App

Unabhängig davon, ob es sich bei Ihrer App um eine hybride, native oder Web-App handelt, sollte sie nicht nur auf Benutzerfreundlichkeit und Funktionalität, sondern auch auf Sicherheit getestet werden. Es gibt eine Reihe von Schritten, die Sie befolgen müssen, um sicherzustellen, dass Ihre App qualitätsgesichert ist, um sicherzustellen, dass sie sicher ist.

So können Sie sicherstellen, dass Ihre App auf Sicherheit getestet wird –

  • Penetrationstest – Es bedeutet, das Netzwerk und das System zu untersuchen, um Schwachstellen zu finden.
  • Verwenden Sie Emulatoren, um zu testen, wie sich die App in einer simulierten Umgebung verhält.
  • Testen Sie die Autorisierung und Authentifizierung, das Sitzungsmanagement und die Datensicherheit im Detail.

Das waren also die 6 Möglichkeiten, die Sie in Ihrem App-Entwicklungsprozess anwenden könnten, um sicherzustellen, dass Ihre App nicht im Rampenlicht steht.

Achte darauf, dass du dich rechtzeitig einarbeitest, solange du Zeit hast.