L’insostenibile leggerezza

clicNon mi stancherò mai di ripeterlo: software installato e non manutenuto, prima diventa malore, poi malattia. E – come spesso accade in situazioni patologiche non curate per tempo – quella malattia può assumere le connotazioni di una metastasi che può portare finanche alla morte.
È successo di recente che il sito di un nostro cliente (del quale ovviamente omettiamo qualsivoglia riferimento, e non solo per precise regole contrattuali, ma anche per un più generico senso di rispetto e riservatezza) sia stato “bucato” in relazione all’utilizzo di un plugin di WordPress, installato molti anni addietro e tuttavia mai aggiornato. Stiamo parlando – questo sì che è passibile di disclosure – del noto plugin “Newsletter“, del quale noi stessi ci avvaliamo per diramare, ad esempio, il post che state leggendo proprio adesso.

Ora se prendete visione del changelog allora vi accorgete di questo:

3.8.6 | Improved checks on tracking links which could be used for spamming links (open redirect)

Non è un caso che quell’aggiornamento sia avvenuto proprio ieri l’altro, ovvero il giorno prima che si verificasse quer pasticciaccio brutto che ha determinato l’inserimento dell’IP principale del server (quello su cui risultano attestati gran parte dei servizi da esso erogati) nella lista di uno dei principali servizi DNSBL.
Perché, di fatto, ciò è quanto accaduto poche ore fa: siamo finiti nel libro nero di Spamhaus ZEN, più precisamente nella lista XBL, in conseguenza del fatto che quell’IP fosse già stato accluso, circa dodici ore prima, in un’altra lista ancora: CBL (Composite Blocking List).

In buona sostanza, se prima di adesso aveste cliccato su questi link:

… avreste trovato situazione ben altra da quella che ora viene riportata. E nello specifico avreste visto che l’inclusione nel “libro nero” era stata diretta conseguenza di un link tipo questo, il quale determinava il reindirizzamento verso uno o più siti per adulti, a rotazione. Tipo questi:

Selezione_692

E non si trattava, come inizialmente io stesso sono stato portato a credere, di SPAM originato dal nostro server, ovvero della spedizione di mail al cui interno fosse referenziato proprio il link incriminato. Me ne sono sincerato verificando come quel servizio di newsletter fosse stato usato assai poche volte dal nostro cliente, per inviare una manciata di messaggi appena, quasi tutti di test:

Selezione_689

La questione informaticamente interessante è che un’estensione di quel plugin (preposta alla generazione di reportistica sulla fruizione dei servizi) era risultata attaccabile tramite tecniche XSS che evidentemente neanche mod_security è riuscito ad intercettare, e qualcuno era riuscito a codificare direttamente nel DB MySQL (tabella wp_newsletter_stats) un URI infetto, confezionato per redirigere il traffico verso i siti target. E redirigerlo, tuttavia, a partire da un sito lecito, il quale, alla Scajola (id est: a sua insaputa), faceva da vettore e trampolino di lancio, esattamente come accade nel caso del phishing. E proprio per questo è stato punito, con castigo inflitto al server tutto.

La storia è vecchia, e sostanzialmente sempre la stessa: chi scaglia la pietra, prima o ennesima che sia, nasconde la mano; e chi quella mano va cercando la identifica erroneamente nel corpo di un soggetto innocente. Ignorante certamente, ma di fatto innocente, almeno per il Diritto penale (senza dolo non c’è reato). L’ignoranza in questo caso è stata quella dell’aver – per l’appunto – ignorato la necessità di adottare politiche di manutenzione evolutiva in relazione a software installato su server. La furbizia del terzo ignoto è stata quella di aver fatto pagare ad altri le sue malefatte. E per altri intendo migliaia di persone; non solo estranee ai fatti ma neanche – in questo caso non certo davvero – negligenti.

Il conto è stato salato, poiché il disservizio non ha temporaneamente coinvolto una sola utenza di virtual host, ma l’MTA del server intero: tutta la posta in uscita è stata per due ore circa preliminarmente bloccata da quei server dei destinatari che a loro volta si avvalevano di servizi DNSBL per evitare la distribuzione di SPAM. Lo facciamo anche noi: se Spamhaus ZEN ci segnala che un messaggio di posta elettronica proviene da un server con “bassa reputazione” (id est: che risulta oggetto di abuso da parte di chi invia messaggi cosiddetti unsolicited) allora la consegna di quel messaggio viene interdetta ancor prima che esso entri fisicamente in macchina, e prima ancora che i successivi controlli anti-spam proseguano la catena virtuosa del “mail washing”.

Questa volta, nostro malgrado, siamo stati noi ad esser passati dall’altra parte della barricata, e poiché il ruolo del “bad boy” non mi è mai particolarmente piaciuto, soprattutto in relazione a questioni di SPAM (e/o situazioni da reprimenda cui incorre chi va contro la netiquette), si rendeva necessario agire in fretta, per attuare un delisting quanto più sollecito, anche perché i nostri clienti iniziavano a lamentare situazioni tipo questa:

omissis@omissis.ext
host mail.jotun.com [81.167.55.67]
SMTP error from remote mail server after initial connection:
554-mail.jotun.no
554 Your access to this mail system has been rejected due to the sending MTA’s poor reputation.
If you believe that this failure is in error, please contact the intended recipient via alternate means.

Dopo aver identificato la causa del problema, disattivato il plugin nel sito del cliente, rimossi i record della tabella corrotta, quindi riattivato ed aggiornato il plugin, abbiamo sottoposto richiesta di delisting a CBL la quale sembra aver dato fin da subito gli esiti sperati:

Selezione_694

Questione di un’ora d’ulteriore attesa e dalla lista XBL di Spamhaus cui eravamo entrati, da quella stessa lista in punta di piedi siamo usciti.

pulp-fictionAvremmo potuto finirla qui, accontentandoci del fatto che i nostri servizi di posta avessero riacquisito l’ottima “reputazione” di sempre. Ma sarebbe stato come in Pulp Fiction se Bruce Willis avesse lasciato Ving Rhames al suo destino. E quindi, come Butch Coolidge ha fatto, a nostra volta siamo tornati sui nostri passi, per salvare non solo il nostro culo ma anche quello di Marsellus Wallace. Sono partite due mail di segnalazione agli “abuse” delle reti presso cui erano attestati i siti compromessi (repetita iuvant: scagli la pietra, nascondi la mano, e con l’altra indichi come colpevole un innocente/ignorante), ed anche agli admin-c dei rispettivi domini. Entro poche ore abbiamo ricevuto risposte tipo questa (a proposito di http://cavehillgrotto.com/wp-content/uploads/jwel/):

Hello,
Thank you for contacting our Terms of Service Department.
We have contacted the owner and have removed the offending website. If you ever come across sites that are violating our Policies, please feel free to contact us again.
Please feel free to contact us again if we can be of further assistance.
Thank you,
Ravi

Terms of Service Compliance Department
560 East Timpanogos Pkwy.
Building G
Orem, UT, 84097
F: 801.765.1992

E poi abbiamo contattato Stefano Lissa, lo sviluppatore del plugin presso http://www.thenewsletterplugin.com/ il quale a sua volta risponde, specificando – libera perifrasi – che la versione 3.8.6 del plugin attua controlli più stringenti sulla firma dei link, e dovrebbe pertanto risolvere il problema (evidentemente già noto).

Morale della favola, e riassunto della storia (bottom line, scriverebbe chi parla la lingua inglese): basta un semplice clic per installare software, ma se poi non lo si aggiorna, pensando che quello della sicurezza non sia un problema di cui tener più di tanto conto, allora con quel clic (operazione ebete, oltre che banale: tutti sanno farla) possiamo causare tanti di quei danni – anche a persone terze, e che non sempre trovano pronta ed efficace risoluzione – che se solo ci pensassimo un istante prima di esercitare la pressione sul tasto sinistro del mouse allora desisteremmo.
Del resto un lavoro come il nostro deve esser delegato a dei professionisti. Installare un sito WordPress o Joomla! – magari via Installatron o Softaculous – è solo questione di un clic, questione quindi assai leggera (poca forza coinvolta, o comunque necessaria). Manutenere quel sito, facendolo evolvere man mano che nuove falle di sicurezza sono scoperte, è questione di molti clic, ciascuno dei quali richiede non poca conoscenza, ed altrettanta consapevolezza.
Insostenibile (sia la conoscenza, sia la consapevolezza) per chi è capace di un clic soltanto – e chissà perché mi raffiguro l’immagine di chi pesta sempre il solito tasto sulle slot machine nei baretti – sostenibilissima per chi, come noi, dei suoi clic ha fatto mestiere, e della reputazione del suo professionismo motivo d’orgoglio.

Tags: ,

No comments yet.

Lascia un commento