mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 25.04.2024 11:29 Benutzername: Passwort: Auto-Login

Thema: PHP | MySQL Injection vermeiden vom 25.11.2009


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> PHP | MySQL Injection vermeiden
Seite: 1, 2  Weiter
Autor Nachricht
choise
Threadersteller

Dabei seit: 01.02.2007
Ort: Würzburg
Alter: 35
Geschlecht: Männlich
Verfasst Mi 25.11.2009 10:40
Titel

PHP | MySQL Injection vermeiden

Antworten mit Zitat Zum Seitenanfang

Hi Leute,

ich sitze momentan mal wieder an Usereingaben die in eine Datenbank geschrieben werden müssen.

Meine Frage an euch, wie validiert ihr die Usereingaben um sie vor Injections oder ähnlichem zu schützen?

reicht euch zb sowas aus
Code:

 public function validate_string($string)
{
if (get_magic_quotes_gpc())
{
$string = stripslashes($string);
}
$string = strip_tags($string);
$string = mysqli_real_escape_string($string);
 
return $string;
}
 


ich persönlich prepare mein statement ersteinmal mit mysqli und setzt dann die validierten und mit mysqli real escape string überprüften variablen ein.

welche methoden sollte man noch über die eingaben laufen lassen?
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 25.11.2009 10:48
Titel

Antworten mit Zitat Zum Seitenanfang

Prepared Statements nehmen Dir das Escaping ab, da brauchste nix mehr in Bezug auf mysql-injections zu machen. Ich würde mysqlli ja trotzdem vermeiden und den Weg über PDO + Mysql gehen. Der PDO/Mysql-Treiber ist mehr als stabil. Ich hatte hier aus irgend einem Grund enorme Probleme damit (Lamp) und hab's dann aus Gründen der Plattformunabhängigkeit links liegen gelassen. Ich bezweifle auch den Nutzen eines "Improved" Mysql-Befehlssatzes, der immer noch prozedural gehalten ist. Wenn du es gar nicht lassen kannst, nutze PearDB mit mysqli.

Zuletzt bearbeitet von bacon am Mi 25.11.2009 10:53, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden
Anzeige
Anzeige
choise
Threadersteller

Dabei seit: 01.02.2007
Ort: Würzburg
Alter: 35
Geschlecht: Männlich
Verfasst Mi 25.11.2009 11:00
Titel

Antworten mit Zitat Zum Seitenanfang

bacon hat geschrieben:
den Weg über PDO + Mysql gehen.

hab ich noch nie gemacht, werd ich mir mal ansehen

bacon hat geschrieben:
Ich bezweifle auch den Nutzen eines "Improved" Mysql-Befehlssatzes, der immer noch prozedural gehalten ist.

hm oke, sollte ich ihn jedoch verwenden, wäre die sicherheit mit den prepared statements also gegeben?

bacon hat geschrieben:
Wenn du es gar nicht lassen kannst, nutze PearDB mit mysqli.

Auf der PEAR Seite steht, dass PEAR:DB nicht mehr weiterentwickelt wird, ist mir neu.
Hat jemand Erfahrungen mit dem hier?
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
m
Moderator

Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mi 25.11.2009 11:05
Titel

Antworten mit Zitat Zum Seitenanfang

choise hat geschrieben:
bacon hat geschrieben:
den Weg über PDO + Mysql gehen.

hab ich noch nie gemacht, werd ich mir mal ansehen


Kommt mysqli prepared statements gleich.


Zuletzt bearbeitet von m am Mi 25.11.2009 11:06, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 25.11.2009 11:08
Titel

Antworten mit Zitat Zum Seitenanfang

Ganz ehrlich: Nimm direkt Doctrine, haste mehr Spaß mit.http://www.doctrine-project.org/
  View user's profile Private Nachricht senden
choise
Threadersteller

Dabei seit: 01.02.2007
Ort: Würzburg
Alter: 35
Geschlecht: Männlich
Verfasst Mi 25.11.2009 11:13
Titel

Antworten mit Zitat Zum Seitenanfang

bacon hat geschrieben:
Ganz ehrlich: Nimm direkt Doctrine, haste mehr Spaß mit.http://www.doctrine-project.org/


*Thumbs up!* sieht super aus.
nur für das aktuelle ding hab ich kaum zeit.
ich les mich mal schnell in die doku ein und schau ob ich das mit dem ding bis freitag gebacken krieg.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Di 01.12.2009 22:12
Titel

Antworten mit Zitat Zum Seitenanfang

und? is schön, oder? *zwinker*
  View user's profile Private Nachricht senden
choise
Threadersteller

Dabei seit: 01.02.2007
Ort: Würzburg
Alter: 35
Geschlecht: Männlich
Verfasst Mi 02.12.2009 00:13
Titel

Antworten mit Zitat Zum Seitenanfang

in bisschen verschickt am anfang, die doku find ich jetzt nicht sooo gelungen,
n gutes tut ausser die doku selbst hab ich aber vergeblich gesucht, naja.

aber mit gammligen mysqli ist d as natürlich nicht zu vergleichen.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen [PHP] mail() Header injection in $message möglich?
[PHP + mySQL] Kann Fehler in einer mySQL-Phrase nicht finden
[PHP/MySQL] MySQL Error: 1054, falsche Tabelle ausgewählt?
[MySql]Lost connection to MySQL server during query
Wiederholung vermeiden
hurenkinder vermeiden? Umbruchoption?
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.