Ergebnis 1 bis 4 von 4

Thema: Prepared Statement vs. escape

  1. #1
    Unregistriert
    Gast

    Standard Prepared Statement vs. escape

    Hallo.

    Was ist der Vorteil von prepared statements vs mysql_real_escape_string im zusammenhang mit Injections?
    was ist performanter?
    was ist sicherer?

    kann man eine technologie ausschließen?


    lg
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Meister(in) Avatar von lukasn
    Registriert seit
    23.02.2008
    Ort
    Schweiz
    Alter
    27
    Beiträge
    491
    Danke
    2
    Bekam 12 mal "Danke" in 11 Postings

    Standard AW: Prepared Statement vs. escape

    Hm, gute Frage. Beide verfahren schliessen bei einer brauchbaren Implementation eine konventionelle Injection eigentlich zu nahezu 100% aus, vom Sicherheitsaspekt würde ch aber trotzdem sagen, dass Prepared Statements, ob jetzt mit mysqli oder PDO oder was immer du verwendest, tendenziell etwas sicherer sind. Sie sind auf jeden Fall einfacher zu handhaben, wobei eine Validierung von Usereingaben natürlich trotzdem noch nötig ist, um auch gegen XSS und ähnliche Angriffe geschützt zu sein, dabei kann man sich gleichzeitig auch um das Escaping kümmern. Ist daher wohl ein bisschen eine Glaubensfrage.

    Was die Performance angeht, sind Prepared Statements bei mehreren Operationen minim schneller, da die Query nur einmal geparsed weden muss, wobei der Gewinn marginal ist. Die grössten Performancegewinne in der Datenbank erhält man halt durch sinnvolles Tabellendesign.

    Wie oft hängt es also in erster linie nicht von der verwendeten Technologie, sondern von der Qualität der Implementation ab.

  3. #3
    Großmeister(in) Avatar von Darkxor
    Registriert seit
    17.11.2007
    Ort
    NRW
    Beiträge
    663
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Prepared Statement vs. escape

    mysql_real_escape_string kann ausgetrickst werden: http://www.web-tuts.de/10-mythen-zum...-security.html
    Geändert von Darkxor (08.12.2012 um 01:23 Uhr)
    -

  4. #4
    Großmeister(in)
    Registriert seit
    09.12.2008
    Ort
    Berlin
    Alter
    38
    Beiträge
    666
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard AW: Prepared Statement vs. escape

    Bei Prepared Statements werden Query und Werte für die Platzhalter getrennt zum Server geschickt. Damit ist man 100% sicher gegen SQL-Injection, da die Werte niemals in einen Kontext geraten können, in dem sie interpretiert würden.

    Beim escapen kann rein theoretisch etwas schief laufen, da die Werte direkt im Query stehen und somit mitinterpretiert werden. Es wäre mir allerdings neu, dass die entsprechenden escape-Methoden von MySQLi/PDO Lücken hätten.
    "Programming today is a race between software engineers
    striving to build bigger and better idiot-proof programs,
    and the universe trying to build bigger and better idiots.
    So far, the universe is winning."
    Rick Cook

Ähnliche Themen

  1. escape the room-tutorial
    Von Warthogchief 117 im Forum Flash Forum
    Antworten: 0
    Letzter Beitrag: 27.09.2007, 18:22
  2. sql statement in array oder variable speichern
    Von ledzep im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 0
    Letzter Beitrag: 03.04.2007, 13:42
  3. SQL-Statement
    Von Tobber im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 05.05.2006, 14:52
  4. Wir bitten unsere Gäste um ein Statement bzw. Ihre Mithilfe
    Von umbenannt im Forum Forum-Hilfe.de intern
    Antworten: 1
    Letzter Beitrag: 24.01.2004, 13:17

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •