Non riusciamo a rilevare se il tuo account è stato creato: assicurati che i cookie siano abilitati

Queste sono ottime informazioni. Non ho visto specificamente problemi di CORS, ma approfondirò l’argomento. Se trovo qualcosa, lo pubblicherò qui.

Dopo aver esaminato gli script, sembra che sia correlato a Cloudflare. State utilizzando Cloudflare? https://boards.neocron.org/cdn-cgi/apps/head/QNWX_8GN-3K7wUr6Qa73LdoD3JI.js. Noi non lo stiamo utilizzando, quindi probabilmente non abbiamo riscontrato questo specifico problema.

Grazie!

Analizzando la situazione, avevamo abilitato Settings->Security->content security policy.

Una volta disabilitata, gli utenti sono riusciti a registrarsi. Abbiamo provato ad aggiungere gli URL presenti nel rapporto sopra alle fonti di script nella whitelist, ma ciò non ha risolto il problema.

Sembra che Chrome abbia rafforzato la propria CSP. → Manifest - Content Security Policy  |  Chrome Extensions  |  Chrome for Developers

mmm temo che abbiamo disabilitato quella funzione; dovrebbe essere qualcos’altro a causare questo problema

Scusate :frowning:

Abbiamo impostato DISCOURSE_ENABLE_CORS su true e abbiamo configurato le nostre origini CORS come segue…

Non sappiamo se questo possa esserti utile o se la tua configurazione possa essere diversa.

Abbiamo anche abilitato il flag CORS, ma non siamo sicuri che sia correlato.

Questo è un problema CSP, non CORS.

Si tratta di una configurazione in sottocartella?

EDIT: tornando su questo argomento e rivedendolo, ho capito cosa sta succedendo.

Posso confermare che questo è stato iniettato da CF.

Sconsigliamo vivamente di disabilitare CSP su un sito in produzione. Invece, se possibile, disattivate Cloudflare (abbiamo avuto MOLTI, MOLTI casi di supporto riguardanti CF che influivano negativamente sul JS di Discourse) o almeno disabilitate tutte le ottimizzazioni di Cloudflare.

Ciò apre enormi falle di sicurezza sul tuo sito. CONSIGLIAMO CALDAMENTE di NON farlo. È un consiglio molto pericoloso.

Ciao @supermathie,

Non utilizziamo Cloudflare e stiamo riscontrando questo problema con 2 utenti. La soluzione temporanea che stiamo proponendo è di usare la navigazione in incognito o un altro browser, ma potrebbero esserci altri utenti che non ci stanno segnalando questo problema.

La nostra community è composta principalmente da persone non esperte di tecnologia, quindi non credo che abbiano configurazioni browser strane.

Puoi fornire maggiori informazioni su cosa sta innescando questo problema? Forse posso partire da lì per trovare una soluzione.

Grazie!

Vorremmo saperlo anche noi.

C’è un campo di input nascosto nella schermata “Creazione account” che viene controllato per l’integrità al momento della creazione dell’account.

Se questo campo viene manomesso, la creazione dell’account fallisce.

Puoi chiedere ai tuoi utenti di disabilitare i loro plugin uno alla volta finché non individuano il colpevole?

Abbiamo anche aperto un ticket con il progetto Chrome per indagare questo comportamento.

Ti ricordo questa schermata da un computer di un utente non tecnico:

Imgur

Non puoi dare nulla per scontato :slight_smile:

Sì, voglio dire che non è più il 2000, la sicurezza dei browser e la prevenzione dei malware sono migliori ora (credo). Un altro utente ha segnalato questo oggi, proverò a ottenere più informazioni da loro e spero di trovare qualcosa.

Grazie!

Fantastico. Vogliamo davvero definire bene la cosa, quindi faccelo sapere.

Anche un mio amico sta riscontrando questo problema: sto cercando di assumerlo come moderatore. Quando mi iscrivo in una finestra di navigazione in incognito, funziona perfettamente, ma lui non riesce nemmeno in una finestra di incognito. Sono quindi certo che il problema non sia legato alla mia installazione (uso plugin con il mio Discourse, ma solo quelli ufficiali), bensì al suo browser.

Sto lavorando con lui per individuare la causa, ma se non si tratta di un problema legato ai plugin, mi chiedo se ci sia qualcosa legato alle nostre versioni di Chrome: forse sta succedendo qualcosa a livello del browser di cui non sono a conoscenza, ma al momento non posso dirlo con certezza. Sto cercando di ottenere il numero della sua versione per fare un confronto, ma è in California e, se è ragionevole, al momento starà dormendo :stuck_out_tongue:

Ok, non è una soluzione sensata, ma è sveglio e ha fornito informazioni. Ha aggiornato da 75.0.3770.142 a 76.0.3808.87 (64 bit), il che da solo non ha risolto il problema nella finestra principale, ma dopo aver cancellato cache e cookie è riuscito a registrarsi in una finestra di navigazione in incognito. Sta utilizzando una configurazione Chrome completamente standard, a parte Adblocker.

EDIT: Non posso dirti se cancellare cache o cookie avrebbe funzionato su 75.0.3770.142 senza poterlo riprodurre (non riesco a farlo), ma trovo interessante che abbia almeno sembrato aiutare il mio amico.

