Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    XHR proteggere la request

    Ciao.
    Mi stavo chiedendo che tipo di precauzioni
    usare per prottegere la request (sia come tipo
    di dato sia che la richiesta provenga veramente dalla
    dalla pagina richiedente )
    Attualmente adotto questa strategia
    1)Controllo lato server del tipo di dato
    2)Escape dei caratteri se uso un DB
    contro la sql injection
    3)Filtro per xhtml tags contro xss
    ed infine una cosa del genere
    if(!isset($_POST['name']) || !isset($_SESSION['name'])){
    exit();
    }

    else{
    //Good request
    }


    Per controllare che la richiesta venga
    effettivamente dalla richiedente avevo
    pensato ad un check su refer ma visto con
    che facilità possa essere falsificato ho lasciato perdere ;(
    o ad un cookie settato via js o linguaggio lato server .......

    E qui ho terminato la fantasia

    Suggerimenti ?

    Grazie in anticipo.

    Bye.
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  2. #2
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    I controlli lato server da fare per quanto mi riguarda sono sempre quelli.
    Ovvero, validazione dell'input.

    Non importa da dove arriva la richiesta, né se è fatta con ajax o meno

  3. #3
    la funzione dovrebbe fare un check interno in automatico, quindi con
    try {
    json_decode($_POST["var"]);
    }
    catch(Exception $e) {
    exit($e->getMessage());
    }

    dovresti stare tranquillo senza perdere tempo con regexp o altro.

    In generale, comunque sia, resta la regola numero 1 quanto detto sopra da luca

    P.S. dovrei aver risposto ad entrambi i post in un colpo solo
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  4. #4
    try {
    json_decode($_POST["var"]);
    }
    catch(Exception $e) {
    exit($e->getMessage());
    }


    P.S. dovrei aver risposto ad entrambi i post in un colpo solo



    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  5. #5
    Uhmm però questo metodo mi sembra migliore:
    Codice PHP:
    $json '{"a":1,"b":2,"c":3,"d":4,"e":5}';
    try{
    if(!(
    $json=json_decode($json)) instanceof stdClass){
            throw new 
    Exception('The parameter is not an object !');
        }

    catch (
    Exception $e){
        echo 
    'Caught exception: ',  $e->getMessage(), "\n";
        exit();
    }
    var_dump($json); 
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  6. #6
    Ah ri-Uhmmmm ho dovuto aggiungere
    anche una cosa del genere:
    Codice PHP:
    $datastr_replace(array("\r\n","\r","\n")," ",$data); 
    se il dato proviene da una form json_decode
    restituisce una stringa quando trova line-ending !


    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

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.