fbpx Fui hackeado no servidor novo. Como recuperar de um hack com drupal e wordpress. | Dr Seo

You are here

Fui hackeado no servidor novo. Como recuperar de um hack com drupal e wordpress.

Bom, uso drupal e wordpress. Devo ter sido hackeado há anos, quando ainda usava o PHP-Nuke. Depois, com todas as medidas que tomo, não fui mais. Mas parece que ao mudar de servidor esqueci de alguma coisa, ou o proprio servidor deixou algo aberto que o outro não deixava. Agora é correr atras do prejuizo. O Host sugeriu contratar o serviço da Sucuri que eles conseguem pela bagatela de uns 500 reais por site... Não vai rolar (Tem um aqui.). Vou fazer eu mesmo. E pensar 2x se vou continuar nesse servidor. Devo comecar a ler sobre o assunto.
Comecei a encontrar um monte de arquivo php com nome estranho em quase todas as pastas do servidor. E dentro deles código ofuscado. Não consigo ter certeza o que o código faz.
Rodei o Virus Scan do proprio servidor... encontrou varios arquivos comprometidos, mas longe de identificar todos que eu estava vendo.
Encontrei esse artigo excelente para identificar aquivos comprometidos.  Esse outro artigo tambem da umas dicas para encontrar arquivos corrompidos. Esse é muito basico. O sitecheck da sucuri pode ajudar. Se estiver na lista negra do Google, ver isso.
rodei no terminal o seguinte:

find . -type f -name '*.php' | xargs grep -l "eval *(" --color

find . -type f -name '*.php' | xargs grep -l "base64_decode *(" --color

find . -type f -name '*.php' | xargs grep -l "gzinflate *(" --color

e comecaram a aparecer mais arquivos comprometidos. É.. o negocio ta feio, mas vou conseguir.

Bom, são varios sites drupal e wordpress e alguns html.

Para sites vazios:

apaguei tudo e instalei novamente...

Hardening:

Tem o modulo securityreview para drupal 7 e uma lista de possiveis acoes aqui.

 

Para drupal: Ler isso. Passos a fazer

1) remover arquivos obvios que não fazer parte do diretorio do drupal. No olho mesmo

2) upload de versão limpa do drupal na mesma pasta, copiar todos os arquivos em cima do que foi hackado

3) instalar o plugin drupal hacked -> rodar e ver quais são os arquivos comprometidos.

4) reinstalar os plugins comprometidos com drush pm-download

5) os que não for possivel, fazer o download e upload pelo file manager

6) verificar arquivo settings.php

7) da uma olhada na pasta cgi-bin e na .well-kown (ou qualquer outra pasta oculta)   o index.php criado faz um include daque arquivo ico escondido...

como nao faz sentido um ico escondido, comeco a lista-los

find . -name ".*.ico" -ls
 

find . -name ".*.ico" -delete

 

 

Uma ideia era baixar a lista de modulos do drupal e reinstalar tudo usando drush. Achei esse drupwn que parece fazer isso, mas não testei essa ideia (achei nesse artigo aqui).

 

Depois tem que endurecer a segurança... hardening (artigo)

 

 

Para o Wordpress: Ler passos outros artigos Wordfence tem um artigo bom aqui sorbe wordpress.

) Instalei o plugin da Sucuri

- retira/apaga arquivos que ele identifica como comprometidos. O sucuri funciona bem para achar os arquivos extras, que nao deveriam estar no diretorio, principalmente no raiz.

-reinstala plugins e modulos (os plugins premiums não são reinstalados!!!) Ler aqui

- gerar novos secretkeys

hardenings:

- ligar todos

 

) Instalei plugin do iControlWP

Shieldsecurity

ligar funcoes de seguranca que ficaram vermelhas no dashboard do shieldsecurity

apagar arquivos desconhecidos

corrigir arquivos core

 

 

rodar no terminal 

find wp-content/uploads -type f -name '*.php'

para ver se tem algum arquivo executavel no diretorio de upload
Mesmo fazendo tudo isso, encontrei uma coisa estranha no wp-config

 

/*2882d*/

@include "\057hom\145/xv\145ins\143o/v\141riz\145son\154ine\056com\057wp-\151ncl\165des\057fon\164s/.\065455\070060\056ico";

/*2882d*/ 

 

que apontava para um arquivo oculto (com . na frente) e extensão .ico, mas com codigo muito muito estranho dentro

descobri que esse arquivo estranho aparece quando faz a busca de arquivos no Securityshield (Varredura/Scan)

 

Fazer scan com o Wordfence tambem

 

 

Instalei um scanner de malware em PHP (Achei outros aqui e aqui e aqui e aqui e aqui). com o comando

git clone https://github.com/scr34m/php-malware-scanner

e depois rodei o seguinte comando:

php scan.php -d ~/

descobri que so procura no php assim, então mudei para 

php php-malware-scanner/scan.php -kpt -e ico -e json -e js -e php -d ~/

 

Apareceram vários arquivos comprometidos... em torno de 1000. Bom, vou tentando apagá-los manualmentr, mas enquanto isso vou fazer algo mais. Coloquei para rodar outro PHP Malware scanner  e deixei rodando. Como são mais de 23mil arquivos, vai levar em torno de 46 minutos.

 

 

 

#Outras dicas (encontrei nesse outro site aqui.)

descobri que é possivel decodificar o codico ofuscado de PHP que estao nos arquivos index.php:

@include "\057home\057xvei\156sco/\146erti\154idad\145.org\057modu\154es/n\157de/.\0670747\0658a.i\143o";

é só copiar e colar no UnPHP. O arquivo que foi apontado por ele tem que ser apagado

É possivel achar também todos os arquivos com 8 caracteres .php que lotam os diretorios com esse comando

find . -type f | egrep './[a-z]{8}\.php'

Para procurar todos os arquivos index.php no servidor:

find . -name index.php -size -300c -size +40c  
so nao descobri como evitar achar um no meio do wordpress que é legitimo. ainda estou pesquisando
 

////

descobri que o virus é colocado em um arquivo php ou 2 em cada diretorio, bem longe da raiz. ele é colocado no inicio de um arquivo legitimo, então é um arquivo que tem doi <?php <?php dentro dele.... vou descobrir como achar todos

criei este Regex para achar um texto com duas aberturas de php: <\?php.+?(?=<\?php)

estou testando este comando aqui: grep -rnw -e "<\?php.+?(?=<\?php)" .
demorando muito... vamos ver só nos arquivos php
egrep -rl --include="*.php" -e "<\?php.+?(?=<\?php)" .
não foi tão util, vários arquivos do drupal e do wordpress fazem isso e são legitimos

SEO Evaluation

Alexandre Campos Moraes Amato

Sociedade Americana de Cirurgia Vascular (SVS): tratamento de varizes com laser

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer