Linux/Capabilities

Aus Foxwiki

Capabilities

Privilegierte Prozesse (Effektive Benutzer-ID 0)
  • Privilegierte Prozesse umgehen alle Berechtigungsprüfungen des Kernels
Unprivilegierte Prozesse (Effektive UID ungleich Null)
  • Unprivilegierte Prozesse unterliegen einer vollständigen Berechtigungsprüfung
  • Basierend auf den Anmeldedaten des Prozesses (normalerweise: effektive UID, effektive GID und zusätzliche Gruppenliste)
Unterteillung von Privilegien
  • Einheiten (Capabilities) von Privilegien, die andernfalls Root vorbehalten sind
  • Können unabhängig voneinander aktiviert und deaktiviert werden
  • Capabilities sind ein Attribut pro Thread
  • Das Handbuch listet mehr als zwei Dutzend verschiedene POSIX-Fähigkeiten auf, die einzelnen ausführbaren Programmen gewährt werden können
Relevant für Wireshark
Option Beschreibung
CAP_NET_ADMIN Erlaubt verschiedene netzwerkbezogene Operationen (z.B. Setzen von privilegierten Socket-Optionen, Aktivieren von Multicasting, Schnittstellenkonfiguration, Ändern von Routing-Tabellen)
CAP_NET_RAW Erlaubt die Verwendung von RAW- und PACKET-Sockets
  • CAP_NET_ADMIN ermöglicht es uns, eine Schnittstelle in den Promiscuous-Modus zu versetzen, und
  • CAP_NET_RAW erlaubt den Raw-Zugriff auf eine Schnittstelle, um direkt über die Leitung zu erfassen

Diese Fähigkeiten werden mit dem Dienstprogramm setcap zugewiesen

Zugriffsrechte

Gewähren von Fähigkeiten mit setcap
# setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap
Änderung prüfen
# getcap /usr/bin/dumpcap
/usr/bin/dumpcap = cap_net_admin,cap_net_raw+eip