Wo zu verwenden mysql_real_escape_string, um SQL-Injection verhindern?

Ich bin in Schwierigkeiten mit einer Gruppe von Hackern. Sie hackte meine Kunden paar mal, und mein client bekommt mehr angry 🙁 mein Klient verlor seine Datenbank (die hat Hunderte von Datensätzen), und musste Sie alle 🙁

nun bin ich nach etwas mehr Einführungen;

  • Feste Datei-Berechtigungen
  • geändert, ftp und host-login info
  • gelöscht alle remote-mysql-Zugriffe

arbeitet jetzt auf SQL-Injection-Problem. Ich fügte hinzu, mysql_real_escape_string, um admin-panel login-Parameter. Also wo sonst soll ich das mysql_real_escape_string ? Ich habe einige E-Mail-Formulare auf der Website, ich glaube nicht, dass ich brauchen, um es hinzuzufügen...

Habe ich eine index.php als mainpage. Sollte ich irgendetwas für diese Seite verhindern, dass alle sql-injection-Angriff über eine url wie index.php?somesql= ?

Bitte beraten Sie mich! Ich Schätze so viel!!! 🙁


Beispiel:

Habe ich einen solchen code;

public function showDetails($id) {

    //SQL Jobs Details
    $this->sql_job = "SELECT * FROM jobs WHERE id=".mysql_real_escape_string($id);
    $this->rst_job = mysql_query($this->sql_job);           
    $this->row_all = mysql_fetch_assoc($this->rst_job);     

    //SQL State
    $this->sql_state = "SELECT title FROM state WHERE id=" . $this->row_all[$this->tbl_jobs['f4']];
    $this->rst_state = mysql_query($this->sql_state);   
    $this->row_state = mysql_fetch_assoc($this->rst_state);
........

ist es genug, um zu verwenden mysql_real_escape_string für $id . nicht für $this->row_all[$this->tbl_jobs['f4']]

Ich bin eine MSSQL Kerl so hoffentlich dies gilt-warum muss ein Website-login auch die Berechtigung haben, um etwas zu löschen? Wie für den Verlust eine Datenbank, wo sind die sicherungen??
"SELECT * FROM jobs WHERE id=".mysql_real_escape_string($id) ist anfällig für sql-injection. $id="1 oder sleep(50)"
+1 zu Turm. mysql_real_escape_string ist nicht eine Magische Kugel, es ist nur eine string-escaping-Funktion und funktioniert nur, wenn es verwendet wird, in Anführungszeichen.

InformationsquelleAutor designer-trying-coding | 2010-02-22

Schreibe einen Kommentar