Wirksame Verteidigung gegen MySQL-Injection und Cross-Site-Scripting
Beim Schutz vor diesen Sicherheitslücken ist es entscheidend, einen umfassenden Ansatz zu verfolgen ein zufälliger Versuch. Obwohl die bereitgestellte Funktion versucht, Probleme zu beheben, reicht sie nicht für eine optimale Verteidigung aus.
Empfohlene Best Practices
Um sich effektiv gegen diese Angriffe zu verteidigen, sollten Sie die Implementierung der folgenden Praktiken in Betracht ziehen:
-
Magische Zitate deaktivieren: Magische Zitate deaktivieren, da sie unvollständig sind verwirrende Lösung.
-
Verwenden Sie gebundene Parameter oder Escape-Strings: Verwenden Sie beim Schreiben von SQL-Abfragen immer gebundene Parameter. Wenn Sie die Zeichenfolgenverkettung verwenden, verwenden Sie mysql_real_escape_string für die ordnungsgemäße Escapezeichenfolge.
-
Vermeiden Sie das Aufheben des Escapezeichens für die Datenbankausgabe: Vermeiden Sie das Aufheben der Escapezeichenfolge (z. B. durch die Verwendung von Stripslashes) für aus der Datenbank abgerufene Werte.
-
HTML standardmäßig maskieren: Beim Einbetten von Zeichenfolgen in HTML Machen Sie es zur Standardpraxis, sie mithilfe von htmlentities mit ENT_QUOTES zu maskieren.
-
Nicht vertrauenswürdige HTML-Eingabe filtern: Für nicht vertrauenswürdige HTML-Quellen, die in HTML eingebettet sind, greifen Sie auf einen geeigneten Filter wie HtmlPurifier statt auf grundlegende Techniken wie strip_tags.
Zusätzlich Ressourcen
Erkunden Sie die folgende Ressource für weitere Einblicke:
- [Was ist die beste Methode zur Bereinigung von Benutzereingaben mit PHP?](Link)
Das obige ist der detaillierte Inhalt vonWie sichern Sie Ihre MySQL-Anwendung vor Injektions- und XSS-Angriffen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!