Mobile Application Development and Security - Cheatsheet.pdf

Mobile Application Development and Security - Cheatsheet
Mobile Application Development and Security - Cheatsheet Grundlagen der mobilen Sicherheit Definition: Basiswissen über Schutzmaßnahmen und potenzielle Bedrohungen im Bereich mobiler Geräte und Anwendungen. Details: Betriebssystemsicherheit: Nutzung von Sicherheitsfunktionen wie Sandboxen. Anwendungssicherheit: Prüfung auf Schwachstellen, Verwendung von sicheren Protokollen. Netzwerksicherheit: Da...

© StudySmarter 2024, all rights reserved.

Mobile Application Development and Security - Cheatsheet

Grundlagen der mobilen Sicherheit

Definition:

Basiswissen über Schutzmaßnahmen und potenzielle Bedrohungen im Bereich mobiler Geräte und Anwendungen.

Details:

  • Betriebssystemsicherheit: Nutzung von Sicherheitsfunktionen wie Sandboxen.
  • Anwendungssicherheit: Prüfung auf Schwachstellen, Verwendung von sicheren Protokollen.
  • Netzwerksicherheit: Datenverschlüsselung, sichere Kommunikation.
  • Physische Sicherheit: Geräteverschlüsselung, Diebstahlschutz.
  • Benutzeraufklärung: Sensibilisierung für sicherheitsbewusstes Verhalten.
  • Regelmäßige Updates: Patch-Management für Betriebssystem und Apps.

Schwachstellenanalyse und Bedrohungsmodellierung

Definition:

Identifizierung und Bewertung von Schwachstellen und Bedrohungen in mobilen Anwendungen.

Details:

  • Ziele: Ermittlung potenzieller Sicherheitslücken und Bedrohungen
  • Schwachstellenanalyse: Untersuchung des Codes, der Architektur und der Datenflüsse
  • Bedrohungsmodellierung: Erstellung von Modellen zur Identifizierung und Bewertung von Bedrohungen
  • Bekannte Methoden: STRIDE, DREAD, PASTA
  • Tools: OWASP ZAP, Burp Suite
  • Best Practices: Regelmäßige Überprüfung, Automatisierung, frühzeitige Integration in den Entwicklungsprozess

Plattformübergreifende Frameworks: React Native und Flutter

Definition:

Cross-Platform-Frameworks: Erstellung von mobilen Anwendungen, die auf mehreren Betriebssystemen laufen können.

Details:

  • React Native: Entwickelt von Facebook, nutzt JavaScript und JSX, ermöglicht native UI-Komponenten.
  • Flutter: Entwickelt von Google, nutzt Dart, bietet 'Hot Reload' für schnelle Entwicklung und eigene UI-Engine.
  • Vorteile: Geringere Entwicklungszeit, einheitlicher Codebase, Kostenreduktion.
  • Nachteile: Performance geringfügig hinter nativen Apps, begrenzte API-Unterstützung, große App-Größe.

Einführung in Datenschutzprinzipien

Definition:

Grundlagen und Leitlinien zum Schutz personenbezogener Daten bei der Entwicklung und Nutzung mobiler Anwendungen.

Details:

  • Datenschutz durch Technikgestaltung (Privacy by Design)
  • Datenschutzfreundliche Voreinstellungen (Privacy by Default)
  • Rechtmäßigkeit, Verarbeitung nach Treu und Glauben, Transparenz
  • Zweckbindung und Datenminimierung
  • Richtigkeit und Speicherbegrenzung
  • Integrität, Vertraulichkeit und Verantwortlichkeit

Risikomanagement und Compliance

Definition:

Risikomanagement identifiziert, bewertet und steuert Risiken in mobilen Anwendungen; Compliance stellt sicher, dass alle gesetzlichen und regulatorischen Anforderungen erfüllt werden.

Details:

  • Risikomanagement-Prozess: Risikoidentifikation, Risikobewertung, Risikokontrolle.
  • Tools: Risikoanalyse-Methoden (z. B. FMEA, SWOT), Risiko-Matrizen.
  • Schlüsselkomponenten von Compliance: Datenschutzgesetze (z. B. DSGVO), Branchenstandards (z. B. PCI-DSS).
  • Ziele: Schutz der Daten, Minimierung von Sicherheitslücken, Vermeidung von Strafen.

Testen und Debuggen plattformübergreifender Anwendungen

Definition:

Testen und Debuggen von Anwendungen, die auf mehreren Plattformen (Android, iOS) laufen.

Details:

  • Nutzung von Frameworks: Xamarin, Flutter, React Native.
  • Unit-Tests mit plattformübergreifenden Test-Tools (z.B. Jest für React Native).
  • Automatisierte Tests mit CI/CD-Tools (z.B. Jenkins, GitHub Actions).
  • Debugging-Tools: Chrome DevTools, Flutter DevTools.
  • Plattform-Spezifische Bugs identifizieren und analysieren.
  • Emulatoren und echte Geräte für das Testen verwenden.
  • Code Coverage-Analyse zur Sicherstellung umfassender Tests.

Verschlüsselung und Authentifizierung in mobilen Apps

Definition:

Verschlüsselung schützt Daten vor unbefugtem Zugriff, Authentifizierung stellt sicher, dass Benutzer echt sind.

Details:

  • Symmetrische Verschlüsselung: ein Schlüssel für Ver- u. Entschlüsselung (z.B. AES).
  • Asymmetrische Verschlüsselung: ein öffentlicher u. ein privater Schlüssel (z.B. RSA).
  • Hash-Funktionen: Einwegverschlüsselung zur Integritätsprüfung (z.B. SHA-256).
  • Zwei-Faktor-Authentifizierung (2FA): Kombinierte Nutzung von zwei verschiedenen Authentifizierungsmethoden.
  • OAuth: Offenes Standardprotokoll für Authentifizierung u. Autorisierung.
  • JSON Web Token (JWT): Token-basierte Authentifizierungsmethode.
  • SSL/TLS: Schützt Datenübertragungen durch Verschlüsselung.

Datenminimierung und Anonymisierungstechniken

Definition:

Datenminimierung und Anonymisierungstechniken reduzieren Datenmengen und schützen sensible Informationen in mobilen Anwendungen.

Details:

  • Datenminimierung: Sammle und speichere nur die notwendigsten Daten. Prinzip der Datensparsamkeit.
  • Anonymisierung: Daten so verändern, dass Rückschlüsse auf Personen unmöglich werden.
  • Pseudonymisierung: Ersetze personenbezogene Daten durch Pseudonyme.
  • Techniken: Maskierung, Aggregation, Zufallsrauschen, K-Anonymität (\text{K-Anonymity}), L-Diversität (\text{L-Diversity}).
  • Ziele: Schutz der Privatsphäre, Erfüllung rechtlicher Anforderungen (z.B. DSGVO).
Sign Up

Melde dich kostenlos an, um Zugriff auf das vollständige Dokument zu erhalten

Mit unserer kostenlosen Lernplattform erhältst du Zugang zu Millionen von Dokumenten, Karteikarten und Unterlagen.

Kostenloses Konto erstellen

Du hast bereits ein Konto? Anmelden