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

    impedire di vedere il sorgente php, o cmq proteggere le password

    ciao gente ho cercato in giro sul forum e sul sito e ho trovato qualcosa ma ho tanta confusione in mente, spero ke mi possiate aiutare. sto creando una utilità di gestione dell'aggiornamento delle pagine di un sito internet tramite un form che legge il file della pagina internet, permette la modifica e quindi salva nel file stesso. e fin qui praticamente nessun problema. ora però vorrei implementare la seguente cosa e non so come fare: vorrei che solo l'amministratore del sito potesse accedere alla gestione delle modifiche per ovvi motivi, magari richiedendo il controllo con una password. però se ad esempio inserisco il controllo della password nel file php della gestione, dovrà esserci qualcosa del tipo if (la password immessa == la password memorizzata) allora vai avanti...... però se io faccio una wget ad esempio del file php di amministrazione, questo mi viene giù bellamente!!! mostrando tutto il codice php tra l'altro. quindi scoperta immediata della password memorizzata e hackerizzazione istantanea... inoltre il mio codice php è completamente esposto!!! come posso fare a prevenire tutto ciò e creare un decente sistema per aggiornare le pagine del sito tramite il mio form??? grazie mille a tutti

  2. #2
    se fai un wget di una pagina php il codice e quindi anche le password non corrono rischi

    ciao

  3. #3
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    Originariamente inviato da bubu77
    se fai un wget di una pagina php il codice e quindi anche le password non corrono rischi

    ciao
    quoto pienamente, ma visto ke usi linux puoi fare, da shell

    $ php -r 'echo md5("tuapass")."\n";'

    ti ricopi quello ke ti dice (il cosidetto HASH) e poi, quando vai a fare quel famoso if, scrivi

    if (md5('passinserita') === "hashmd5presodaquellaistruzione")...

    cosi, chi dovrebbe (come dici tu) scaricarsi la tua pagina php con wget (cosa altamente impropabile), scaricherebbe gli hash

    in ogni caso, è improbabile quel che dici poiché wget accede come un browser, quindi scaricherebbe la pagina già elaborata dall'interprete php, mai che si scarica il codice...

  4. #4
    è effettivamente stato un mio abbaglio... il problema ke notavo era causato dalla mescolanza di html e php e vedrò di risolverlo. piuttosto, ho un altro problemino: siccome ci sono 4 files php che occorrono al mio scopo, come faccio a fare in modo ke l'utente qualsiasi non possa eseguire nessuno di questi 4 files?

  5. #5
    L'utente "non qualsiasi" come ci accede? direttamente o tramite include? Come riconosci il tipo di utente che può accederci o meno?

  6. #6
    evitare che accedano direttamente ai file che includi è semplice

    se nel file che include definisci una qualsiasi variabile nei file includi fai

    if(!isset($pippo)){
    exit("Che vuoi!? :-)");
    }

  7. #7
    tutti tramite include, tranne uno che è l'azione del metodo POST del form di modifica... per questo come posso fare? visto ke una volta ke agisco su di esso le variabili definite sembrano scomparire...

  8. #8
    ehm..... mi scuso x la mia ignoranza (programmo da poco) ma mi è sorto un altro problema. come faccio a "globalizzare" questa variabile di controllo per farla vedere a tutti gli script php? chiaramente spero non col metodo stringa di query...... illuminatemi

    cmq mi spiego meglio: non sono tutti include... il primo passaggio è questo:

    lista.php contiene <a href='modifica.php?page= eccetera..... (scelta della pagina da modificare)

    modifica.php fa un controllo e contiene poi include ("amministrazione.php")

    amministrazione.php carica in un formil testo letto dal file puntato da $page, permette le modifiche e poi contiene <form method="POST" action="edit.php?page=<? print ($page) ?>">

    (ho dovuto fare la stringa di query così se no non passava $page a edit.php)

    edit.php riceve $page dalla query e il testo dal form e scrive le modifiche nel file puntato da $page

    forse se avessi $page e la variabile di verifica come globali farei molta meno fatica ma non so gestire la cosa

  9. #9
    Nel file dell'action puoi mettere semplicemente
    Codice PHP:
    if(!isset($_POST['submit'])) die('Accesso non consentito'); 
    ed ovviamente nel form devi assegnare il name submit all'input corrispondente

    Per i file inclusi, nel primo file metti
    Codice PHP:
    define('IN_SITE'1); 
    e nei file che saranno inclusi metti
    Codice PHP:
    if(!defined('IN_SITE')) die('Accesso non consentito'); 
    Altra alternativa per i file inclusi potrebbe essere questa
    Codice PHP:
    if(eregi('nome_file.php'$_SERVER['PHP_SELF'])) die('Accesso non consentito'); 

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.