Google setzt sich dafür ein, die Rassengerechtigkeit für schwarze Gemeinschaften zu fördern. Siehe wie.
Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

System- und Kernelsicherheit

Auf Betriebssystemebene bietet die Android-Plattform die Sicherheit des Linux-Kernels sowie eine IPC-Funktion (Secure Inter Process Communication), um eine sichere Kommunikation zwischen Anwendungen zu ermöglichen, die in verschiedenen Prozessen ausgeführt werden. Diese Sicherheitsfunktionen auf Betriebssystemebene stellen sicher, dass auch nativer Code durch die Anwendungssandbox eingeschränkt wird. Unabhängig davon, ob dieser Code das Ergebnis des enthaltenen Anwendungsverhaltens oder der Ausnutzung einer Anwendungsschwachstelle ist, soll das System verhindern, dass die unerwünschte Anwendung andere Anwendungen, das Android-System oder das Gerät selbst beschädigt. Unter Kernelkonfiguration finden Sie Maßnahmen, die Sie ergreifen können, um den Kernel auf Ihren Geräten zu stärken. Die erforderlichen Einstellungen finden Sie im CDD (Android Compatibility Definition Document) .

Linux-Sicherheit

Die Grundlage der Android-Plattform ist der Linux-Kernel. Der Linux-Kernel ist seit Jahren weit verbreitet und wird in Millionen von sicherheitsrelevanten Umgebungen verwendet. Durch seine Geschichte, die ständig von Tausenden von Entwicklern erforscht, angegriffen und behoben wurde, ist Linux zu einem stabilen und sicheren Kernel geworden, dem viele Unternehmen und Sicherheitsexperten vertrauen.

Als Basis für eine mobile Computerumgebung bietet der Linux-Kernel Android mehrere wichtige Sicherheitsfunktionen, darunter:

  • Ein benutzerbasiertes Berechtigungsmodell
  • Prozessisolation
  • Erweiterbarer Mechanismus für sicheren IPC
  • Die Fähigkeit, unnötige und möglicherweise unsichere Teile des Kernels zu entfernen

Als Mehrbenutzer-Betriebssystem besteht ein grundlegendes Sicherheitsziel des Linux-Kernels darin, Benutzerressourcen voneinander zu isolieren. Die Linux-Sicherheitsphilosophie besteht darin, Benutzerressourcen voreinander zu schützen. So Linux:

  • Verhindert, dass Benutzer A die Dateien von Benutzer B liest
  • Stellt sicher, dass Benutzer A den Speicher von Benutzer B nicht erschöpft
  • Stellt sicher, dass Benutzer A die CPU-Ressourcen von Benutzer B nicht erschöpft
  • Stellt sicher, dass Benutzer A die Geräte von Benutzer B nicht erschöpft (z. B. Telefonie, GPS und Bluetooth).

Die Anwendungssandbox

Die Anwendungssicherheit von Android wird durch die Anwendungssandbox erzwungen, die Apps voneinander isoliert und Apps und das System vor schädlichen Apps schützt. Weitere Informationen finden Sie unter Anwendungssandbox .

Systempartition und abgesicherter Modus

Die Systempartition enthält den Kernel von Android sowie die Betriebssystembibliotheken, die Anwendungslaufzeit, das Anwendungsframework und die Anwendungen. Diese Partition ist schreibgeschützt. Wenn ein Benutzer das Gerät im abgesicherten Modus startet, werden Anwendungen von Drittanbietern möglicherweise manuell vom Gerätebesitzer gestartet, jedoch nicht standardmäßig.

Dateisystemberechtigungen

In einer UNIX-ähnlichen Umgebung stellen Dateisystemberechtigungen sicher, dass ein Benutzer die Dateien eines anderen Benutzers nicht ändern oder lesen kann. Bei Android wird jede Anwendung als eigener Benutzer ausgeführt. Sofern der Entwickler keine Dateien explizit für andere Anwendungen freigibt, können von einer Anwendung erstellte Dateien von einer anderen Anwendung nicht gelesen oder geändert werden.

Sicherheitsverbessertes Linux

Android verwendet Security-Enhanced Linux (SELinux), um Zugriffssteuerungsrichtlinien anzuwenden und eine obligatorische Zugriffssteuerung (Mac) für Prozesse einzurichten. Weitere Informationen finden Sie unter Sicherheitsverbessertes Linux in Android .

Verifizierter Start

Android 6.0 und höher unterstützt verifizierte Boot- und Device-Mapper-Verität. Verifizierter Start garantiert die Integrität der Gerätesoftware von einem vertrauenswürdigen Hardware-Stamm bis zur Systempartition. Während des Startvorgangs überprüft jede Stufe kryptografisch die Integrität und Authentizität der nächsten Stufe, bevor sie ausgeführt wird.

Android 7.0 und höher unterstützt streng erzwungenes verifiziertes Booten, was bedeutet, dass gefährdete Geräte nicht booten können.

Weitere Informationen finden Sie unter Verifizierter Start .

Kryptographie

Android bietet eine Reihe von kryptografischen APIs zur Verwendung durch Anwendungen. Dazu gehören Implementierungen von Standard- und häufig verwendeten kryptografischen Grundelementen wie AES, RSA, DSA und SHA. Darüber hinaus werden APIs für übergeordnete Protokolle wie SSL und HTTPS bereitgestellt.

Android 4.0 hat die KeyChain- Klasse eingeführt, damit Anwendungen den Systemanmeldeinformationsspeicher für private Schlüssel und Zertifikatketten verwenden können.

Rooting von Geräten

