.htaccess
w każdym folderze stronyJeśli Twoja strona nie ładuje się, a dostęp do /wp-admin
jest zablokowany, możliwe, że została zaatakowana przez złośliwy skrypt, który rozprzestrzenił .htaccess
w każdym folderze WordPressa, blokując wykonywanie skryptów PHP. W rezultacie witryna przestaje działać, a problem nie ustępuje po prostym usunięciu .htaccess
.
.htaccess
Zainfekowany plik .htaccess
zawiera zazwyczaj regułę, która blokuje dostęp do wszystkich plików .php
, co jest krytyczne dla działania WordPressa. Przykładowy fragment kodu, który może wystąpić w takim .htaccess
, wygląda następująco:
<FilesMatch "\.(php|php7|phtml|suspected)$">
Deny from all
</FilesMatch>
.htaccess
z WordPressaindex.php
, wp-config.php
, pliki z katalogów /wp-admin
i /wp-includes
)./wp-content/themes
) oraz wtyczek (/wp-content/plugins
), ponieważ infekcja często rozprzestrzenia się poprzez modyfikacje tych plików. Wgraj ich czyste wersje z repozytorium WordPress..htaccess
w każdym folderze.htaccess
(w analizowanym przypadku było ich ponad 4100), ręczne usuwanie może być czasochłonne. Aby przyspieszyć proces:.htaccess
w folderach WordPressa:find /ścieżka/do/wordpress -name ".htaccess" -exec rm -f {} \;
.htaccess
, wróć do głównego katalogu WordPressa i utwórz czysty plik .htaccess
, aby przywrócić domyślne ustawienia..htaccess
.htaccess
stwórz nowy, podstawowy plik .htaccess
w głównym katalogu WordPressa. Możesz użyć poniższego przykładu dla WordPressa:# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
5. Weryfikacja Po wykonaniu powyższych kroków sprawdź działanie strony. Upewnij się, że dostęp do /wp-admin
działa prawidłowo i że wszystkie funkcje witryny działają poprawnie.
Aby uniknąć ponownej infekcji, zainstaluj wtyczki zabezpieczające, takie jak Wordfence, które monitorują zmiany w plikach i ostrzegają przed nietypowymi modyfikacjami .htaccess
. Warto także ograniczyć dostęp do /wp-admin
oraz /wp-includes
za pomocą ustawień serwera lub dodatkowych reguł w .htaccess
.
W pierwszym kroku powinniśmy wyczyścić zainfekowane pliki – możemy to zrobić zastępując je nowymi z czystej instalacji. W kolejnym wyczyścić wszystkie htaccess które się dodały do każdego folderu.
W analizowanym przez nasz przypadku było ponad 4100 plików – ręczne usuwanie zajęło by sporo czasu dobrze to zautomatyzować komendami powłoki.
Jeśli potrzebujecie Państwo pomocy przy usunięciu wirusa wordpress zapraszamy do kontaktu.