Visualizzazione risultati 1 fino 25 di 25

Discussione: protezione file con password

  1. #1
    Guest

    Predefinito

    Ciao a tutti,
    ho cercato nel forum, e alla fine ho capito che non si può usare ".htaccess" per impedire l'accesso in aree riservate, viene sempre indicata come soluzione il lucchetto nel pannello di controllo, ma si può usare questo metodo anche per bloccare un singolo file in una directory? Per esempio il file che contiene la password di connessione al DB MySql?

    Ciao e grazie 8)

  2. #2
    Guest

    Predefinito

    Non sono molto sicuro del fatto che non si possa usare htaccess.....
    io stesso un paio di giorni fa l'ho usato e funziona mooooooolto tranquillamente...

    E' tutto scritto quì!
    http://www.altervista.org/forum/viewtopic.php?t=12995


  3. #3
    L'avatar di gve
    gve
    gve non è connesso Utente storico
    Data registrazione
    26-01-2003
    Residenza
    Brescia
    Messaggi
    2,964

    Predefinito

    Secondo me il metodo con htaccess usato qua su altervista è tutt'altro che sicuro: tutti i file, compreso quello con le password, stanno nello spazio accessibile via web ...

    Ovvio, meglio di niente, ma uno script php anche banale secondo me è più sicuro.
    | Regolamento del Forum | Regolamento di AlterVista | FAQ di AlterVista | Netiquette |

    GVE = GVE Virtual Extension
    AVCM #: 6637

  4. #4
    Guest

    Predefinito

    Citazione Originalmente inviato da Jole
    Non sono molto sicuro del fatto che non si possa usare htaccess.....
    io stesso un paio di giorni fa l'ho usato e funziona mooooooolto tranquillamente...

    E' tutto scritto quì!
    http://www.altervista.org/forum/viewtopic.php?t=12995

    anche io ho usato .htaccess per fare una prova, ma mi è uscito errore 500 e il file .htaccess è stato successivamente cancellato.

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da gve
    Secondo me il metodo con htaccess usato qua su altervista è tutt'altro che sicuro: tutti i file, compreso quello con le password, stanno nello spazio accessibile via web ...

    Ovvio, meglio di niente, ma uno script php anche banale secondo me è più sicuro.
    si, ma non capisco come proteggere i file con password, visto che il file .htaccess non si può usare

  6. #6
    Guest

    Predefinito

    Prova a fare dalla riga di comando del tuo ftp, dopo esserti posizionato nella cartella giusta, RETR .htaccess .Queto dovrebbe scaricarti il file sul tuo pc.

    A me i file .ht risultano invisibili + che cancellati!!!

  7. #7
    L'avatar di gve
    gve
    gve non è connesso Utente storico
    Data registrazione
    26-01-2003
    Residenza
    Brescia
    Messaggi
    2,964

    Predefinito

    Citazione Originalmente inviato da cartolaio
    Citazione Originalmente inviato da gve
    Secondo me il metodo con htaccess usato qua su altervista è tutt'altro che sicuro: tutti i file, compreso quello con le password, stanno nello spazio accessibile via web ...

    Ovvio, meglio di niente, ma uno script php anche banale secondo me è più sicuro.
    si, ma non capisco come proteggere i file con password, visto che il file .htaccess non si può usare
    Un modo banale è questo: inserisci all'inizio del tuo file:
    <?php
    $usr='tuonome';
    $pwd='tuapassword';

    $form='<form method="post" action="'.$_SERVER['PHP_SELF'].'">User: <input name="user" type="text" size="10" /><br />Password: <input name="pass" type="password" size="10" /><br /><input type="submit" value="Vai!" /></form>';

    if (!isset($_POST['pass']) || !isset($_POST['user'])) die($form);
    if ($_POST['user']<>$usr || $_POST['pass']<>$pwd) die($form);
    ?>


    Ovviamente vale solo per file con estensione .php ; se hai un html basta riominarlo e di conseguenza aggiustare i collegamenti ad esso, mentre per le immagini o altri oggetti il metodo non è utilizzabile.
    | Regolamento del Forum | Regolamento di AlterVista | FAQ di AlterVista | Netiquette |

    GVE = GVE Virtual Extension
    AVCM #: 6637

  8. #8
    Guest

    Predefinito

    Personalmente credo sia piu' sicuro un .htaccess che un php, ma sono opinioni.

    I file .htaccess e .htpasswd su AV funzionano, almeno per quanto rigurada il proteggere una cartella. Io li uso regolarmente e non ho mai avuto problemi.

    Per riuscire a recuperare un file .htaccess (che siccome ha il punto all'inizio e' un file nascosto) con un sistema windows prima di recuperarlo dovete rinominare il file .htaccess in qualcosa di "windowsiano" come pippo.txt (io uso il caro vecchio ftp di DOS per questa operazione)

    Idem per l'operazione inversa: uploadate pippo.txt e poi lo rinominate in .htaccess quando e' gia' sul server di AV.

  9. #9
    Guest

    Predefinito

    i file .htaccess, sono più sicuri, xchè apache, ne occulta l'esistenza, quindi per il web non esistono!

  10. #10
    L'avatar di gve
    gve
    gve non è connesso Utente storico
    Data registrazione
    26-01-2003
    Residenza
    Brescia
    Messaggi
    2,964

    Predefinito

    Citazione Originalmente inviato da Jole
    i file .htaccess, sono più sicuri, xchè apache, ne occulta l'esistenza, quindi per il web non esistono!
    Non sono d'accordo; se i file .htaccess sono più sicuri del php non è per questo: infatti dal momento che il php è interpretato dal server, e solo il codice html generato viene trasmesso via web, un codice tipo quello banale del mio esempio, o anche codici più elaborati, non verranno mai trasmessi via web; ovvero, solo il contenuto dei die(), o eventualmente del resto del file fuori dai tag php (per far riferimento al mio esempio), viaggerà nel web, i nomi utente e le password no.

    Quindi le informazioni importanti restano altrettanto nascoste con php che con .htaccess, e anzi forse più col primo.

    Premetto che non ho mai usato nessuno dei due metodi in quanto non ho contenuti che tengo a proteggere, però tempo fa mi ero documentato e avevo trovato quanto segue (una fonte possibile è http://www.javascriptkit.com/howto/htaccess3.shtml ):
    For security, you should not upload the htpasswd file to a directory that is web accessible (yoursite.com/.htpasswd), it should be placed above your www root directory. You'll be specifying the location to it later on, so be sure you know where you put it.
    Ciò mi porta a credere che poichè su altervista ciò non è fattibile i file con le password, sempre che uno riesca a risalire al loro nome (che può anche essere diverso da .htpaswd) possano essere letti via web; come detto non ho mai verificato, per cui se qualcuno sa che la cosa è diversa son pronto a ricredermi.

    Certo, la password in tali file è criptata, ma la crittografia usata da questo metodo di protezione se non erro è alquanto debole.

    Una cosa è senz'altro vera: il php permette di proteggere solo il file php in cui è inserito, per cui è estremamente limitato come estensione, in particolare non consente la protezione di immagini o altri contenuti, mentre .htaccess regola l'accesso a tutto il contenuto di una cartella, permettendo quindi una protezione anche di questi elementi, per cui se uno ha necessità di ciò ovviamente l'unica soluzione è usare .htaccess . Ma è l'unica (benchè non da poco) superiorità che ha, secondo me.
    | Regolamento del Forum | Regolamento di AlterVista | FAQ di AlterVista | Netiquette |

    GVE = GVE Virtual Extension
    AVCM #: 6637

  11. #11
    Guest

    Predefinito

    in apache, pui settare, una categoria di file che non vengono resi visibili dal web..... come standard, apache è già settato per tutti i file che iniziano per .ht, quindi anche .htpasswd o .htpippo non esisteranno per il web.

    Nella citazione che hai fatto, si dice di non mettere il file .htpasswd in una directory accessibile dal web(quale è la root del tuo sito)....infatti, se la metti in una directory protetta (la proteggi con .htaccess ) non hai problemi, xchè non solo .htaccess è invisibili, ma anche la dir che lo contiene lo è.....

    Per quanto riguarda il contenuto di .htpasswd, questo può essere sia in formato testo (formato user(inchiaro):passwd(inchiaro)) ovviamente meno sicuro che criptato (formato user(inchiaro):password(md5)) il formato md5 è lo stesso che viene utilizzato da unix/linux per memorizzare tutti gli utenti per l'accesso al sistema...

    più sicuro di così????

  12. #12
    Guest

    Predefinito

    La mia richiesta è scaturita da una prova fatta con un file .htaccess, ho fatto una prova molto banale, ho creato una directory, ho fatto l'upload del file .htaccess rinominato (ho tolto il punto), ho anche uploadato un file di testo ...prova.txt, che era quello che negavo l'accesso nel file .htaccess, ho provato ad aprire il file prova.txt con il browser prima di rinominare il file .htaccess e si apriva, quando ho rinominato il file htaccess in .htaccess ho avuto error 500, e guardando altri topic, su uno in particolare c'è scritto che su altervista i file .htaccess non sono supportati e che se vengono usati vengono automaticamente cancellati, in effetti quello che è successo a me, voi continuate a dire che lo usate normalmente.... siceramente non so cosa pensare.... o sto prendendo una grandissima cantonata (...oddio... potrebbe anche essere ) ...o voi avete altri privilegi

    Grazie l 8)

  13. #13
    Guest

    Predefinito

    ma sei sicuro che ti abbia cancellato i file???? forse te li ha resi invisibili... proprio come fa con i file .htaccess!!!! prova ad accedere alla directory via riga di comando con ftp........

  14. #14
    L'avatar di gve
    gve
    gve non è connesso Utente storico
    Data registrazione
    26-01-2003
    Residenza
    Brescia
    Messaggi
    2,964

    Predefinito

    Citazione Originalmente inviato da Jole
    in apache, pui settare, una categoria di file che non vengono resi visibili dal web..... come standard, apache è già settato per tutti i file che iniziano per .ht, quindi anche .htpasswd o .htpippo non esisteranno per il web.
    Questa non la sapevo, cosa molto interessante; alla luce di tale informazione mi ricredo subito, la sicureza alfine è dunque la stessa tra php e htaccess (ovviamente usando encryption analoghe per le password), ma htaccess è decisamente più potente in quanto ha come target qualsiasi contenuto.

    Citazione Originalmente inviato da Jole
    Nella citazione che hai fatto, si dice di non mettere il file .htpasswd in una directory accessibile dal web(quale è la root del tuo sito)....infatti, se la metti in una directory protetta (la proteggi con .htaccess ) non hai problemi, xchè non solo .htaccess è invisibili, ma anche la dir che lo contiene lo è.....
    Capito, in efetti la cosa è sensata anche così, mi era sfuggiata la possibilità di nascondere il contenuto nella cartella stessa. Comunque alla luce di quanto esposto prima ciò non sarebbe neanche necessario (anche se è comunque è una prudenza in più) visto che i file che iniziano con .ht non sono visibili dal web.
    | Regolamento del Forum | Regolamento di AlterVista | FAQ di AlterVista | Netiquette |

    GVE = GVE Virtual Extension
    AVCM #: 6637

  15. #15
    Guest

    Predefinito

    Alla fine ci siamo intesi!!!!
    direi che questa è la dimostrazione dell'utilità di un forum........
    che apache sia con te

  16. #16
    L'avatar di gve
    gve
    gve non è connesso Utente storico
    Data registrazione
    26-01-2003
    Residenza
    Brescia
    Messaggi
    2,964

    Predefinito

    Eh già .. e si impara sempre qualcosa di nuovo
    Fra l'altro stavo pensando a un'altro possibile utilizzo di questa impostazione di Apache (file .htqualcosa nascosti): provare a usarla accoppiata al php per tener nascosti certi dati inviati dagli utenti nel caso questi vengano salvati in file :D
    | Regolamento del Forum | Regolamento di AlterVista | FAQ di AlterVista | Netiquette |

    GVE = GVE Virtual Extension
    AVCM #: 6637

  17. #17
    Guest

    Predefinito

    Vorrei aggiungere che l'algoritmo md5 di apache NON e' lo stesso di php.

    Per ragioni a me oscure una stessa password cifrata in md5 di apache puo' avere hash diversi.

    Provate se volete:

    http://www.euronet.nl/~arnow/htpasswd/


    mah.

  18. #18
    Guest

    Predefinito

    guarda questa bella funzione, serve a generare i file .htpasswd per gli utenti che hai in una tabella del db!!

    [code:1:a954cd8b50]
    <?php
    function makehtaccess() {
    global $Cfg;
    connect();
    $users = mysql_query("select username,pass from users where access > '0'") or die ("Can't get users (makehtaccess)");
    $num = mysql_numrows($users);
    $t = 0;
    if ($num != 0) {
    $f = fopen(".htpasswd", "w+");
    while ($num>$t) {
    unset($seed);
    # generate random seed
    $all = explode( " ",
    "a b c d e f g h i j k l m n o p q r s t u v w x y z "
    . "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z "
    . "0 1 2 3 4 5 6 7 8 9");
    for($i=0;$i<9;$i++) {
    srand((double)microtime()*1000 000);
    $randy = rand(0, 61);
    $seed .= $all[$randy];
    }
    $username = mysql_result($users,$t,"username"&#4 1;;
    $password = mysql_result($users,$t,"pass");
    $crypt = crypt($password, "\$1$$seed");
    fputs($f,"$username:$crypt\n"&#4 1;;
    $t++;
    }
    }
    }
    ?>
    [/code:1:a954cd8b50]

    la tabella per l'esempio è:

    [code:1:a954cd8b50]

    CREATE TABLE users(
    username varchar(30) NOT NULL,
    pass varchar(40) NOT NULL,
    access int(1) DEFAULT '0' NOT NULL,
    );
    [/code:1:a954cd8b50]


  19. #19
    L'avatar di gve
    gve
    gve non è connesso Utente storico
    Data registrazione
    26-01-2003
    Residenza
    Brescia
    Messaggi
    2,964

    Predefinito

    Ho trovato questa pagina della documentazione di Apache che riguarda l'argomento: http://httpd.apache.org/docs/howto/auth.html
    Interessanti in particolare i caveats sulla sicurezza del basic e digest method.

    Per quanto riguarda la ragione per cui, come dice CoD, md5 hash di htaccess cambia di volta in volta forse può essere ricondotto a un uso dell'hashing simile a quello suggerito su http://www.php.net/manual/en/function.md5.php (post del 21-May-2003 e 12-Sep-2003), come sembra del resto anceh dallo script di Jole.

    Resta però una questione: perchè l'md5 del php genera una stringa di 32 caratteri mentre htaccess usa stringhe di 13 caratteri? Non è che in realtà htaccess usa qualcosa di simile a md5, ma non il vero md5? Guardando il tuo script Jole noto che usi crypt per generare l'hash, e crypt dal manuale risulta usare normalmente non md5 ma DES ... però ho anche trovato vagando in rete dichiarazioni esplicite e presumibilmente attendibili che affermano che viene usato md5 ... sapete illuminarmi?
    | Regolamento del Forum | Regolamento di AlterVista | FAQ di AlterVista | Netiquette |

    GVE = GVE Virtual Extension
    AVCM #: 6637

  20. #20
    Guest

    Predefinito

    estratto direttamente dal manuale ufficiale
    http://it2.php.net/manual/it/function.crypt.php

    Some operating systems support more than one type of encryption. In fact, sometimes the standard DES-based encryption is replaced by an MD5-based encryption algorithm.

  21. #21
    L'avatar di gve
    gve
    gve non è connesso Utente storico
    Data registrazione
    26-01-2003
    Residenza
    Brescia
    Messaggi
    2,964

    Predefinito

    OK, ho letto meglio la descrizione di crypt
    In pratica in base al salt fornito posso scegliere anche il sistema su cui si basa la crittografia.

    Però resta una cosa: md5 fornisce hash di 32 caratteri (e anche il tuo script giustamente lo fa: togliendo $1 iniziale sono 32 caratteri). Però il link da te fornito, http://www.euronet.nl/~arnow/htpasswd/ , ma anche altri che si trovano con una semplice ricerca con google, o ad esempio anche Encode Unix Password, un programmino per generare la coppia di file htaccess e htpasswd che mi ero scaricato, forniscono sempre hash di 13 caratteri. Ho visto, provando crypt(), che tale lunghezza è quella tipica delle hash generate con DES.
    Ora immagino si possano usare entrambe, e Apache discrimina in base alla lunghezza il tipo di codifica usata, giusto?
    Ma se md5 è meglio, allora perchè normalmente viene usato il DES?
    Lato client non ci son problemi, visto che con l'autenticazione htaccess basic la password viene spedita al server non cryptata (v. link al manuale Apache del mio post precedente); ad occhio la cosa non ha senso.
    | Regolamento del Forum | Regolamento di AlterVista | FAQ di AlterVista | Netiquette |

    GVE = GVE Virtual Extension
    AVCM #: 6637

  22. #22
    Guest

    Predefinito

    scusate un secodo ma se il problema è solo per la pass di accesso al database... che è all interno di un file .php da browser non sara mai e dico mai possibile vedere tale password... xke il codice è solo nel lato server e anke kiamando la pagina dal lato client con un browser apparira solo una pagina bianca...
    (forse è una caxxata ma sto imparando il php e adesso mi avete fatto venire un dubbio)

  23. #23
    Guest

    Predefinito

    Se e' un file php non c'e' problema, se e' un file .inc o altro si'.

    Inoltre e' sempre possibile (ma solo per veri geniacci) trovare un qualche tipo di injection in grado di esporre il codice della pagina.

    Ad ogni modo io sapevo che la password per il database NON serve, a meno che non abbiano cambiato le regole (e quindi non si spiega perche' il mio db continui a funzionare senza password)

    Provate a non mettere la password: vedrete che si connette lo stesso

    P.S.: non preoccupatevi: il fatto e' che vi connettete da localhost (il vostro spazio web) e quindi anche senza password nessuno puo' entrare nel vostro db.

  24. #24
    Guest

    Exclamation Sicurezza .htpasswd

    Il file utente:password non è assolutamente visibile (è fatto apposta, a meno che non si metta in discussione la sicurezza del server). Ma alcune precisazioni sono dovute:

    1) Da come è congegnata AV il file è SEMPRE visibile e modificabile dagli script interni. Perciò bisogna cautelarsi dal fatto un utente non possa uppare uno script e lanciarlo... ma questo generalmente è impedito da AV, tuttavia fate attenzione a cosa VOI volete che i vostri utenti possano fare, perchè potreste aprire una "breccia" involontariamente...

    2) Anche ammesso che riesca ad ottenere il fatidico file, l'hashing non permetterà la decodifica della password. L'unico modo attualmente conosciuto per farlo è il cosiddetto brute force attack (trovate ampia documentazione su google) ma ci vogliono ore (password con parole del vocabolario), mesi o anni per password più accurate (lettere intervallate ogni tanto da numeri, tipo: 1ac2m3, la lunghezza non è importantissima).

    Ma a questo punto: due considerazioni
    1) se dovessi fare una roba del genere (attacco di forza bruta), lo farei sicuramente attaccando il portale di altervista direttamente, cercando di indovinare la vostra password data la username, in modo da poter assumere il controllo del vostro sito e di non dovermi procurare quel file!
    2) In alternativa, essendo che le password sono inviate in chiaro si potrebbe cercare di intercettare il flusso di dati... (lo stesso problema esiste chiaramente anche col php)

    In buona sostanza non vi preoccupate della sicurezza del file suddetto ai vostri fini è più che alta... a meno che non siate contro ECHELON la NASA o la CIA o contro i ragazzi della GNU (che hanno sempre un sacco di tempo per queste cose)

    Questo è quello che so, mi occupo della sicurezza di una rete, non sono molto esperto per quanto riguarda il web

  25. #25
    Guest

    Predefinito

    Ma.. cerco d capire ma c rinuncio...

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •