Mailinglisten-Archive |
> Subject: Re: [php] RE: Problem mit Suchen nach extaktem Namen [NOTE] > > Hallo, > > Andreas Lange schrieb am Dienstag, 16. Juli 2002 um 17:07: > > > tjo ... aber wenn $_GET[cat] z.B. "';DROP ALL" enthält ... ;-) > > Würde das DROP ALL enthalten, würde er nach dem Keyword DROP > ALL suchen, oder täusche ich mich da? in dem String ist vorher noch ein ' eingebaut ... > > allerdings tatsächlich kein akutes problem mehr. Man sollte > aber auf > > jeden Fall Daten vorher verifizieren ... > > > prüfen, ob die $_GET Variable nur bestimmte Zeichen enthält ... ;-) > > z.B: > > if (preg_match('#[a-zA-Z0-9]+#',$_GET[cat])) { > > ... hier dann die abfrage ... > > } > > Ah ja... und da geht DROP ALL gleich durch. :-) siehe oben ... ein einfacher Weg solche Sachen zu verhinden ist es, indem man den zu übergebenenen Text "escaped" ... $query = 'SELECT * FROM '.$entries.' WHERE cat LIKE BINARY "%'.mysql_escape_string($_GET[cat]).'%" ORDER BY id DESC'; das mysql_escape_string quoted alle "gefährlichen" Zeichen. ist eigentlich das Minimum, was man benutzen sollte. > Gruss, > Andreas Andreas
php::bar PHP Wiki - Listenarchive