Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: PHP domanda sui form

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    83

    PHP domanda sui form

    Ciao a tutti!
    vorrei chiedervi una informazione. Quando una persona crea una pagina dove ci mette un form, magari per il login, e in action ci inserisce $_SERVER['PHP_SELF'] i dati presenti nel form possono essere presi da hacker? credo di si, ma vorrei avere una conferma. Grazie mille a tutti

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Ciao, non che io sia hacker ma perche' fai riferimento all'action?
    $_SERVER['PHP_SELF'] prende come valore semplicemente la url dove ti trovi in quel momento.

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    83
    ciao e grazie mille per avermi risposto. Faccio riferimento all'action perchè il form, quando lo inizializzi lo fai in questa maniera:

    codice:
      <form name="form1" enctype="multipart/form-data" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
    Nell'action come vedi ho messo il $_SERVER['PHP_SELF'] che come hai giustamente detto è l'url dove si trova. Però la mia domanda è questa: siccome la pagina dove risiede quel form richiede al server di tradurre del codice php per effettuare dei controlli sulle variabili, in questo modo un hacker può venire a conoscenza del contenuto delle variabili? credo di si, ma vorrei esserne sicuro. Grazie ancora.

  4. #4
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Forse non e' tanto la action che ti interessa ma sapere se si possono recuperare le variabili inviate.
    Diciamo che non e' cosi' diffcile o meglio, sia che in get(parametri visibili nella url) o in post (parametri nascosti) basterebbe ispezionare l'html e vedere i NAME dei tag per dentro al form per potre ricostruire/simulare una form anche se inviata diciamo manualmente da url o da altra pagina ma con la action giusta.

    Una cosa piu' sicura potrebbe essere fare un cotrollo per verificare da dove e' stata avviata la form se mai.

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    83
    Mmmmmh... mi sa che non ho capito molto bene... la prima parte è corretta cioè io vorrei capire se i dati presenti nel form siano in un qualche modo recuperabili da persone esterne e cioè che non hanno completato di persona il form. Quindi presupponiamo un attacco hacker che diciamo riesce a reperire le informazioni inviate tramite quel form da un'altra persona. Conoscere il nome dei tag del form e ricostruire il form in maniera tale da effettuare il form da un'altro url (con la action giusta) è un altro discorso. Io vorrei solo sapere cmq se i dati sono vulnerabili e quindi soggetti a visione da parte di persone esterne.

  6. #6
    Originariamente inviato da Leonraf
    Mmmmmh... mi sa che non ho capito molto bene... la prima parte è corretta cioè io vorrei capire se i dati presenti nel form siano in un qualche modo recuperabili da persone esterne e cioè che non hanno completato di persona il form. Quindi presupponiamo un attacco hacker che diciamo riesce a reperire le informazioni inviate tramite quel form da un'altra persona. Conoscere il nome dei tag del form e ricostruire il form in maniera tale da effettuare il form da un'altro url (con la action giusta) è un altro discorso.
    Il discorso e' MOLTO ampio e MOLTO complesso. In generale no, non e' possibile fare quello che dici in modo semplice, ne' c'entra in alcun modo come scrivi la action (purche' punti a qualche script tuo ovviamente).

    Per quanto riguarda il problema di "intercettare" informazioni, leggi: http://en.wikipedia.org/wiki/Man-in-the-middle_attack

    Per quanto riguarda l'identificare da dove viene una richiesta, leggi: http://en.wikipedia.org/wiki/Cross-site_request_forgery

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    83
    Ho capito! grazie mille!

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    83
    Scusate se rispondo di nuovo, ma non ho capito bene che tipo di attacco posso subire nel caso in cui non mettessi un controllo sul luogo dove si effettua il form. Cioè potete spiegarmi con un esempio generico cosa si rischia? perchè sono andato al link http://en.wikipedia.org/wiki/Cross-s...quest_forgery, ma l'esempio non sono riuscito a tradurlo (e quindi a capirlo) molto bene... Grazie in anticipo

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    83
    Ok ho capito l'esempio però avrei da porvi una domanda:

    Da quello che ho capito il Cross-site request forgery è una tecnica che permette ad un maleintenzionato di appropiarsi dei privilegi di un utente ingannandolo e facendolo accedere ad un link non di sua spontanea volontà. Però supponiamo che io ho un cookie di nome "ciccio" che contiene i dati di accesso di un sito x. Se io conosco l'email di questa persona, potrei inviarli una email con uno script (risiedente su un sito y) che si avvia semplicemente aprendo l'email, (magari metto il link nella src di una immagine) e che invii una email a me con i dati di quel cookie... in questo modo riuscirei ad avere i dati di accesso e ad accedere al sito senza problemi con i dati di questo utente... giusto?

  10. #10
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    83
    Un'altra cosa... per evitare cmq che utenti da altri siti internet possano completare il form di registrazione e inviarlo al mio sito, nelle guide su internet e su questo sito ho visto che per le variabili get e post che contengono file basta inserire un controllo del tipo:

    codice:
    if (strcmp(dirname[$_GET['prova'], ".")==0){
     //esegue il tutto
    }
    else{
    
    echo "errore";
    exit();
    }
    Ma se la variabile GET o POST non contiene un file ma una stringa o un intero, quel controllo va bene ugualmente?
    Grazie ancora per l'aiuto.

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.