Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di XBarboX
    Registrato dal
    Dec 2008
    Messaggi
    121

    [Php+MySql] Controllare query

    Ciao a tutti,
    sperando di essere nella sezione giusta vorrei chiedervi una cosa:
    ho un database mysql con un cartella chiamata 'file' . In questa cartella devo permettere all'utente di fare query di ricerca tramite query sql.

    Per esempio:

    l'utente può:
    select * from file where nome like 'prova'
    ecc..

    l'utente non può fare:
    insert, update, delete. Può solo leggere il contenuto della cartella file e non può modificare nulla.

    dato che ricevo una stringa con la query come posso fare un controllo sicuro in modo da verificare che effettivamente guardi solo la cartella file e che non modifichi nulla?

    Ho provato ma ho trovato i segentu problemi:
    -" e ' vanno mantenuti altrimenti una query tipo select * from file where nome = \"ciao\" non funziona. Quindi è a riscio mysql injection?
    -Ho provato a fare un str_replace delle parole tipo insert, update, delete. Ma cancella anche magari il nome del file, come in questo esempio:
    select * from file where nome="insert" -> select * from file where ""

    Avete qualche idea?

    stavo pensando di creare un utente mysql apposito con soli dirtti di lettura per una quella cartella.. è una buona idea?

    grazie

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,508
    Prima cosa, si chiamano "tabelle" e non "cartelle".

    Puoi controllare la stringa per vedere se contiene "insert into" o "update file" o "delete from file", invece di controllare solo "insert", "update" e "delete".
    Per esempio:
    Codice PHP:
    $stringa strtolower($stringa); //così ti risparmi eventuali problemi di maiuscole o minuscole
    if(strpos($stringa,"insert into") !== false || strpos($stringa,"update file") !== false || strpos($stringa,"delete from file") !== false)
    {
        echo 
    "non puoi eseguire questa query!";
    }
    else
    {
        
    //esegui la query


  3. #3
    Utente di HTML.it L'avatar di zoseppe
    Registrato dal
    Jan 2005
    Messaggi
    306

    Re: [Php+MySql] Controllare query

    Originariamente inviato da XBarboX

    stavo pensando di creare un utente mysql apposito con soli dirtti di lettura per una quella cartella.. è una buona idea?

    grazie
    Secondo me è la soluzione migliore: gli dai solo i diritti di select e il gioco è fatto!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.