Category: Tech

Rimuovere il malware spam del Verified casino su wordpress

Tutto ha inizio quando per caso controllando l’indicizzazione su google (site:www.XYZ.com) trovo una pagina estranea al mio sito che punta ad una pagina di casino online: www.XYZ.com/?p=casino-online www.XYZ.com/?p=play-blackjack-online E in…

page-hack

Tutto ha inizio quando per caso controllando l’indicizzazione su google (site:www.XYZ.com) trovo una pagina estranea al mio sito che punta ad una pagina di casino online:

www.XYZ.com/?p=casino-online
www.XYZ.com/?p=play-blackjack-online

E in effetti entrando nella pagina appare una pagina di Casino Online sul mio dominio.

Allora entro nel wp-admin per cancellarla ma mi accorgo che non vi è alcuna traccia della pagina.
Così faccio un dump del database e cerco “play-blackjack-online” e lo trovo in questa riga del wp_options, BINGO!

INSERT INTO `wp_options` (`option_id`, `option_name`, `option_value`, `autoload`) VALUES
(8389, ‘client_data_run’, ‘{“stat”:”success”,”pages”:[{“slug”:”best-casino-bonus”,”article”:”<!DOCTYPE html>n<html><head><title>How to find the Best Casino Bonus</title>n<meta name=”robots” content=”noarchive”/>n<meta content=”text/html;charset=UTF-8″ http-equiv=”Content-Type”>n<meta name=”description” content=”Play at the best Online Casino accepting US players! Find the best no deposit bonuses, and $8,000 for the Slots at Grand Parker. ” />n</head>n<body topmargin=”0″ leftmargin=”0″ rightmargin=”0″ bottommargin=”0″ marginheight=”0″ marginwidth=”0″ style=”background-color:white;”>n<table border=”0″ width=”100%” cellspacing=”0″ cellpadding=”0″ bgcolor=”#999966″>n<tbody><tr><td width=”100%”><font face=”Arial Black” size=”6″ ……….ECC ECC ECC…………..t></td>n</tr></tbody></table></body></html>”,”title”:”Casino offers of the season $8000 bonus no deposit bonus codes”,”keywords”:[“no deposit bonus codes”,”no deposit bonus codes”,”eu casino bonus code”]}],”redirects”:[]}’, ‘yes’);

Mi accorgo che se cancello quella riga dal DB
DELETE FROM `wp_options` WHERE `option_name` = 'client_data_run';

le pagine fake scompaiono … ma ricompaiono magicamente il giorno dopo.

Quindi capisco che quella riga sul DB viene generato da un PHP.

Cerco ovunque nel codice cercando un eventuale file php che contenga il codice malevolo ma nulla.
Disattivo e aggiorno tutti i plugin ma nulla.

Andando dentro /wp-admin/options.php (pagina dove sono visibili alcune opzioni avanzate) mi accorgo che esiste un altra riga nella tabella wp_options con key = “1” e che contiene un’altro codice malevolo che cambia ogni volta che faccio refresh sulla pagina:

{“data”:”hSfIQTpHkifrtZkA8LVTCQx4cI8r9fIqpThC6U8r7s284UzsChRkI29+VTMCVBzfzPXAdF9rR3BL/MFjQ74NJiCy8nyAtm4JB/MZ5Rkj+Y6P6Cw9rjJyynFi5ciRPG4kCY
OATHqTWh7XEZWxEfvEcVCTqG7dvYj3nJI9GJy7ZmaD6j/4837e1sBLa5O7RUtC0x2CyEzpwoEw6EYQV9FDqXYgN1ndl+suAAAneh8+oS7Bw95zN9788yA71Fuad7ov
aq0w6G30BOh/tPD94JLeGfAS1J++Iuaj2Lbf+w7qk3AxqfTwxgSbPihP6iTMSaWTNEHAXH0tRKA4cw+6gNQj+qsH+ui+qUYVeEE/3IPNa16Y7XQfUqqZIa1aHM
l+sivKx6tO45S/++VQ6Ss7263uJju7oWvZUtq2O8af5d/BVB7……………oUb46vWbbk7i3pZHLWip4Bu2rNq3eDAcQ==”}

options

Cancellando la riga dalla wp_options un attimo dopo ricompare in modo sempre diverso, come se fosse generato randomicamente.

Quindi dopo aver cancellato tutti i plugin e notando che la riga continuava a cambiare ho pensato che forse il codice malevolo era conservato in uno dei temi.
Non so in quale modo possa essere successo ma all’interno della cartella del tema corrente ho trovato 5 file PNG:

social.png
social1.png
social2.png
social3.png
social4.png

(apparentemente immagini) ma con all’interno un codice che scriveva la descrizione di spam su google e la riga che creava le pagine del casino.
Il codice all’interno dei file era criptato in Base64 e ROT13, praticamente impossibile da trovare facendo una semplice grep in unix.

Per far sì che questo codice venisse eseguito è stato inserito il richiamo all’interno del function.php del tema in uso, in modo tale da richiamare le PNG:

if (!defined(‘WP_OPTION_KEY’)) {
include_once ‘social.png’;
}
if (!defined(‘WP_OPTION_KEY’)) {
include_once ‘social0.png’;
}
if (!defined(‘WP_OPTION_KEY’)) {
include_once ‘social1.png’;
}
if (!defined(‘WP_OPTION_KEY’)) {
include_once ‘social2.png’;
}
if (!defined(‘WP_OPTION_KEY’)) {
include_once ‘social3.png’;
}

Dopo aver rimosso le righe dal function.php e le 5 PNG ho cancellato la riga dal wp_options:

DELETE FROM `wp_options` WHERE `option_name` = ‘1’;

Dopo aver ripulito la vostra installazione di WordPress ricordatevi di aggiornare tutti i Plugin, cancellare quelli inutilizzati e cancellare anche i temi non utilizzati.
Per ripristinare le descrizioni del vostro sito iscrivetevi e collegate il sito a Google Webmaster e fate richiesta di refresh della index.

9 Comments on Rimuovere il malware spam del Verified casino su wordpress

Migrare DB da Access a mySql (mdb to sql)

Sembrava quasi impossibile invece ci sono riuscito, e non è stato neanche difficile, stiamo parlando della migrazione dei dati da un database Microsoft Access (.mdb) a mySql (.sql) (migrazione necessaria…

Sembrava quasi impossibile invece ci sono riuscito, e non è stato neanche difficile, stiamo parlando della migrazione dei dati da un database Microsoft Access (.mdb) a mySql (.sql) (migrazione necessaria se si vuole convertire un sito asp o asp.net in PHP).

Soluzione per Linux

Il software che ho provato gira su ubuntu e si chiama MDB-Tools.

Potete installarlo in pochi instanti sulla vostra distro ubuntu tramite il comando

sudo apt-get install mdbtools

Una volta installato potete, a linea di comando, estrarre sia lo schema del DB che le varie tabelle.

Visualizziamo la lista delle tabelle del DB:

mdb-tables NOMEDB.mdb

output:

table1 table2

Possiamo anche visualizzare la struttura di tutte le tabelle:

mdb-schema NOMEDB.mdb

output:

————————————————————-
— MDB Tools – A library for reading MS Access database files
— Copyright (C) 2000-2004 Brian Bruns
— Files in libmdb are licensed under LGPL and the utilities under
— the GPL, see COPYING.LIB and COPYING files respectively.
— Check out http://mdbtools.sourceforge.net
————————————————————-

DROP TABLE table1;
CREATE TABLE table1
(
ID Long Integer,
nick Text (100),
anno Integer,
data Integer,
);
— CREATE ANY INDEXES …

DROP TABLE table2;
CREATE TABLE table2
(
ID Long Integer,
settore Long Integer,
descrizione Text (120),
scheda Long Integer,
progetto Text (20),
);
— CREATE ANY INDEXES …

Una volta reperita la lista delle tabelle possiamo estrarre tutti i dati di ogni singola tabella

mdb-export -I NOMEDB.mdb table1 | sed -e ‘s/)$/)\;/’

output:

INSERT INTO table1 (ID, nick, anno, data) VALUES (1,”pippo”,1987,20110207);
INSERT INTO table1 (ID, nick, anno, data) VALUES (2,”pluto”,1977,20110207);
INSERT INTO table1 (ID, nick, anno, data) VALUES (3,”paperino”,1980,20110207);

Possiamo quindi redirigere l’output su un file con estensione .sql e andare quindi in phpMyAdmin a lanciare le INSERT cosi’ da popolare il nuovo DB in mysql.

Soluzione per Windows

Scaricare il programma da http://www.bullzip.com/download.php
e seguire questi passi dopo l’installazione per la migrazione da access a mysql:




2 Comments on Migrare DB da Access a mySql (mdb to sql)

Web 3.0 manca poco o ci siamo già?

Siamo partiti col web 1.0 dove ognuno faceva da se (in pochi) con i suoi non standard, ognuno credeva nel proprio lavoro, nel proprio codice e a volte, il piu’…

Siamo partiti col web 1.0 dove ognuno faceva da se (in pochi) con i suoi non standard, ognuno credeva nel proprio lavoro, nel proprio codice e a volte, il piu’ delle volte, sbagliava, creava qualcosa di orrendo e mal funzionante, a volte invece creava qualcosa di bello ma di statico, di morto.

Poi ci siamo evoluti col web 2.0, nascono le prime piattaforme standard, utilizzabili da tutti, alcune open source altre no. Ognuno poteva e puo’ tutt’ora usare un cms come wordpress, xoops, drupal, mambo, scaricarlo e installarlo dove gli pare, customizzarlo e avere un risultato accettabile.
Nel frattempo tante piattaforme nascevano: facebook, flickr, picasa, twitter … tutto per facilitare tutto, grazie al microblogging.
Tutto si e’ ridotto ad un misero XML, un feed rss che propaga in maniera piu’ rozza e semplice possibile le informazioni che realmente vogliamo trasmettere.

Ebbene, oggi, ho scoperto tumblr. Uno solo per domarli tutti. Crei il tuo blog, colleghi i feed rss di tutti i tuoi account di tutti i social network (YouTube, Twitter, WordPress, Digg, etc). Autocrei il tuo blog intrecciando gli xml tra di loro, in entrata e in uscita, cosa che io ho fatto tempo fa scrivendo righe e righe di codice per creare un parser che riuscisse a leggere un xml per stamparmi l’output. Bene, ora lo fai in un click. Come anche la creazione delle pagine, delle permission e della visibilità sui motori. Hai anche un account su twitter? lo colleghi a tumblr e ogni post che scrivi verra’ pubblicato anche li’ come anche su facebook. Non sei a casa e vuoi pubblicare un articolo dal tuo smartphone? mandi una email all’indirizzo email del tuo blog e viene automanticamente pubblicato. Non disponi di connessione ad internet? chiami il numero che tumblr ti fornire per il tuo blog per registrare un messaggio audio che verra’ instantaneamente pubblicato e propagato.

Non ha piu senso il web di una volta… non so come dirlo… questo è davvero l’inizio di una nuova era, l’era dove non hai piu’ bisogno di comprare un hosting per appoggiare il tuo sito.
Non hai piu’ bisogno di apache e di mysql. Non hai piu’ bisogno di nulla. Hai bisogno solo di un account… e neanche quello perche’ ormai non ti serve piu’ registrarti su centinaia di siti come prima, ti basta un account Google o Facebook.

E se proprio dobbiamo dirla tutta non hai piu’ bisogno neanche di idee creative perche’ e’ gia tutto pronto, non devi pensare, non devi scrivere, esiste il re-blog: ti piace un articolo di qualcuno? lo condividi sul tuo, lui sa che tu lo pubblichi, gli fa piacere perche’ gli fai pubblicita’ e diventi famoso anche tu perche’ nel tuo blog pubblichi qualcosa di interessante che hai cercato ed hai trovato, alla gente non importa nulla se l’ha scritto lui o tu, l’importante e’ che seguira’ il tuo blog perche’ ha sempre roba nuova e aggiornata. Pensate a friendfeed, inserisci i tuoi feed preferiti di altri siti e ti crei il tuo spazio con i contenuti (non tuoi) che interessano a te, ma che potrebbero interessare anche ad altri. Ma cosa genera friendfeed? Un altro fottuto RSS.

Dove ci portera’ il nuovo web? Queste piattaforme stanno mettendo l’intera popolazione del mondo sullo stesso piano. Tutti hanno il potere, il potere di comunicare, il potere di diventare famosi, di dire la verita’, e in politica mi sa che l’hanno capito, per quanto siano celebrolesi hanno capito anche questo. Hanno capito che grazie al web e sopratutto grazie al web 2.0 non possono piu’ fare scherzi, la gente mormora e sul web nessuno si trattiene, a qualcuno scappa e 10 milioni di persone ripubblicano quello che hai scritto se è giusto che resti pubblicato. Non si puo’ fermare.

E’ il web dove decidi tu cosa vedere e cosa no. Crei la tua pagina iGoogle personalizzata con quello che vuoi tu, con i contenuti che vuoi che ti vengano forniti. Crei la tua pagina di Facebook decidendo chi vuoi leggere e chi ignorare, cataloghi i tuoi bookmark con delicious e decidi tu quali rendere pubblichi o privati. Hai il potere di creare il web, a tuo piacimento. Anche le pubblicita’ cambiano, si adattano a quello che interessa a te, a quello che stai leggendo in quel momento, a quello che hai cercato.

Tutto inizia a piacermi ma allo stesso tempo mi spaventa, non poco.

No Comments on Web 3.0 manca poco o ci siamo già?

Migrare le news da Xoops a WordPress

Proprio l’altro giorno mi sono imbattuto nel fatidico trasferimento di CMS, da Xoops a WordPress. E’ un casino, ma grazie a questo post potrete farlo in… un’oretta… o due se…

Proprio l’altro giorno mi sono imbattuto nel fatidico trasferimento di CMS, da Xoops a WordPress. E’ un casino, ma grazie a questo post potrete farlo in… un’oretta… o due se va storto qualcosa 🙂

Partiamo da fatto che avete un sito in Xoops e che l’abbiate aggiornato all’ultima versione (2.4.4). Bene.
Do’ per certo che abbiate già installato WordPress (2.9.2) da zero.
In poche parole avete un sito in Xoops pieno e uno in WordPress vuoto. E fin qui ci siamo.

Iniziamo con l’estrarre dal DB di xoops la tabella delle news, “formattandola” con la stessa struttura della tabella che wordpress si aspetta.

1 Comment on Migrare le news da Xoops a WordPress

E’ nato un nuovo progetto: mMilano.com

Non siamo professionisti ma la passione per la fotografia ci accomuna ed è tramite essa che vogliamo raccontare la città in cui viviamo focalizzandoci su eventi ed itinerari turistici. Il…

Non siamo professionisti ma la passione per la fotografia ci accomuna ed è tramite essa che vogliamo raccontare la città in cui viviamo focalizzandoci su eventi ed itinerari turistici.

logo mmilano

Il progetto è aperto a chi vuole partecipare inserendo le proprie foto rispettando le categorie presenti nel sito (events, turist routes, skyline, urban). Le foto resteranno di proprietà dei rispettivi autori. Per contattarci potete utilizzare il modulo contatti.

Il sito non necessita di registrazioni, si può utilizzare col proprio account di Facebook. Nessun dato verra’ archiviato nei nostri database, verrete autenticati tramite i server di Facebook.

Abbiamo anche una pagina su Facebook dove verranno postate le anteprime e i prossimi eventi (fotografici e non).

Vai alla pagina su Facebook
Vai al sito ufficiale

mmilano

2 Comments on E’ nato un nuovo progetto: mMilano.com

Proviamo la nuova grafica di Google (Caffeine)

Google è ormai undici anni e mezzo che non ha mai cambiato drasticamente look ma sappiamo che sta lavorando sulla nuova grafica (nome in codice caffeine) che cambiera’ drasticamente sia…

Google è ormai undici anni e mezzo che non ha mai cambiato drasticamente look ma sappiamo che sta lavorando sulla nuova grafica (nome in codice caffeine) che cambiera’ drasticamente sia il logo, gli stili, rendendolo piu’ veloce ed efficiente, senza nessun impatto sui risultati di ricerca.

No Comments on Proviamo la nuova grafica di Google (Caffeine)

Type on the field below and hit Enter/Return to search