Top 5
Überprüfung von Client Daten
Daten, die von einem Client gesendet werden, müssen überprüft werden! Hierzu zählen vor allem die Superglobalen $_GET, $_POST und $_REQUEST, sowie $_COOKIE.
include($_REQUEST['security'])
In keinem Fall wird ein include oder require direkt ein Client Wert übergeben! Hierzu muss ggf. mit einem switch gearbeitet werden, auch wenn das viel Code bedeuten mag!
Keine Cookies verwenden
Auf dem Client kann localStorage oder sessionStorage verwendet werden. Auf dem Server kann direkt in die Session gespeichert werden.
Es wird nur ein Cookie verwendet, das ist der Session Cookie. Und das geschieht implizit, d.h. im Projekt muss sich kein Entwickler um die Bereitstellung der Session kümmern.
Cross Site Scripting (XSS)
Bei der Ausgabe von vom Client erhaltenen Inhalten, muss ein Filter resp. Modifier angewendet werden.
{$variable|escape:"html"}
SQL Injection
Client Werte müssen immer über prepared statements übergeben werden.
Coding Guidelines
Eine kurze Zusammenfassung der wichtigsten Coding Guidelines als PDF.