Abo
  • Services:

PHP macht es dem Nutzer zu einfach, Fehler zu machen

Es hätte mehrere Möglichkeiten gegeben, diese Sicherheitslücke zu verhindern. Um künftig Ähnliches zu vermeiden, ist die Display-Errors-Option standardmäßig deaktiviert. Die Exceptions von PDO werden nun korrekt behandelt. Zudem ist ein generischer Exception-Handler aktiv, der bei allen unbekannten Exceptions aufgerufen wird.

Stellenmarkt
  1. ETAS, Stuttgart
  2. ENERCON GmbH, Aurich

Ich will nicht alle Schuld von mir weisen, aber ich denke, dass PHP es Nutzern hier zu einfach macht, derartig gravierende Fehler zu begehen. Idealerweise sollten Tools und Programmiersprachen, wann immer es möglich ist, automatisch die sichere Option bevorzugen.

Wieso ist Display-Errors standardmäßig aktiv?

In diesem Fall führt aber die einfachste Verwendung von PDO - ohne Exception-Handling und mit der Standardeinstellung für display_errors - zu einer sehr kritischen Sicherheitslücke.

Da von der Nutzung von display_errors in Produktivsystemen abgeraten wird, ist es kaum verständlich, warum die Option trotzdem standardmäßig aktiv ist. In Sachen Exceptions wäre es wünschenswert, wenn es eine Möglichkeit gäbe, bestimmte Exceptions so zu markieren, dass sie in jedem Fall behandelt werden müssen.

  • Und auf einmal war das Passwort auf der Webseite zu lesen. (Screenshot: Hanno Böck)
  • Die Warnung in der PHP-Doku zu display_errors ist angesichts des<br>Risikos nicht sehr deutlich. (Screenshot: Hanno Böck)
  • Auf die Risiken von fehlendem Exception-Handling in PDO hingegen wird deutlich hingewiesen. (Screenshot: Hanno Böck)
Die Warnung in der PHP-Doku zu display_errors ist angesichts des<br>Risikos nicht sehr deutlich. (Screenshot: Hanno Böck)

So könnte eine Funktion bereits die Ausführung verweigern, wenn sie nicht innerhalb eines passenden try/except-Blocks ausgeführt wird. Außerdem ist es fragwürdig, dass Stack Traces generell bei nicht behandelten Exceptions ausgegeben werden. Man könnte diese auch zu einer Extra-Option machen oder zumindest die Funktionsparameter verbergen.

Der Vorfall zeigt, dass selbst die ausgefeiltesten Sicherheitsmechanismen nicht immer schützen können. Keiner der genutzten Sicherheitsmechanismen hat versagt. HTTPS schützt sehr zuverlässig vor manipulierten Daten und - mit gewissen Einschränkungen - vor mitlesenden Lauschern. Richtig verwendet verhindert Content Security Policy alle Cross-Site-Scripting-Lücken. Und Prepared Statements sind ein effektiver Schutz gegen SQL-Injections. Viele mögliche Sicherheitslücken sind damit abgedeckt - aber eben nicht alle.

 Wie konnte das nur passieren?
  1.  
  2. 1
  3. 2
  4. 3


Anzeige
Blu-ray-Angebote
  1. 5€ inkl. FSK-18-Versand
  2. 5€ inkl. FSK-18-Versand
  3. (u. a. 3 Blu-rays für 15€, 2 Neuheiten für 15€)

Astorek 15. Apr 2017

Gibt ja eine Website, die versucht, die bekanntesten Static Website Generatoren zu...

Noppen 15. Apr 2017

Mir ist letztens das Essen angebrannt. Ich würde sagen, dass die eigene Küche...

VigarLunaris 15. Apr 2017

Was soll ich da sagen... config.py enthält die variablen Darin liegen Brent-Hashing PWs...

.:Tim:. 15. Apr 2017

Naja, an das selbstverständlichste auf Produktivsystemen hat er nicht gedacht...

gadthrawn 14. Apr 2017

Es mag nur ein Schalter sein, aber intern wird mit einfachen Schaltern eben viel mehr...


Folgen Sie uns
       


Razer Hypersense angesehen (CES 2019)

Razer hat Vibrationsmotoren in Maus, Handballenablage und Stuhl verbaut - und wir haben uns auf der CES 2019 durchrütteln lassen.

Razer Hypersense angesehen (CES 2019) Video aufrufen
Magnetfeld: Wenn der Nordpol wandern geht
Magnetfeld
Wenn der Nordpol wandern geht

Das Erdmagnetfeld macht nicht das, was Geoforscher erwartet hatten - Nachjustierungen am irdischen Magnetmodell sind erforderlich.
Ein Bericht von Dirk Eidemüller

  1. Emotionen erkennen Ein Lächeln macht noch keinen Frohsinn
  2. Ökostrom Wie Norddeutschland die Energiewende vormacht
  3. Computational Periscopy Forscher sehen mit einfacher Digitalkamera um die Ecke

Android-Smartphone: 10 Jahre in die Vergangenheit in 5 Tagen
Android-Smartphone
10 Jahre in die Vergangenheit in 5 Tagen

Android ist erst zehn Jahre alt, doch die ersten Geräte damit sind schon Technikgeschichte. Wir haben uns mit einem Nexus One in die Zeit zurückversetzt, als Mobiltelefone noch Handys hießen und Nachrichten noch Bällchen zum Leuchten brachten.
Ein Erfahrungsbericht von Martin Wolf

  1. Android Q Google will den Zurück-Button abschaffen
  2. Sicherheitspatches Android lässt sich per PNG-Datei übernehmen
  3. Google Auf dem Weg zu reinen 64-Bit-Android-Apps

Begriffe, Architekturen, Produkte: Große Datenmengen in Echtzeit analysieren
Begriffe, Architekturen, Produkte
Große Datenmengen in Echtzeit analysieren

Wer sich auch nur oberflächlich mit Big-Data und Echtzeit-Analyse beschäftigt, stößt schnell auf Begriffe und Lösungen, die sich nicht sofort erschließen. Warum brauche ich eine Nachrichten-Queue und was unterscheidet Apache Hadoop von Kafka? Welche Rolle spielt das in einer Kappa-Architektur?
Von George Anadiotis


      •  /