Mastodon Mastodon Mastodon Mastodon

Symbolischer Link

Aktualisiert: · CyberSecureFox Editorial Team

Ein symbolischer Link (Symlink) ist ein Dateisystemobjekt, das über seinen Pfad auf eine andere Datei oder ein Verzeichnis verweist, sodass Programme beim Öffnen des Links transparent zum Ziel umgeleitet werden.

Wie symbolische Links funktionieren

Ein symbolischer Link speichert nur den Pfad seines Ziels. Unter Linux und macOS wird er mit ln -s angelegt; Windows unterstützt symbolische Links über mklink sowie NTFS-Junctions und andere Analysepunkte (Reparse Points). Anders als ein Hardlink kann ein Symlink über Dateisystemgrenzen hinweg oder auf ein noch nicht existierendes Ziel zeigen. Symlinks werden häufig genutzt, um Softwareversionen, gemeinsame Konfigurationsdateien und Verzeichnisstrukturen zu verwalten.

Warum symbolische Links für die Sicherheit wichtig sind

Problematisch wird es, wenn ein privilegiertes Programm einem Link folgt, den ein Angreifer angelegt hat. Die Schwäche ist als CWE-59 (Improper Link Resolution Before File Access, „Link Following“) katalogisiert. Typische Szenarien:

  • Angriffe über temporäre Dateien – ein Root-Prozess schreibt in eine vorhersehbare Datei unter /tmp; der Angreifer legt dort vorher einen Symlink auf /etc/passwd oder eine andere sensible Datei an, die dann überschrieben wird.
  • Time-of-Check to Time-of-Use – die Datei wird zwischen Sicherheitsprüfung und Verwendung gegen einen Link ausgetauscht, eine Race Condition (CWE-367).
  • Missbrauch von Windows-Diensten – Junctions und Objektmanager-Links bringen Installer, Update-Dienste oder sogar Antivirenprodukte dazu, mit SYSTEM-Rechten beliebige Dateien zu löschen oder zu schreiben – ein gängiger Weg zur lokalen Rechteausweitung.
  • Manipulierte Archive – ZIP- oder tar-Dateien mit Symlinks können Entpackwerkzeuge dazu bringen, außerhalb des Zielordners zu schreiben, ähnlich wie bei Directory Traversal.

So verhindern Sie Symlink-Angriffe

  • Unter Linux die Kernel-Einstellung fs.protected_symlinks aktiviert lassen.
  • Temporäre Dateien sicher anlegen (etwa mit mkstemp) und Dateien mit Flags wie O_NOFOLLOW öffnen.
  • Dateioperationen privilegierter Dienste in für Benutzer beschreibbaren Verzeichnissen vermeiden.
  • Linkziele beim Entpacken von Archiven prüfen.
Synonyme:
Symlink, Softlink, symbolische Verknüpfung