Stiamo modificando l’impostazione predefinita per non fornire queste informazioni. Invece, il modulo di registrazione apparirà così, indipendentemente dal fatto che l’e-mail sia già registrata o meno:
Ciò influisce anche sul recupero della password in modi simili. Con l’impostazione disabilitata, il modulo fornisce un feedback immediato che l’e-mail è nel sistema:
Un attore malintenzionato può utilizzare questo feedback per eseguire un account enumeration, facendo sapere loro se determinati utenti esistono su questo forum, il che può consentire loro di prendere di mira tali utenti con il phishing.
Non influenzerà negativamente gli utenti legittimi?
Il caso qui è se un utente dimentica di avere già un account e tenta di registrarsi o reimpostare la password utilizzando la stessa e-mail, il che dovrebbe essere un evento relativamente raro. Ma anche in quel caso, riceverà semplicemente un’e-mail che lo informa che ha già un account.
Il cambiamento, in definitiva, non influisce sulla capacità degli utenti legittimi di registrarsi o accedere ai propri account.
Ma preferisco il vecchio predefinito
Se hai modificato questa impostazione in qualsiasi momento, il nuovo predefinito non sovrascriverà l’impostazione personalizzata. Se desideri tornare al vecchio predefinito, puoi reimpostare l’impostazione hide_email_address_taken su false.
Cosa succede nel caso in cui l’utente ricordi male l’indirizzo e-mail che ha utilizzato per registrarsi?
Ad esempio, supponiamo che l’utente pensi di essersi registrato come example@gmail.com ma in realtà si sia registrato come example@yahoo.com. Tenterà un ripristino della password fornendo l’indirizzo e-mail example@gmail.com, ma non esiste alcun account con quell’indirizzo e-mail.
Se un account corrisponde a ted@discourse.org, riceverai a breve un’e-mail con le istruzioni su come reimpostare la password.
Se in quel caso l’utente semplicemente non riceve un’e-mail, non saprà di aver fornito l’indirizzo e-mail errato e non saprà quando/se riprovare con un indirizzo e-mail diverso.
Invece, il messaggio dovrebbe semplicemente dire: “Riceverai a breve un’e-mail con le istruzioni su come reimpostare la password” e l’utente dovrebbe ricevere un’e-mail che spiega “Qualcuno ha richiesto un ripristino della password per example@gmail.com, ma non esiste alcun account con quell’indirizzo e-mail.”
Ciò non consentirà a nessuno di eseguire l’enumerazione dell’account, ma permetterebbe all’utente di sapere che ha inviato l’indirizzo e-mail errato e di provarne uno diverso.
Il problema con questo approccio è che consente ad attori malintenzionati di attivare l’invio di email ad indirizzi che non hanno mai interagito con la tua istanza, o che non esistono.
Ciò potrebbe portare a un numero molto più elevato di email inviate, potenzialmente causando costi monetari elevati. Potrebbe anche portare a un grande aumento di utenti che segnalano spam e a un tasso di rimbalzo più elevato, causando potenzialmente ai provider come Gmail il blocco delle email inviate da te.
Gli aggressori potrebbero già farlo semplicemente registrando nuovi account. Se l’aggressore conosce 100.000 indirizzi e-mail, può registrare 100.000 account e Discourse invierà a ciascuno di essi un’e-mail di attivazione, che ciascun utente potrebbe segnalare come spam.
L’invio di e-mail “impossibile reimpostare la password, il tuo account non esiste” a indirizzi e-mail di account che non esistono non rende questo attacco né più facile né più difficile.
Questo attacco non è un problema per la maggior parte dei siti, ma, se sei preoccupato, dovresti usare il plugin Discourse hCaptcha, che aumenta il costo per l’aggressore. (Meta non lo usa; la maggior parte dei forum ospitati da Discourse non lo usa.)
Penso che se Discourse accetta il mio suggerimento di iniziare a inviare e-mail “impossibile reimpostare la password, il tuo account non esiste” a indirizzi e-mail di account che non esistono, avrebbe senso che il plugin hCaptcha funzioni anche sul modulo di reimpostazione della password oltre che sul modulo di registrazione. (Io stesso non avrei comunque bisogno/userei hCaptcha.)
Sì, è valido. Ci ho pensato solo al caso in sé, senza considerare altre aree in cui è già possibile e, come accade, completamente impraticabile da prevenire.
Ho dimenticato la password e voglio accedere a questo sito. Inserisco quello che penso sia l’indirizzo email corretto
Non ricevo un link per reimpostare la password
Quindi ora conosco automaticamente una delle due opzioni: Uno, ho inserito l’indirizzo email sbagliato o Due, il sito non funziona correttamente.
Le mie opzioni ora sono: provare un altro indirizzo email, o provare a contattare qualcuno che gestisce il sito.
Ora, con il tuo suggerimento, ricevo un’email che mi dice che l’account non esiste. Le mie opzioni sono provare un altro indirizzo email, o contattare qualcuno che gestisce il sito. È lo stesso punto di arrivo con 0 passaggi aggiuntivi.