Combattere i pingback/trackback di spam su wordpress, momentaneamente

Discutendo sul forum italianbloggers io e Danilo abbiamo riscontrato alcuni problemi con il blog dovuti ad un alto numero di pingback/trackback spam questa mattina. In pratica per le pagine senza cache costruita il blog era inutilizzabile, ho ricevuto una cosa come 80-90 trackback spam in circa un minuto e tutto questa senza l’intervento di Akismet.

Il problema principale, dovuto ad una simile operazione, riguarda un grossissimo numero di richieste/scritture nel database e pu portare al timeout delle pagine in quanto quest’ultime non riescono a completare le loro richieste e tutto il blog in generale ne risente pesantemente visto che effettua interrogazioni sullo stesso database. Tralasciando il fatto che Aruba non certo la miglior soluzione per blog che ricevono un certo traffico possiamo provare a limitare i danni agendo sul file .htaccess negando l’accesso a qualche indirizzo ip.

Ho verificato nella cartella di spam che gli indirizzi ip sono pi o meno sempre gli stessi, almeno nel breve periodo, quindi in attesa di una soluzione migliore attualmente per chi soffrisse di tali problemi pu utilizzare questa soluzione, da aggiungere alla fine del proprio file .htaccess :

<Limit GET PUT POST>
order allow,deny
# Banna una lista di ip
deny from 74.208.44.48
deny from 74.53.229.210
deny from 69.50.208.74
deny from 200.88.114.166
deny from 211.142.116.205
allow from all
</Limit>

Dove per ogni nuovo ip da bloccare dovr essere aggiunta una riga seguendo lo schema del codice.

Un’altra soluzione descritta in questa pagina quella di bloccare i bot che hanno come stringa libwww-perl che sembrano essere quelli che pi sovraccaricano il server e molte persone se li ritrovano nei referenti. Non so se anche questi bot inviano trackback spam o cercano semplicemente di comparire con i loro link in una lista pubblica di referenti (io no ho ne i referenti, figurati la lista pubblica).

Per i commenti spam invece

È possibile rinominare il file wp-comment-post.php come descritto in questa pagina e c’ chi ancora aveva detto di piazzare un secondo form di commenti con propriet display:none (per primo naturalmente) in quanto i bot attaccano solitamente il primo form utile, perdonatemi per la mancanza dell’ultima fonte non riesco a ritrovarla, l’esempio era accattivante.

Comunque le ultime due soluzioni riguardano la protezione del file wp-comments.php mentre i pingback vengono inviati tramite il file xmlrpc.php, quindi non avremo comunque la protezione dai pingback/trackback che sono molto pi numerosi, almeno nel mio caso.

Cristiano suggerisce di redirigere i bot verso una pagina di errore 404, o di passare a BlogEngine (neppure se mi paghi 😛 ), scherzi a parte non so ancora come si faccia una cosa del genere devo documentarmi prima, magari ci aiuta Cristiano o qualcuno di voi volenterosamente! 😀

Un’ultima cosa, ma WordPress non ha un sistema per il flood dei messaggi?? Ovvero mai possibile che non ci sia un limite di messaggi per tot tempo per ogni ip?

Tag: , ,

11 Commenti a “Combattere i pingback/trackback di spam su wordpress, momentaneamente”

  1. […] momento che sto scrivendo questo post Raffaele ha gi pubblicato il suo articolo, spiegando in modo dettagliato l’accaduto di questa mattina. […]

  2. Cristiano ha detto:

    Sono disponibile a cercare di spiegare la procedura con degli esempi in C# o in VB (VBScript): la conversione in PHP non dovrebbe essere molto dolorosa.
    Appena riesco, cerco di scrivere un articolo teorico in merito. 😉

    P.S.: temo che ci sia un errore sul link che hai associato al mio nome …

  3. Traffyk ha detto:

    Ok grazie mille Cristiano, aspetteremo un tuo articolo in merito. Oggi sono passati solamente 4 trackback spam contro i 150-160 circa che ricevo mediamente in una giornata, almeno cos si pu respirare, avrei intenzione di creare una lista dinamica che modifica al volo il file htaccess per bloccare gli ip spammer pi frequenti, in tal modo si eliminano gli ip che non attaccano pi e si rafforza il filtro suoi nuovi ip pressoch istantaneamente non appena aumenta lo spam.

    PS: correggo subito il link, sorry quando mi sveglio alle 5 di mattina e scrivo un post alle 11 e mezza di sera faccio guai! 😛

  4. Cristiano ha detto:

    Il comportamento per anomalo: Akismet sulla carta dovrebbe respingere anche i trackback ed i pingback spam. Hai provato a controllare sulle impostazioni del relativo plug-in per WordPress la presenza di qualche parametro errato od omesso ?

  5. Traffyk ha detto:

    Si Cristiano il problema che cambiano l’ordine delle lettere nelle parole spam. Ad esempio viagra te lo fanno diventare viarga oppure ci aggiungono delle lettere in pi all’interno o ancora sostituiscono le m con le n e viceversa, insomma diventano sempre pi furbi e bisogna di volta in volta segnalare i nuovi casi ad Akismet che impiega comunque un po di tempo nel rendere ufficiali i nuovi filtri.

    Comunque il problema non tanto lo spam, ma il carico esoso che questo effettua sul database e devono essere bloccati alla radice.

  6. Fabio ha detto:

    Qualcosa di simile l’avevo postato anche io qui:
    http://www.girandoilmondo.it/blog-news/73/wordpress-prevenire-attacchi-di-tipo-php-injection

    Guardando il codice proposto nel sito da te indicato ho visto che aggiunge dopo libwwwetc…anche il .* che dovrebbe impedire l’accesso a tutte le varianti. A questo non avevo pensato.

    Lo prover 😉 Bella raffy

  7. Traffyk ha detto:

    We Fabio ho visto e ho notato che c’era addirittura un precedente mio trackback! 🙁 Scusami ma tengo la capa di m… mi ero proprio dimenticato del tuo post comunque pubblicate pi o meno la stessa soluzione solo che con l’asterisco si bloccano tutti i bot con quella stringa con tutte le varianti 🙂

    IO non ho inserito il deny a questi bot, attualmente con il solo blocco degli ip pi fastidiosi, anche oggi solo 3 trackback di spam! 😀 Finalmente si respira, il mio blog sembra tornato come quello di un tempo ed ora con wp supercache ancora pi fast!!!! 😛

  8. […] Combattere i pingback/trackback di spam su WordPress momentaneamente (Via traffyk.com) […]

  9. […] è venuta in mente in un primo momento era quella di chiudere i commenti relativi al quel post. Poi mi sono ricordato di un post scritto da Raffaele alcuni mesi fa, riguardante un problema molto più […]

  10. Davide ha detto:

    Grazie mille per l’articolo, ero in crisi totale perchè ricevevo un “grossissimo numero di richieste/scritture nel database” da parte di un IP di Roma che mi stava, secondo me, mandando in timeout con richieste di circa 4 secondi tra una e l’altra. Non riuscivo a venirne a capo perchè in rete si parla solo di spam tramite commento e no tramite pingback/trackback. Grazie ancora, stasera ho imparato una cosa nuova.

Lascia un Commento