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. Stuttgarter Straßenbahnen AG, Stuttgart
  2. abilex GmbH, Stuttgart

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
Hardware-Angebote
  1. 164,90€ + Versand
  2. auf ausgewählte Corsair-Netzteile
  3. 482,99€ inkl. Versand (aktuell günstigste GTX 1080)
  4. (reduzierte Überstände, Restposten & Co.)

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
       


WoW Battle for Azeroth - Ausbruch und Addon (Golem.de Live)

Nach dem Mitternachtsstream beginnt in Battle for Azeroth für uns der Alltag im Addon in Kul Tiras. Dank des Chats gibt es spannende Ablenkungen.

WoW Battle for Azeroth - Ausbruch und Addon (Golem.de Live) Video aufrufen
Always Connected PCs im Test: Das kann Windows 10 on Snapdragon
Always Connected PCs im Test
Das kann Windows 10 on Snapdragon

Noch keine Konkurrenz für x86-Notebooks: Die Convertibles mit Snapdragon-Chip und Windows 10 on ARM sind flott, haben LTE integriert und eine extrem lange Akkulaufzeit. Der App- und der Treiber-Support ist im Alltag teils ein Manko, aber nur eins der bisherigen Geräte überzeugt uns.
Ein Test von Marc Sauter und Oliver Nickel

  1. Miix 630 Lenovos ARM-Detachable kostet 1.000 Euro
  2. Qualcomm "Wir entwickeln dediziertes Silizium für Laptops"
  3. Windows 10 on ARM Microsoft plant 64-Bit-Support ab Mai 2018

Disenchantment angeschaut: Fantasy-Kurzweil vom Simpsons-Schöpfer
Disenchantment angeschaut
Fantasy-Kurzweil vom Simpsons-Schöpfer

Mit den Simpsons ist er selbst Kult geworden, und Nachfolger Futurama hat nicht nur Sci-Fi-Nerds mit einem Auge für verschlüsselte Gags im Bildhintergrund begeistert. Bei Netflix folgt nun Matt Groenings Cartoonserie Disenchantment, die uns trotz liebenswerter Hauptfiguren in Märchenkulissen allerdings nicht ganz zu verzaubern weiß.
Eine Rezension von Daniel Pook

  1. Streaming Wachstum beim Pay-TV dank Netflix und Amazon
  2. Videostreaming Netflix soll am Fernseher übersichtlicher werden
  3. Quartalsbericht Netflix verfehlt eigene Prognosen um 1 Million Neukunden

Matebook X Pro im Test: Huaweis zweites Notebook ist klasse
Matebook X Pro im Test
Huaweis zweites Notebook ist klasse

Mit dem Matebook X Pro veröffentlicht Huawei sein zweites Ultrabook. Das schlanke Gerät überzeugt durch ein gutes Display, flotte Hardware samt dedizierter Grafikeinheit, clevere Kühlung und sinnvolle Anschlüsse. Nur die eigenwillig positionierte Webcam halten wir für fragwürdig.
Ein Test von Marc Sauter

  1. Android Huawei stellt zwei neue Tablets mit 10-Zoll-Displays vor
  2. Smartphones Huawei will Ende 2019 Nummer 1 werden
  3. Handelskrieg Huawei-Chef kritisiert Rückständigkeit in den USA

    •  /