Bloccare l'ultima ondata di spam

Siamo stati colpiti da un’ondata massiccia di spam per giorni. Altri come https://ask.learncbse.in/ si sono arresi per il momento, a quanto pare :thinking:

Sto cercando qui solo una variante:

Il contenuto cambia spesso, così come gli indirizzi email e gli IP, quindi bloccarli riduce la quantità, ma non abbiamo ancora trovato una vera soluzione. Per motivi di privacy non vogliamo inviare tutto ad Akisment.

Se bloccassimo

AS55836: Reliance Jio Infocomm Limited
AS9498: Bharti Airtel Ltd.
AS45609: Bharti Airtel Ltd.
AS24560: Bharti Airtel Ltd.

saremmo a posto, ma questa potrebbe essere una buona (o piccola) parte della popolazione indiana.

4 Mi Piace

Hai provato ad aggiungere determinate parole in Admin -\u003e Personalizza -\u003e Parole monitorate -\u003e Richiedi approvazione?

Dallo screenshot, proverei ad aggiungere queste parole:

  • contanti
  • credito
  • soldi
  • prestito
  • numero verde
  • assistenza clienti
  • numero di assistenza
  • 0779*
  • numero verde
  • :point_left:

Può essere leggermente scomodo per gli utenti, ma ho configurato Discourse per inviare un webhook a una funzione cloud di Firebase (gratuita) che mi avvisa sul telefono in una chat di Slack, quindi spesso posso approvare i post in moderazione entro 60 secondi dal telefono, se sono sveglio.

3 Mi Piace

Grazie per l’aiuto, ma dai un’occhiata a https://ask.learncbse.in/ (non è la mia istanza ma i post sono più o meno gli stessi contro cui sto combattendo) e scorri gli ultimi giorni, stanno usando un sacco di combinazioni e variazioni di ogni parola chiave. Sto creando un sacco di regex per ogni parola chiave perché aggiungono ovunque un “.”, una “,”, una “|”, sostituiscono uno “0” con una “O”, una “e” con una “3”, aggiungono nel mezzo della parola un carattere (finora) casuale ecc. ecc. … è davvero difficile combattere contro questo tipo di spam.

Oppure, se non vuoi cliccare su un link casuale, ecco uno screenshot delle ultime ore, ma sono solo le ultime ore, variano molto nel tempo:

1 Mi Piace

Solo per verificare, ma utilizzi l’impostazione amministrativa min first post typing time? La trovo piuttosto utile per catturare molti dei nostri.

5 Mi Piace

Sì, grazie per il suggerimento, è impostato ma intendo dire che non è così difficile per il bot aspettare qualche minuto :slight_smile:

1 Mi Piace

Questo spam sembra di un tipo diverso rispetto alle risposte/contenuti basati sull’IA su cui si concentra l’altro argomento, quindi l’ho separato. :+1:

Abbiamo un nuovo strumento basato sull’IA per il rilevamento dello spam che si è dimostrato piuttosto efficace:

6 Mi Piace

Grazie per il suggerimento, ma configurare un LLM solo per combattere un altro LLM di spam per il nostro discorso è troppo costoso per il nostro caso d’uso.

Come spammer puoi facilmente aumentare il costo per l’organizzazione creando più utenti/post, quindi a seconda di ciò che vuoi archiviare, questa potrebbe anche essere una motivazione per creare ancora più post :slight_smile:

1 Mi Piace

Ciao,

Hai provato a usare Akismet? Sembra che la loro soluzione potrebbe funzionare per te.

(gratuito per uso personale, non per uso commerciale - non so come ti classificheresti)

2 Mi Piace

Forse richiedere l’approvazione del primo post di ogni utente potrebbe aiutare un po’ qui? In questo modo almeno non arriverebbero pubblicamente sul forum e, finché non hai molti utenti reali che si registrano quotidianamente, penso che aiuterebbe almeno in parte.

5 Mi Piace

Grazie per tutti i suggerimenti.

Ci abbiamo pensato, ma abbiamo un prodotto per la privacy e la sicurezza, il che significa che dobbiamo proteggere i nostri utenti il più possibile. Il contenuto è pubblico di sicuro, ma non l’indirizzo IP/Agent/Referrer/Email se ho capito bene Discourse Akismet, viene trasmesso ad Akismet (sicuramente leggerebbero anche l’informativa sulla privacy, ma la panoramica è già sufficiente per la decisione).

