Daten fügen sich selbst in MySQL Tabelle ein


schoko

Erfahrenes Mitglied
Hallo,

erstens hoffe ich das ich hier im Richtigen Forum bin (wusste nicht ob nun PHP oder MySQL) zweitens ist mir leider kein besserer Titel für mein Problem eingefallen.

Aber nun zum Problem. Und zwar habe ich eine MySQL Tabelle die Daten für ein Diagramm speichert. Es werden lediglich zwei Werte gespeichert (Spieltag und die jeweilige Position). Zum einen habe ich ein Script das die Daten ausliest und zum anderen ein Script mit dem man die Daten verändern kann. Soweit so gut...

Das Problem ist nun, dass sie von ganz alleine immer ca. 50 - 100 Spalten in die Tabelle eintragen. Ich habe 30 Spalten (für 30 Spieltage) in der Tabelle stehen. So zwei tage später sind auf einmal 150 Spalten drin....

Es gibt KEIN Script welches ein INSERT enthält. Somit kann ich eigentlich einen Scriptfehler ausschließen. Aber wo kann das Problem noch liegen?

Genauso habe ich eine Tabelle in der ich Benutzerdaten speichere, auch hier wieder Script zum einfügen und Script zum löschen (jedoch nur mit Übergabe der ID). Hier löschen sich von alleine Daten. Die 3/4 Tabelle ist auf einmal weg. Ich fülle sie wieder und ein bis zwei Tage später ist die Tabelle wieder fast Leer. Manchmal dauert es 3 Tage...

Ich verzweifel noch an diesem Problem...

Vielen Dank für alla Antworten
 

nero_85

Erfahrenes Mitglied
Möglicherweise mag dich jemand nicht! ;) Hört sich an, als würde jemand Zugang zu deiner DB haben.

Am besten einmal die Zugriffsdaten ändern!!
 

schoko

Erfahrenes Mitglied
Ja werde ich mal machen aber irgendwie glaube ich nicht wirklich daran. Warum sollte jemand nur einen Teil der Benutzerdaten löschen? Warum die Arbeit? Es wäre doch einfacher die Tabelle einfach zu leeren!

Warum sollte jemand Daten hinzufügen?

Und das immer und immer wieder...meiner Meinung nach unlogisch!

Gruß
 

nero_85

Erfahrenes Mitglied
Unlogisch ist es auch, dass sich deine DB ohne Script und Anweisungen befüllt! Vielleicht will dich einer einfach nur ärgern und nicht alles kapputt machen! kA was da los ist!
 

splasch

Erfahrenes Mitglied
Sql injektion wenn deine Scripte nicht sicher sind dann könnte jemand das ausnutzen um deine Tabellen zu füllen.

Mfg Splasch
 

nero_85

Erfahrenes Mitglied
Ich versuche SQL-Injektionen durch folgende kleine Funktion soweit wie möglich aus den $_GET, $_POST, und $_REQUEST Variablen zu unterbinden:

PHP:
//SQL-Injektion verhindern
function stopSQLinjection($var){

  foreach($var as $get){
    $get=strip_tags($get);
  	
  	//eventuelle mysql-anweisungen werden herausgefiltert
  	$chk1=substr_count(strtolower($get), "select");
  	$chk2=substr_count(strtolower($get), "update");
  	$chk3=substr_count(strtolower($get), "delete");
  	$chk4=substr_count(strtolower($get), "insert");
    
    $chk=$chk1+$chk2+$chk3+$chk4;
    //rückgabe ob erfolgreich oder nicht
  	if($chk!=0){
  		die ("<h1 style='color:red;' align='center'>ES WURDER VERSUCHT DIE SEITE ZU MANIPULIEREN! DIESER VERSUCH KONNTE ABGEWEHRT WERDEN!</h1>");
  	}
  }
}

Und dann folgendes ausführen:

PHP:
//$_GET-, $_POST und $_REQUEST-Variablen auf Sicherheitsl&uuml;cken durchsuchen
stopSQLinjection($_GET);
stopSQLinjection($_POST);
stopSQLinjection($_REQUEST);
 

schoko

Erfahrenes Mitglied
Passwort ändern hat nichts gebracht, es wurden wieder Daten hinzugefügt... hat noch jemand einen Tipp?