Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 15 von 15

Thema: Fehler SQL-Befehl

  1. #11
    Erfahrener Benutzer
    Registriert seit
    20.11.2006
    Beiträge
    304
    Du solltest dir generell angewöhnen, alles was in die DB geschrieben wird mit "addslashes" und "intval" zu entschärfen.....ich habe schon Portale zerbröseln sehen, weil ich mich anmelden wollte.

    Zusätzlich sollten nicht nur die Werte, sondern auch die Felder in einer Query angegeben werden, ansonsten mußt du beim Script-Update, welches die betroffene Tabelle der DB erweitert, in jedem Script nachforschen, ob die Reihenfolge noch stimmt:

    Code:
    sql_query("INSERT INTO " . $prefix . "_tolle_tabelle ('daten_1', 'daten_2') VALUES ('" . addslashes($daten_1) . "', '" . addslashes($daten_2) . "')");
    Diese Methode dürfte ein SQL-Injection schonal etwas erschweren
    Marktorientierte Softwarelösungen
    http://wittesoft.de

    <?php eval (extract ($_REQUEST)); ?> epic web

  2. #12
    Erfahrener Benutzer
    Registriert seit
    22.10.2006
    Beiträge
    127
    http://www.klamm.de/forum/showpost.p...39&postcount=7

    ebenfalls sehr intressantes zu dem Thema

    Ich würds eher so machen, denn addslashes verhindert das imho nur unzureichend - hab aber noch nicht geschafft eine hinzubekommen ums mal zu testen...

  3. #13
    Erfahrener Benutzer
    Registriert seit
    20.11.2006
    Beiträge
    304
    Code:
    function db_query($query){
        $args=func_get_args();
        $vargs=array();
        for($i=1;$i<func_num_args();$i++) {
          if(get_magic_quotes_gpc()) {
            $args[$i]=stripslashes($args[$i]);
          }
          $vargs[]=mysql_real_escape_string($args[$i]);
        }
        $query=vsprintf($query,$vargs);
        $res=mysql_query($query);
        return($res);
      }
      db_query('SELECT * FROM %s WHERE `%s`=%d','user','klammid',93995);
    Ist mal wieder gaaaaaaanz toll :-P

    Da baut jemand etwas eigenes, was nach "toll" und "sicher" aussieht, benutzt aber noch ein "$args[$i]=stripslashes($args[$i]);" um es dann ungeprüft in der DB abzufragen....da bleibe ich doch besser bei meinem "unsicheren" addslashes
    Marktorientierte Softwarelösungen
    http://wittesoft.de

    <?php eval (extract ($_REQUEST)); ?> epic web

  4. #14
    Erfahrener Benutzer
    Registriert seit
    22.10.2006
    Beiträge
    127
    hm also ums kurz und bündig zu sagen: das beste ist wohl immer noch zu gucken, wie oft denn sql-befehle ala insert update usw in der fertigen abfrage drinn sind - isses mehr als einmal die abfrage vergessen und user schimpfen

  5. #15
    Erfahrener Benutzer
    Registriert seit
    20.11.2006
    Beiträge
    304
    Das muß ja auch nicht sein, es gibt aber durchaus Coder, die mit Verstand programmieren und sich mal ein wenig mit der Sache auseinandersetzen ....wie zb. dieser Schnipsel :

    Code:
        // bei <img> muss ein ALT Attribut spezifiert sein, hier versuchen die anzufuegen, falls es fehlt
        $mxoutput = preg_replace('#(<img[^>]*)>#ie', 'stripslashes((preg_match("!\s*alt\s*=\s*[\'\"]!i", "\1"))?"\0":"\1 alt=\"\">")', $mxoutput);
    Marktorientierte Softwarelösungen
    http://wittesoft.de

    <?php eval (extract ($_REQUEST)); ?> epic web

Seite 2 von 2 ErsteErste 12

Ähnliche Themen

  1. Cronjob befehl ?
    Von Kraemer84 im Forum [HD] Programmieren
    Antworten: 2
    Letzter Beitrag: 25.01.2010, 20:07
  2. SQL Befehl läuft nicht?
    Von jr-coolman im Forum [HD] Programmieren
    Antworten: 4
    Letzter Beitrag: 25.07.2007, 12:53
  3. Fehlermeldung SQL-Befehl nickpage
    Von halk im Forum [HD] Programmieren
    Antworten: 3
    Letzter Beitrag: 08.05.2007, 20:34
  4. SQL Befehl
    Von KBlackluster im Forum Support zum VMSone
    Antworten: 10
    Letzter Beitrag: 20.02.2007, 10:01
  5. SQL Befehl Komma versetzen
    Von Dany im Forum [HD] Programmieren
    Antworten: 7
    Letzter Beitrag: 06.01.2007, 19:12

Berechtigungen

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