Sarebbe un’idea. Con circa 2 iscrizioni al giorno non dovrebbe essere troppo problematico, ma non è la migliore esperienza dover aspettare un’approvazione, ma se lo spieghiamo correttamente potrebbe essere la migliore opzione che abbiamo per ora.

1 Mi Piace

Sì, purtroppo hai ragione: trasmettono alcuni dati aggiuntivi ad Akismet che potrebbero non essere in linea con la tua politica sulla privacy. In tal caso, il suggerimento di @Firepup650 è il migliore disponibile.

1 Mi Piace

Per tua informazione, il mio Geo Blocking plugin può negare l’accesso a Discourse in base alla rete AS di origine. Infatti, molti di questi tipi di spam sembrano provenire da quelle reti, in particolare AS45609.

Se non vuoi bloccare metà dell’India, potrebbe valere la pena indagare su quanto sarebbe difficile riutilizzare alcune delle funzionalità di quel plugin per aggiungere regole basate sulla rete o sull’IP alla logica di approvazione (“richiedi l’approvazione per nuovi post dalle reti”).

6 Mi Piace

Ho scorso molte pagine su quel sito di esempio e penso che potrebbe essere possibile bloccarne quasi tutti con la funzione delle parole monitorate, se le espressioni regolari di Discourse possono funzionare sugli intervalli Unicode.

Gli utenti normali probabilmente non usano cose come queste:

  • 2 o più barre in fila
  • punteggiatura insolita come ^ (a meno che non sia un sito di matematica)
  • intervalli Unicode non comuni:
    • ✓ (Simboli vari)
    • ∆ (Greco e Copto)
    • ❽, ➁, ❸, 3, ❷ (Dingbats)
    • 𝘾, 𝙪, 𝙨, 𝙩 (Simboli alfanumerici matematici)

ChatGPT probabilmente potrebbe scrivere un’espressione regolare per questi, se Discourse la supporta.

Un’altra idea è provare Cloudflare con la funzione Bot Fight Mode (gratuita) e sfidare tutti i bot.

3 Mi Piace

Ouh, sarebbe la soluzione perfetta, darò un’occhiata al codice, grazie!

Il problema qui è che questo bot in qualche modo sa come funziona Discourse: nello scenario seguente sto monitorando ❽ nella sezione “Richiedi per Approvazione”. Il problema ora è che questi bot spesso creano prima un testo casuale e poi lo modificano nel contenuto effettivo. La modifica di un post non viene controllata rispetto all’elenco “Richiedi per Approvazione”, vedi ad esempio

VS

(qui ho aggiunto ❽ direttamente durante la creazione del post)

il che significa che la nostra unica opzione è aggiungerlo alla sezione blocco, ma bloccare troppe parole e caratteri può facilmente portare a problemi in cui gli utenti normali ricevono un messaggio confuso durante la creazione di post validi. Penso che sia da qui che provengono la maggior parte dei nostri problemi. Secondo me, questo è un bug, e anche quando si modifica un post, l’elenco “Richiedi Approvazione” dovrebbe essere controllato rispetto al contenuto modificato quando la modifica viene pubblicata.

2 Mi Piace

Suppongo che le parole monitorate non aiuteranno allora. Non ho ancora avuto un attacco di spam da quel fronte, ma ne sono preoccupato perché gli utenti hanno iniziato a capirlo.

3 Mi Piace

Sembra che uno dei miei forum sia stato colpito dallo stesso tipo di attacco spam. Non so se abbiano usato il trucco dell’editing, dato che non avevo ancora le parole spam nella lista delle parole monitorate.

2 Mi Piace

Ciao a tutti :waving_hand:

Ho una prova di concetto, se volete dare un’occhiata

1 Mi Piace

Bel lavoro @juanjosegzl, lo accetterei volentieri come PR! :rocket:

grazie @RGJ ho appena aperto una PR

1 Mi Piace

Ciao @juanjosegzl,

La tua ultima PR ha rotto il plugin: ora chiede a tutti di confermare il proprio post tramite moderazione (anche agli stessi moderatori) indipendentemente dalla loro posizione geografica. Ci sono soluzioni alternative o una ETA per la correzione?