Ciao, ho appena configurato una nuova istanza oggi su community.boid.com e ho incontrato questo messaggio di errore dopo aver tentato di registrare un secondo account (sia nella finestra normale di Chrome che in quella di navigazione in incognito). Sono riuscito a risolvere il problema cancellando manualmente le password salvate dal mio account Google e non utilizzando le opzioni di compilazione automatica nel modulo di registrazione. Ho notato che Chrome suggeriva molte opzioni di autenticazione diverse per il riempimento automatico da siti web non correlati. Non ho mai visto questo comportamento su altri siti, quindi volevo solo condividere la mia esperienza.

Per quanto ne so, questo sembra essere effettivamente legato alla funzione di riempimento automatico di Google Chrome.

Ho un solo modo per riprodurlo, ma è piuttosto oscuro. Serviranno due finestre del browser.

  • Carica il tuo sito in modalità incognito e apri la finestra di dialogo “Crea nuovo utente”.

  • In una seconda finestra del browser, accedi come amministratore. Vai alle impostazioni del sito. Abilita “solo su invito”, il che disabilita la registrazione pubblica.

  • Nel browser in incognito, prova a completare la registrazione come nuovo utente tramite quella finestra di dialogo “Crea nuovo utente” che hai aperto in precedenza.

Non riuscirai a farlo, perché la creazione di nuovi utenti non è più consentita, quindi vedrai… il nostro vecchio amico…

Almeno abbiamo questa procedura di riproduzione, anche se è… folle. :crazy_face:

Non sono mai, mai riuscito a riprodurlo in nessun altro modo, e nessuno in questa discussione è mai riuscito a fornire una serie di passaggi per la riproduzione su un’istanza predefinita di Chrome senza plugin. Se ci riesci, ti prego di procedere e fornire quei passaggi di riproduzione..

Ho riprodotto questo errore su try.discourse.org:


Guardate pure il video dell’intero processo: https://drive.google.com/file/d/19s20cgdz78XYpgHePkWRBFXseY-Znt_P/view?usp=sharing
Questo è successo OGNI volta che ho usato la password generata suggerita.
Quindi… come possiamo risolvere questo problema per i nostri clienti?

OK, molto bene, abbiamo una riproducibilità con cui possiamo lavorare, grazie per questo.

Tuttavia, tieni presente che è ancora necessaria un’azione manuale da parte dell’utente: clicca con il tasto destro nel campo password durante la creazione di un nuovo account o la registrazione e premi “suggerisci”. Devo ricaricare la pagina premendo F5 prima di avviare la finestra di dialogo per l’iscrizione per far sì che appaia in modo affidabile, ma poi funziona.

Ora che abbiamo una sorta di riproducibilità @sam, possiamo assegnare il lavoro?

Abbiamo due meccanismi in atto per impedire ai bot di registrare account in modo indiscriminato.

  1. Fingiamo di avere un campo “conferma password” che in realtà è un “trucco”: ci aspettiamo che abbia un valore molto specifico. Si tratta di un campo INPUT non visualizzato sullo schermo, contenuto in un div nascosto.

  2. Disponiamo di una stringa di sfida che ci aspettiamo venga elaborata da JavaScript e restituita.

Se non si verifica né (1) né (2), trattiamo la richiesta come sospetta e non registriamo l’account.

Ciò che sta facendo il gestore delle password di Chrome è “compilare” la password nel campo new-account-confirm:

{{input type="password" value=accountPasswordConfirm id="new-account-confirmation" autocomplete="new-password"}}

Questo INPUT è nascosto e non viene visualizzato sullo schermo.

Abbiamo due alternative qui.

  1. Rimuovere questa protezione e accettare come dato di fatto che i gestori delle password creano problemi in questo caso. Non si prendono la briga di verificare che un campo “conferma password” sia effettivamente visibile prima di compilarlo.

  2. Chiedere al team di Chrome di smetterla di farlo: compilare informazioni in INPUT non visibili non è corretto. (L’ho già segnalato)

Non so… immagino possiamo optare per la (1), è una modifica semplice. Potrei rimuovere la protezione e far sì che il client JavaScript calcoli un hash in stile Bitcoin per dimostrare che è attivo e sta svolgendo lavoro. Ad esempio, fornisco al client una stringa e gli chiedo di aggiungere numeri fino a quando l’MD5 non termina con almeno 00. Questo almeno punirà i bot e sarà estremamente economico da verificare sul server.

Costringere i bot a calcolare MD5 in modo indiscriminato, immagino, sia un modo per farli pagare letteralmente le bollette e finanziare il mio pensionamento alle Bahamas.

È possibile disabilitare completamente un meccanismo del genere e riattivare il vecchio Google CAPTCHA? Penso che questo manterrebbe la sicurezza e, allo stesso tempo, permetterebbe a più utenti di registrarsi.

Oppure possiamo attendere il vostro hotfix. Quale opzione vi sembra migliore? Lanciamo un grande flusso dei nostri partner sul nostro forum all’inizio della prossima settimana.

Ho appena creato un nuovo account, SENZA alcun software anti-spam / spyware sul browser, e ho riscontrato lo stesso problema. L’ho risolto usando il metodo ‘Accedi con Google’ e da allora ha funzionato.