Notizie
Luxine

Abbiamo ricostruito gli account di Luxine: password nuove, verifica via e-mail e multi-account

Dopo la segnalazione di SifG22 ho rifatto da zero il sistema degli account. Per sicurezza abbiamo reimpostato tutte le password. Ti racconto cosa è cambiato, come recuperare il tuo accesso e perché i pannelli con l'aspetto da terminale erano un indizio di quello che stava arrivando.

Abbiamo ricostruito gli account di Luxine: password nuove, verifica via e-mail e multi-account
Leggi in
◆

Due giorni fa ho raccontato la falla che il team SifG22 mi ha dimostrato: il mio sistema di recupero password lasciava entrare in un account altrui senza verificare davvero chi lo stesse chiedendo. Ho chiuso l’accesso, gli account e i commenti, e ho promesso di tornare con il sistema rifatto.

Ci siamo. E non è stata una pezza: ho ricostruito l’autenticazione per intero.

Avviso importante prima di tutto: abbiamo reimpostato le password di tutti gli account. Nessuna password precedente funziona più. Qui sotto spiego esattamente come recuperare il tuo accesso a seconda del tuo caso.

Prima di tutto: come rientri

Ci sono due situazioni, e dipendono dall’avere o meno un’e-mail di recupero collegata.

Se avevi un’e-mail di recupero

Puoi farlo da solo, adesso. Vai su Accedi → «Ho dimenticato la password» e segui i tre passaggi. A chi si trova in questo caso abbiamo già inviato un avviso all’indirizzo e-mail.

Se non avevi un’e-mail di recupero

Serve che ti rilasci una password temporanea, ma non devi inseguirmi: prova lo stesso la procedura. Quando inserisci il tuo utente, se l’account esiste e non ha un’e-mail collegata, mi arriva un avviso automatico e me ne occupo.

Puoi anche scrivere a contactoluxine@gmail.com indicando il tuo nome utente, soprattutto se tardo. Quando entri con la temporanea, il sito ti obbliga subito a sceglierne una tua.

È più scomodo, e mi dispiace. Ma l’alternativa — dare accesso a chi semplicemente dice di essere te — è esattamente la falla che SifG22 mi ha segnalato.

Cosa è cambiato, una cosa alla volta

Recuperare la password non è più indovinare un’e-mail

Questo era il buco. Prima bastava azzeccare il nome utente e l’e-mail di recupero perché il sistema ti lasciasse cambiare la password. Il problema salta all’occhio appena lo dici ad alta voce: l’e-mail di qualcuno non è un segreto. Compare in un profilo, in un vecchio commento, ovunque.

Ora l’e-mail non è più la prova, è solo il destinatario. Il processo ha tre passaggi:

  1. Inserisci il tuo utente e la tua e-mail.
  2. Inviamo un codice di 6 cifre a quell’indirizzo. Se non sei tu, il codice arriva nella casella del proprietario vero e tu resti fuori.
  3. Solo dopo aver verificato il codice puoi scegliere la nuova password.

Il codice scade dopo 15 minuti, ammette 5 tentativi e viene bruciato quando lo si usa. E c’è un dettaglio che conta: quando i dati non coincidono, il sistema risponde esattamente come quando coincidono. Prima, un messaggio diverso per «quell’utente non esiste» trasformava il modulo in uno strumento per scoprire quali account fossero registrati.

In più, l’invio delle e-mail adesso funziona davvero. Nel sistema precedente il link di recupero semplicemente non arrivava, ma il sito dava l’invio per riuscito. Era mentire all’utente, ed era nel mio codice.

Eccolo, da cliccare. Nel passaggio 2 ci sono due pulsanti: uno fa il proprietario dell’account, l’altro qualcuno che conosce solo l’e-mail.

Password temporanee che scadono

Per gli account senza e-mail, un amministratore può rilasciare una password temporanea. Ma con regole severe:

  • Scade (di default in 24 ore).
  • Chi entra con quella non può usare il sito finché non definisce una password propria. Non è un suggerimento: qualsiasi pagina provi a visitare lo rimanda alla schermata di cambio.
  • Rilasciarla distrugge la password precedente. Se l’account era compromesso, quella vecchia smette di funzionare in quell’istante.
  • Viene mostrata una sola volta. Nel database resta solo la sua impronta cifrata. Se si perde, non si può consultare: bisogna rilasciarne un’altra.

E la parte che mi preme chiarire di più: io non vedo le vostre password. Né quella temporanea una volta chiusa la finestra, né — soprattutto — quella che scegliete dopo. L’unica cosa registrata è la data in cui l’avete cambiata. Non è una promessa: tecnicamente non esiste in nessun posto in cui io possa leggerla.

Ecco come appare da dentro. Esegui i comandi e confronta cosa rispondeva il sistema vecchio con quello che risponde l’attuale:

Più account nello stesso browser

Questo non è sicurezza, è comodità, ma ne ho approfittato per farlo bene. Ora puoi tenere più account aperti contemporaneamente e passare dall’uno all’altro dal menu utente senza riscrivere la password, come nella posta.

Ogni account conserva la propria sessione separata, e tutte continuano a scadere all’ora esatta. Averne più di uno aperto non allunga l’accesso di nessuno.

Le sessioni ora si possono interrompere davvero

Prima, una sessione avviata restava valida fino alla scadenza, qualunque cosa succedesse. Ora vengono registrate e si interrompono quando devono: cambiando la password si chiudono tutte le altre sessioni del tuo account. Se qualcuno era entrato con la tua vecchia password, viene espulso all’istante.

Trasferire la tua cronologia a un altro account

Se avevi account doppi o vuoi consolidare, puoi spostare i tuoi commenti su un altro account tuo. Richiede la tua password e la scrittura di una frase di conferma, così non succede per sbaglio. Resta registrato: io vedo che il trasferimento è avvenuto, tra quali account e quando. Mai nessuna password.

Sui pannelli con l’aspetto da terminale

In parecchi me l’avete chiesto in questi giorni: perché i pannelli interni hanno quell’aria da console, con i $ comandi e il verde su nero?

La risposta breve: sì, era un indizio.

Quando ho iniziato a rifare tutto questo, la prima cosa a cambiare non è stato il codice di sicurezza ma l’interfaccia di amministrazione. Non per capriccio estetico. Un pannello che sembra un terminale ti obbliga a trattare ogni azione per quello che è: un comando con conseguenze, non un bel pulsante da premere senza pensarci. $ ban, $ chmod, $ passwd -t. Quando lo schermo te lo scrive così, ci pensi due volte prima di premere.

E c’è un lato più pratico. Ridisegnarli mi ha costretto a elencare, una per una, tutte le azioni che un amministratore poteva eseguire. Quell’inventario è ciò che mi ha fatto vedere quali non chiedevano conferma, quali non venivano registrate da nessuna parte e quali — le più gravi — non richiedevano di riscrivere la mia password. Oggi cambiare un ruolo o rilasciare una temporanea mi chiede la password da amministratore ogni volta, anche con la sessione già aperta.

Perciò, quando avete visto comparire quei pannelli, quello che stavate guardando era l’inizio di questo lavoro. La ricostruzione era già in corso.

Cosa non ho risolto

Preferisco dirlo io piuttosto che lo scopriate voi.

  • Gli account senza e-mail dipendono da me. L’avviso automatico fa sì che io lo sappia, ma non risolve il fondo della questione: non esiste un modo di verificare che qualcuno sia chi dice di essere senza un canale verificato, quindi quel controllo continuo a farlo a mano. Se tardo a rispondere, quelle persone aspettano. L’unica soluzione vera è che colleghiate un’e-mail di recupero appena entrate.
  • Il limite di tentativi vive nella memoria del server. In pratica ferma la forza bruta da un singolo IP, ma un attaccante distribuito su più istanze otterrebbe più tentativi del limite nominale. È individuato e lo sposterò su un archivio condiviso.
  • Questo non è passato per un audit esterno. Ho corretto quello che SifG22 ha trovato e quello che ho visto io stesso rivedendo. Non è la stessa cosa che dire che non è rimasto nulla.

Se trovi qualcosa

Il modo in cui SifG22 ha fatto questo — avvisarmi in privato, dimostrarlo senza diffondere alcun dato — è esattamente quello giusto. Se trovi qualcosa di strano, scrivi a contactoluxine@gmail.com prima di raccontarlo in giro. Te ne sarò grato, anche se è una sciocchezza.

Grazie per la pazienza in questi giorni. E grazie a SifG22: un avviso da un amico costa molto meno dell’alternativa.

INDAGINE RECENTE (COMMENTI)

COMMENTI
Accedi per commentareAccedi o registrati nella pagina di accesso ufficiale per commentare e teorizzare.

CARICAMENTO DATABASE...
Indietro
Indice