Esattamente come sopra, questa volta però la visualizzazione dei file di sessione su server è demandata ai comandi shell (ove si riesca nell'intento ovviamente). Salvando le sessioni su db si evita questo tipo di attacco, a meno di non riuscire a "scovare" le password di accesso allo stesso. Cosa che per la verità richiede solo pazienza, dacché gli script PHP generalmente sono in chiaro e quindi è possibile leggervi le password di connessione.
Già che abbiamo affrontato l'argomento: è bene usare tool appositi di terze parti che criptano e semicompilano il codice sorgente dei nostri script PHP, per lo meno in caso di applicazioni che vadano al di là del semplice sito Web.
Per utenti facenti parte di una stessa organizzazione od a stretto contatto, se il SID viene propagato via query string è possibile che venga visto da qualcuno - cui per la verità dovrei fare i complimenti per rapidità di sguardo e memoria - e replicato altrove, sempre in query string, prima dello scadere della sessione.
Se il SID viene propagato via query string o cookies, si è in rete locale e si usa una connessione non cifrata, è sufficiente uno sniffer di rete al fine di rubare SID (e ben altro): i packet sniffer sono programmi che intercettano il traffico di rete, dipendentemente dalla topologia della rete stessa, mostrando tutto ciò che attraverso tale rete le parti si scambiano, compresi login, password, e-mail private, e via discorrendo.
Va da sé che l'unico rimedio possibile per evitare lo sniffing è usare un sistema di tunneling SSL per proteggere i dati in transito. Nell'immagine seguente è mostrato come ricavare, via sniffer, nome utente e password di un utente terzo che in rete locale è in procinto di verificare se gli sono arrivati messaggi di posta, via webmail.
Su questa guida non viene spiegato né cos'è, nel dettaglio, nè come utilizzare il sistema di tunneling cifrato SSL, Secure Socket Layer: a tal fine si rimanda ad altre guide e fonti Internet.
Sessioni PHP: cosa sono, come si usanoDalla configurazione di PHP, alla gestione delle sessioni in un... |
Continuous Integration: automatizziamo i client con PhingContinuous Integration: automatizziamo i client con Phing. Esempi... |
Archiviazione delle applicazioni PHP con PharCome incorporare intere applicazioni PHP all'interno di un singolo... |
I traits in PHP 5.4Cosa sono, a cosa servono e come si unsano i traits, la novità per... |
PHP 5.4: il web server integratoImpara ad usare il web server integrato nella versione 5.4 di PHP:... |
Guida Yii FrameworkCome creare applicazioni Web in modo semplice e veloce con il... |
Guida Applicazioni Facebook con PHPCome realizzare un'applicazione per Facebook. Dalle basi della... |
Guida PHP con Windows e IISInstallare ambienti per lo sviluppo e la produzione di applicazioni... |
Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.
Iscriviti alla newsletter
|
|
Corso PHP per Webmaster11 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |