Sicherheit · Frage 3 von 12

Ein URL-Parameter uid enthält den Wert „5 OR 1=1“. Was liefert (int)$uid in PHP 8?

1 Antwort ist richtig. Einfach

Lösung anzeigen

Lösung

  • B 5

Erklärung

Der Cast (int) wandelt einen String in eine Ganzzahl um und liest dabei die führenden Ziffern: Aus „5 OR 1=1“ wird 5, der angehängte SQL-Teil fällt weg. Beginnt der Text nicht mit einer Zahl, etwa „abc“, ergibt der Cast 0. Deshalb ist (int) eine einfache und wirksame Bereinigung (Sanitizing) für IDs, bevor sie weiterverarbeitet werden. Ein TypeError entsteht erst bei strikt typisierten Funktionsparametern, nicht beim expliziten Cast. Trotzdem gilt: In SQL-Abfragen übergibt man auch Zahlen als Named Parameter, z. B. mit Connection::PARAM_INT.

Zertifikate & Prüfungen

Welche Prüfung kommt als Nächstes?

19 Prüfungen kannst du schon üben, über 21 stimmst du gerade ab. Sieh dir alle Zertifikate mit offiziellen Infos an, gib deine Stimme ab oder schlag deine Prüfung vor.

Zur Zertifikatsübersicht