Wie übertrifft mysql_real_escape_string() addslashes() bei der Bekämpfung von SQL-Injection?

Barbara Streisand
Freigeben: 2024-10-21 13:20:31
Original
904 Leute haben es durchsucht

How Does mysql_real_escape_string() Surpass addslashes() in Combatting SQL Injection?

Enthüllung der besonderen Merkmale von mysql_real_escape_string() über addslashes() hinaus

addslashes() dient zwar dazu, Sonderzeichen zu maskieren, bietet jedoch keinen umfassenden Schutz davor SQL-Injection-Angriffe. Im Gegensatz dazu bietet mysql_real_escape_string() eine erhöhte Sicherheit, indem es ein breiteres Spektrum problematischer Zeichen anspricht.

Mysql_real_escape_string() fügt insbesondere Schrägstriche zu den folgenden Zeichen hinzu:

\x00, \n, \r, \, ', " and \x1a.
Nach dem Login kopieren

Dieser erweiterte Zeichensatz gewährleistet dass nicht nur einfache und doppelte Anführungszeichen maskiert werden, wie bei addslashes(), sondern auch andere potenziell schädliche Zeichen neutralisiert werden.

Um diesen Unterschied zu veranschaulichen, betrachten Sie das folgende Beispiel:

$string = "' OR 1=1";

$addslashes_example = addslashes($string); // Escapes only single and double quotes
$mysql_rescape_example = mysql_real_escape_string($string); // Escapes single, double, and \x1a characters

echo $addslashes_example; // Outputs: \' OR 1=1
echo $mysql_rescape_example; // Outputs: \' OR 1=1\'
Nach dem Login kopieren

Wie gezeigt, bietet mysql_real_escape_string() einen robusteren Schutz, indem es die Ausführung eines manipulierten SQL-Injection-Angriffs verhindert, während addslashes() das System angreifbar macht. Es ist wichtig anzuerkennen, dass sowohl mysql_real_escape_string() als auch addslashes() veraltet sind und nicht mehr zur Verwendung empfohlen werden. Stattdessen sollten parametrisierte Abfragen für sichere und effiziente Datenbankinteraktionen eingesetzt werden.

Das obige ist der detaillierte Inhalt vonWie übertrifft mysql_real_escape_string() addslashes() bei der Bekämpfung von SQL-Injection?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!