Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    333

    difendere una pagina PHP dalla chiamata diretta

    Ciao a tutti
    vorrei sapere perfavore quale ritenete che sia la miglior difesa di una pagina php dalla chiamata diretta.
    Ho infatti alcune pagine che vengono chiamate per mezzo di ajax ma che non devono rispondere se chiamate direttamente
    Grazie

  2. #2
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Puoi fare cosi:

    Codice PHP:
    if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) &&  strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) === 'xmlhttprequest'){
          
    // Chiamata Ajax
    }else{
         
    // Non Ajax

    C'è da dire che non è infallibile, infatti dipende se il framework che usi per fare la richiesta aggiunge l'header HTTP_X_REQUESTED_WITH (la maggiorparte si)

  3. #3
    Utente di HTML.it L'avatar di las
    Registrato dal
    Apr 2002
    Messaggi
    1,221
    Quote Originariamente inviata da jomla Visualizza il messaggio
    Ciao a tutti
    vorrei sapere perfavore quale ritenete che sia la miglior difesa di una pagina php dalla chiamata diretta.
    Ho infatti alcune pagine che vengono chiamate per mezzo di ajax ma che non devono rispondere se chiamate direttamente
    Grazie
    Non capisco l'utilità, cosa impedisce all'attacante di costruirsi una chiamata ajax e richiamarla tramite ajax? la vera difesa dovrebbe essere che la pagina non da risposte senza sapere a chi le sta dando .... a prescindere dal modo in cui gliele chiede.

    Il calcolatore è straordinariamente veloce, accurato e stupido.
    L'uomo è incredibilmente lento, impreciso e creativo.
    L'insieme dei due costituisce una forza incalcolabile.
    (Albert Einstein)

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    333
    Quote Originariamente inviata da las Visualizza il messaggio
    Non capisco l'utilità, cosa impedisce all'attacante di costruirsi una chiamata ajax e richiamarla tramite ajax? la vera difesa dovrebbe essere che la pagina non da risposte senza sapere a chi le sta dando .... a prescindere dal modo in cui gliele chiede.

    quindi tu cosa faresti?
    Grazie

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,509
    Per esempio puoi controllare da che indirizzo arriva la richiesta con $_SERVER['HTTP_REFERER']

  6. #6
    Utente di HTML.it L'avatar di las
    Registrato dal
    Apr 2002
    Messaggi
    1,221
    Quote Originariamente inviata da jomla Visualizza il messaggio
    quindi tu cosa faresti?
    Grazie
    Dipende da che cosa deve fare la pagina, comunque in linea generale metterei dei controlli che mi garantiscano che l'informazione venga inviata a un utente loggato e a nessun altro, a prescindere dal modo in la chiede.
    Il calcolatore è straordinariamente veloce, accurato e stupido.
    L'uomo è incredibilmente lento, impreciso e creativo.
    L'insieme dei due costituisce una forza incalcolabile.
    (Albert Einstein)

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 © 2026 vBulletin Solutions, Inc. All rights reserved.