Post  |  Commenti

Post più letti

11th
GEN

Gmail S/MIME

1 Star2 Stars3 Stars4 Stars5 Stars (Nessun voto)
Loading ... Loading ...

Posted by RedSend | Filed under Firefox Add-ons, Google

Oggi volevo mostrarvi questa estensione per Firefox che permette di inviare messaggi cifrati e firmati tramite GMail. Questa estensione risulta molto utile nel caso siete dei poveri dipendenti, come me, di gmail e di tutti i suoi vantaggi ma che necessitano di avere un minimo di privacy e sicurezza senza rinunciare alla comodità dell’interfaccia WEB offerta da quest’ultima.

secure-email.jpg

Leggi il resto…

Tags: > > > > > > > > > > >

25th
AGO

SSL assente? No problem… usa CHAP Secure Login plugin

1 Star2 Stars3 Stars4 Stars5 Stars (Nessun voto)
Loading ... Loading ...

Posted by RedSend | Filed under Programming

Qualche tempo fà in questo post “SSL assente? No problem… usa CHAP login system” spiegai a grandi linee il funzionamento del protocollo CHAP per ottenere un login sicuro e non permettere a chi sbircia sui canali insicuri di venire a conoscenza della nostra password.

secure_login.jpg

Circa una settimana fà ho finito di scrivere il plugin per wordpress che modifica il sistema di login standard, adattandolo all’utilizzo del protocollo CHAP. Per questo breve periodo l’ho utilizzato sul mio blog senza avere nessun problema, ho creato la pagina del plugin “CHAP Plugin” in cui potete scaricarlo e lasciare un commento per un eventuale bug riscontrato, qualche critica e semai se proprio vi stupisce anche qualche apprezzamento. :)

Tags: > > > >

26th
GIU

SSL assente? No problem… usa CHAP login system

1 Star2 Stars3 Stars4 Stars5 Stars (Nessun voto)
Loading ... Loading ...

Posted by RedSend | Filed under Programming

No non temete, non volgio vendervi nulla, in questo post vi voglio introdurre ad un problema molto comune, ovvero quello di inviare atraverso le form html informazioni sensibili, come nome utente e password, su un canale insicuro non protetto. E’ fobia comune tra i più paranoici e anche quelli un pò meno, assicurarsi che ogni qual volta si inseriscono informazioni sensibili in un form html, controllare che la connessione avvenga tramite protocollo https e quindi utilizzando ssl per rendere il canale sicuro e criptato. A volte però capita che il server su cui si vanno ad inviare i dati non supporta il protocollo https, come ad esempio il server su cui risiede questo blog, quindi ogni qual volta inserisco nome utente e password per accedervi, le informazioni viaggiano in chiaro sotto gli occhi di tutti. Una possibile soluzione a questo inconveniente è l’utilizzo di un protocollo per l’autenticazione che garantisce la segretezza delle informazioni da inviare nonostante viaggino su un canale insicuro. Tra i vari protocolli che esistono, CHAP è uno di questi. Il suo funzionamento è molto semplice e per implementarlo è richiesta solo una funzione hash valida e la possibilità di concatenare delle stringhe :).

CHAP login system

Il livello di sicurezza di questo protocollo è pari a quello della funzione hash che si utilizza, giusto per essere chiari, una funzione hash è, scusate la ripetizione, una funzione univoca operante in un solo senso (ossia, che non può essere invertita), atta alla trasformazione di un testo di lunghezza arbitraria in una stringa di lunghezza fissa, relativamente limitata (info). L’idea che sta dietro al protocollo CHAP è questo:

  1. Il server al momento della richiesta del form per effettuare il login, generera un numero casuale che non si ripeterà in futuro e lo inserirà all’interno della sessione associata con il client che ha effettuato la richiesta e all’interno del form in un campo hidden
  2. Il client (il browser), riceverà il form con il numero generato dal server, farà inserire nome utente e password all’utente e al momento della sottomissione del form, provvederà a concatenarà le stringhe corrispondenti al nome utente, alla password e al numero inviato dal server le passerà alla funzione hash che restituirà una stringa di lunghezza fissa, la quale sarà l’unico dato insieme al nome utente ad essere inviato al server attraverso il canale di comunicazione non protetto.
  3. Il server per verificare se nome utente e password inviati dal client sono corretti, provvederà ad effettuare le stesse operazioni di prima, quindi concatenerà nome utente e password, recuperandole da un database o ovunque si voglia, aggiungerà anche il numero casuale generato recuperandolo dalla sessione associata al client e sulla stringa ottenuta vi calcolerà l’hash. Se il risultato ottenuto dalla funzione hash corrisponde alla stinga che ha ricevuto dal client, allora vuol dire che sono state usate le stesse informazione per calcolare l’hash e quindi che il nome utente e password erano corrette.

In questo modo l’unica informazione che viaggerà nel canale non protetto è la stringa corrispondente all’hash dei dati inseriti nel client, quindi essendo una funzione non invertibile, cioè che dall’hash di una stringa non è possibile ricavarne la stringa originale, anche se qualcuno è in ascolto sul canale non saprà cosa farsene dei dati catturati.

A questo indirizzo vi è una guida più dettagliata del protocollo e su una sua possibile implementazione utilizzando php e javascript.

Altri link: libreria MD5

Tags: > >
Il contenuto di questo Blog è rilasciato sotto Licenza Creative Commons (Leggi)