[ Home | Liste | F.A.Q. | Risorse | Cerca... ]


[ Data: precedente | successivo | indice ] [ Argomento: precedente | successivo | indice ]


Archivio: Marzo 2002 ml@sikurezza.org
Soggetto: Re: Autenticazione in PHP
Mittente: Fausto Pasqualetti
Data: 5 Mar 2002 12:33:19 -0000
Ciao,
          ho letto il tuo codice, allora direi una cosa,
perché la funzione di logging non la richiedi a parte e fai in modo che
vengano loggate ogni accesso non autorizzato alla tua area riservata.
Mi spiego meglio nella tua inclusa.php richiami un funzione tracciatore.php
se non trova autorizzato traccia.
Inoltre mi chiedo perché usi tutti quei session register e non utilizzi i
cookies.
Per me la cosa andrebbe fatto cosi, apri una session register con un ID
random magari criptato con encrypt tramite un pad casuale che cambia di
sessione in sessione, poi metti come cookies quelle info se ti servono,
inoltre introduci una striga di verifica nella sessione.. esempio di codice:

session_start();
session_register ('id_random');
if (!session_is_registered('utente_autorizzato'))
   {
      session_register ('username');
      }
else
    {
      session_unregister ('utente_non_autorizzato');
     }


in questo modo tramite l'encryption e il random riesci ad evitare che ti
possano spooffare la sessione di registrazione.
Per l'output del php non ho ben capito... puoi sempre mettere
error_reporting(0) e gestire l'errore senza header come output se ti spieghi
meglio... non ho capito...
Per javascript per l'encryption non lo so, pero' metti delle funzioni
javascript che controllino la giusta formattazione dei campi del form di
autenticazione in modo tale
da cercare di prevenire buffer overflow (ho detto cercare... :P) consiglio
personale non fare utilizzare caratteri speciali come uid o passwd (tipo il
pipe | lo slash / backslash \ etc etc)



session_set_cookie_params ($tempo, $url,$dominio);
session_start();
 setcookie('tuavariabiel1', '', $tempo, $url,$dominio);
 setcookie('tuavariabile2', '', $tempo, $url,$dominio);
.........
 setcookie('tuavariabileN', '', $temp, $url_uri,$dominio);

inoltre oltra alla verifica di session_is_registered fai un controllo sui
cookies ad ogni pagina e vedi se sono settati correttamente.
Per l'ultima questione, mandare un intruso in una trappola è sempre cosa
carina... e lo illudi che tutto è andato a buon fine quindi non
ritenta l'attacco e inoltre magari lo prendi con le mani sul sacco...
MD5 si crakka facilmente ci sono un sacco di tools che effettuano il
cracking tramite brute-force di MD5.
Per la fase login ---> gateway beh se c'e' uno sniffer si legge tutto
tranquillamente, https sarebbe la soluzione,
altrimenti cosa stupida fai una forma di encryption dei dati molto semplice
a chiave unica definita da te...
anche un root13( ) andrebbe bene per confonder persone poco smart,
altrimenti usa qualcosa di piu' complesso, che
sicuramente deve richiedere piu' tempo per il decription ... non so un
base_url un encrypt del php vedi tu...
pero' devi implementarlo anche sul DB il reverse del tuo algoritmo di
crittografia..
Ti saluto

Fausto






________________________________________________________
http://www.sikurezza.org - Italian Security Mailing List




[ Home | Liste | F.A.Q. | Risorse | Cerca... ]

www.sikurezza.org - Italian Security Mailing List
(c) 1999-2005