← Alle Artikel

Sichere Datei-Upload-Architektur: Worauf zu achten ist

23. September 2026

Sichere Datei-Upload-Architektur: Worauf zu achten ist

Datei-Upload ist eine unverzichtbare Funktion vieler Webanwendungen: Profilfoto, Dokument, Anhang. Doch weil Upload einem Angreifer erlaubt, selbst gewählten Inhalt auf Ihren Server zu legen, öffnet er bei unsorgfältigem Design ernste Risiken — von Codeausführung auf dem Server bis zu Speicher- und Verteilungsmissbrauch. Dieser Artikel behandelt die Bausteine einer sicheren Upload-Architektur.

Risiken

  • Codeausführung auf dem Server: eine hochgeladene Skriptdatei (z. B. .php), die im Web-Root an einem ausführbaren Ort landet, erlaubt dem Angreifer, sie per Browser aufzurufen und Code auszuführen.
  • Falsches Ausliefern des Inhaltstyps: eine schädliche HTML/SVG, die als browserausgeführtes Skript ausgeliefert wird (ähnlich Stored XSS), betrifft andere Nutzer.
  • Speicher- und Ressourcenmissbrauch: sehr große oder zahlreiche Dateien können Platte und Bandbreite erschöpfen.
  • Pfadmanipulation: Sequenzen wie ../ im Dateinamen können die Datei an einen unerwarteten Ort schreiben.

Bausteine einer sicheren Architektur

  1. Dateien AUSSERHALB des Web-Roots speichern oder in Objektspeicher. Hochgeladener Inhalt darf nicht in einem direkt ausführbaren Pfad liegen.
  2. Den Dateinamen selbst erzeugen. Nicht den vom Nutzer gelieferten Namen verwenden; eine zufällige ID erzeugen und den Originalnamen nur als Metadatum behalten. Das verhindert Pfadmanipulation und Überschreiben.
  3. Den Inhaltstyp aus dem Inhalt validieren. Nicht der Endung oder dem vom Client gemeldeten MIME allein vertrauen; den echten Typ (Magic Bytes) gegen eine Allowlist prüfen.
  4. Beim Ausliefern sichere Header nutzen. Für Downloads Content-Disposition: attachment mit korrektem Content-Type verhindert Ausführung; X-Content-Type-Options: nosniff ergänzen.
  5. Größen- und Ratenlimits setzen, um Ressourcenmissbrauch zu reduzieren.
  6. Bilder neu kodieren. Serverseitiges Neukodieren entfernt die meisten eingebetteten schädlichen Inhalte.

Zusammenfassung

Sicherer Datei-Upload beruht auf dem Prinzip “Nutzerinhalt nie als ausführbar behandeln.” Speichern Sie Dateien außerhalb des Web-Roots, erzeugen Sie den Namen selbst, validieren Sie den Typ aus dem Inhalt, liefern Sie mit sicheren Headern aus und setzen Sie Größen-/Ratenlimits. Zusammen verhindern diese Schichten, dass Upload zur Angriffstür wird.

Quellen: OWASP File Upload Cheat Sheet, CWE-434.

Ist Ihr Datei-Upload-Ablauf sicher gestaltet? Der External-Surface- und Active-Verification-Scan von CyberTestify bewertet erkannte Upload-Punkte.