Standardmäßig werden unter Android nur der Kernel und eine kleine Teilmenge der Kernanwendungen mit Root-Berechtigungen ausgeführt. Android hindert einen Benutzer oder eine Anwendung mit Root-Berechtigungen nicht daran, das Betriebssystem, den Kernel oder eine andere Anwendung zu ändern. Im Allgemeinen hat root vollen Zugriff auf alle Anwendungen und alle Anwendungsdaten. Benutzer, die die Berechtigungen auf einem Android-Gerät ändern, um Root-Zugriff auf Anwendungen zu gewähren, erhöhen das Sicherheitsrisiko für schädliche Anwendungen und potenzielle Anwendungsfehler.

Die Möglichkeit, ein eigenes Android-Gerät zu ändern, ist für Entwickler, die mit der Android-Plattform arbeiten, wichtig. Auf vielen Android-Geräten können Benutzer den Bootloader entsperren, um die Installation eines alternativen Betriebssystems zu ermöglichen. Diese alternativen Betriebssysteme ermöglichen es einem Eigentümer möglicherweise, Root-Zugriff zum Debuggen von Anwendungen und Systemkomponenten zu erhalten oder auf Funktionen zuzugreifen, die Anwendungen von Android-APIs nicht präsentiert werden.

Auf einigen Geräten kann eine Person mit physischer Kontrolle über ein Gerät und ein USB-Kabel ein neues Betriebssystem installieren, das dem Benutzer Root-Rechte bietet. Um vorhandene Benutzerdaten vor Kompromissen zu schützen, muss der Bootloader beim Entsperren alle vorhandenen Benutzerdaten im Rahmen des Entsperrschritts löschen. Durch den Ausnutzen eines Kernel-Fehlers oder einer Sicherheitslücke gewonnener Root-Zugriff kann diesen Schutz umgehen.

Das Verschlüsseln von Daten mit einem auf dem Gerät gespeicherten Schlüssel schützt die Anwendungsdaten nicht vor Root-Benutzern. Anwendungen können mithilfe der Verschlüsselung mit einem außerhalb des Geräts gespeicherten Schlüssel, z. B. auf einem Server oder einem Benutzerkennwort, eine Datenschutzschicht hinzufügen. Dieser Ansatz kann vorübergehenden Schutz bieten, solange der Schlüssel nicht vorhanden ist. Irgendwann muss der Schlüssel jedoch für die Anwendung bereitgestellt werden, damit Root-Benutzer darauf zugreifen können.

Ein robusterer Ansatz zum Schutz von Daten vor Root-Benutzern ist die Verwendung von Hardwarelösungen. OEMs können Hardwarelösungen implementieren, die den Zugriff auf bestimmte Arten von Inhalten beschränken, z. B. DRM für die Videowiedergabe oder den NFC-bezogenen vertrauenswürdigen Speicher für Google Wallet.

Bei einem verlorenen oder gestohlenen Gerät verwendet die vollständige Dateisystemverschlüsselung auf Android-Geräten das Gerätekennwort, um den Verschlüsselungsschlüssel zu schützen. Daher reicht es nicht aus, den Bootloader oder das Betriebssystem zu ändern, um auf Benutzerdaten ohne das Gerätekennwort des Benutzers zuzugreifen.

Benutzersicherheitsfunktionen

Dateisystemverschlüsselung

Android 3.0 und höher bietet eine vollständige Dateisystemverschlüsselung, sodass alle Benutzerdaten im Kernel verschlüsselt werden können.

Android 5.0 und höher unterstützt die Festplattenverschlüsselung . Bei der Festplattenverschlüsselung wird ein einzelner Schlüssel verwendet, der mit dem Gerätekennwort des Benutzers geschützt ist, um die gesamte Benutzerdatenpartition eines Geräts zu schützen. Beim Booten müssen Benutzer ihre Anmeldeinformationen angeben, bevor auf einen Teil der Festplatte zugegriffen werden kann.

Android 7.0 und höher unterstützt die dateibasierte Verschlüsselung . Durch die dateibasierte Verschlüsselung können verschiedene Dateien mit verschiedenen Schlüsseln verschlüsselt werden, die unabhängig voneinander entsperrt werden können.

Weitere Informationen zur Implementierung der Dateisystemverschlüsselung finden Sie im Abschnitt Verschlüsselung .

Passwortschutz

Android kann so konfiguriert werden, dass ein vom Benutzer angegebenes Kennwort überprüft wird, bevor der Zugriff auf ein Gerät bereitgestellt wird. Dieses Kennwort verhindert nicht nur die unbefugte Verwendung des Geräts, sondern schützt auch den kryptografischen Schlüssel für die vollständige Verschlüsselung des Dateisystems.

Die Verwendung eines Kennworts und / oder von Regeln zur Kennwortkomplexität kann von einem Geräteadministrator verlangt werden.

Geräteverwaltung

Android 2.2 und höher bietet die Android-Geräteverwaltungs-API, die Geräteverwaltungsfunktionen auf Systemebene bereitstellt. Beispielsweise verwendet die integrierte Android-E-Mail-Anwendung die APIs, um die Exchange-Unterstützung zu verbessern. Über die E-Mail-Anwendung können Exchange-Administratoren Kennwortrichtlinien - einschließlich alphanumerischer Kennwörter oder numerischer PINs - geräteübergreifend durchsetzen. Administratoren können verlorene oder gestohlene Mobilteile auch aus der Ferne löschen (dh die Werkseinstellungen wiederherstellen).

Zusätzlich zur Verwendung in Anwendungen, die im Android-System enthalten sind, stehen diese APIs Drittanbietern von Geräteverwaltungslösungen zur Verfügung. Details zur API finden Sie unter Geräteverwaltung .