Jak możemy pomóc?

Poszukiwanie...

Mod_security: jak sprawdzić logi i dodać wyjątek?

Mod_security to narzędzie, które pomaga chronić Twoją witrynę przed zagrożeniami wynikającymi z różnych niepożądanych aktywności. Reaguje na przykład w momencie, gdy na stronę wgrywany jest plik mogący zawierać infekcje.

Może jednak zdarzyć się, że zareaguje na incydent - operację, która jest przez Ciebie wykonywana celowo, przez co blokuje jej wykonanie. W takim wypadku możesz dodać wyjątek, nie musząc wyłączać całkowicie ochrony mod_security.

Jak zlokalizować problematyczną regułę?

  1. Zaloguj się do panelu administracyjnego hostingu. W tym celu przejdź do Panelu klienta, a następnie na liście usług hostingowych wybierz "Opcje" przy tej, do której chcesz się zalogować a następnie "Zaloguj".
  1. W sekcji Zarządzanie kontami przejdź do Podsumowanie witryny / Statystyki / Logi.
  1. Przy domenie, o którą chodzi, kliknij Dziennik błędów (Error log).
  1. Po wejściu do logów zlokalizuj takie, które zawierają frazę "mod_security". Ułatwisz to sobie naciskając klawisze Ctrl+F i wpisując "mod_security".
  2. Na naszym przykładzie zlokalizowane zostały reguły:
2024-03-29 11:15:03.301432 [NOTICE] [427156] [T3] [5.173.153.13:1068:HTTP2-19#APVH_www.xxxxxx.pl:443] [MODSEC] mod_security rule [id "77350349"] at [/etc/modsecurity.d/007_i360_wordpress.conf:2963] triggered!
[Fri Mar 29 11:15:03.301322 2024] [error] [client 5.173.153.13] ModSecurity: Warning. [Rule: 'REQUEST_URI' '@rx \/wp-admin\/load-(?:styles|scripts).php'] [id "77350349"] [msg "IM360 WAF: Tracking manual actions in WordPress||Time:20240329111503||Addr:5.173.153.13;login:;get:||User:host202425||WPU:adminsaddf||T:LITESPEED||"] [severity "NOTICE"] [tag "service_i360"] [tag "noshow"] [hostname "xxxxx.pl"] [uri "/wp-admin/load-styles.php?c=1&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,wp-pointer,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menus,widgets&load%5Bchunk_1%5D=,site-icon,l10n,buttons,wp-auth-check,code-editor&ver=6.4.3"] [unique_id "If@mrO5ULOtQ1Zd3LWT63ERU"], referer: https://xxxxxx.pl/wp-admin/admin.php?page=pmxi-admin-import
2024-03-29 11:15:03.301459 [NOTICE] [427156] [T3] [5.173.153.13:1068:HTTP2-19#APVH_www.xxxxx.pl:443] Content len: 0, Request line: 'GET /wp-admin/load-styles.php?c=1&dir=ltr&load%5Bchunk_0%5D=dashicons,admin-bar,wp-pointer,common,forms,admin-menu,dashboard,list-tables,edit,revisions,media,themes,about,nav-menus,widgets&load%5Bchunk_1%5D=,site-icon,l10n,buttons,wp-auth-check,code-editor&ver=6.4.3 HTTP/1.1'
2024-03-29 11:15:03.301461 [INFO] [427156] [T3] [5.173.153.13:1068:HTTP2-19#APVH_www.xxxx.pl:443] Cookie len: 617, wordpress_sec_3f95577be9729137065907e1d80c36e1=adminsaddf%7C1711878160%7CdbRdWUAqqOdkLiiQoGKE6xaHSQCqKuj4omoNIzbcKyi%7Cfa9199e6ac4229e18a25431bac70b9012e165a5a6e2810419c66929267487725; wordpress_logged_in_3f95577be9729137065907e1d80c36e1=adminsaddf%7C1711878160%7CdbRdWUAqqOdkLiiQoGKE6xaHSQCqKuj4omoNIzbcKyi%7C4181f37b4e62f7140c049731d6a90da5b250b458091d85a57a648af5d00ea493; _http_accept:image/webp=1; _lscache_vary=164d9d4b90cedb56bcd3e6601d7d8c3d; tk_ai=woo%3Ai%2BuRvwyRAFKEtlxV53G1nM%2Fk; wp-settings-1=mfold%3Do%26libraryContent%3Dbrowse%26editor%3Dtinymce%26posts_list_mode%3Dlist; wp-settings-time-1=1711705362
  1. Zauważamy informację "[MODSEC] mod_security rule [id "77350349"]" - sugeruje ona, że incydent o numerze 77350349 powoduje nasze problemy. Musimy więc dodać wyjątek od tej reguły.

Dodawanie wyjątku dla reguły

Sposób nr 1: opcja ModSecurity w panelu hostingu

  1. Aby dodać wyjątek dla reguły z poziomu panelu, przejdź do opcji ModSecurity w sekcji Funkcje zaawansowane.
  1. W prawym górnym rogu upewnij się, że zarządzasz odpowiednią domeną. Jeśli tak, dodaj regułę w tym miejscu:
  • ID reguły znajdziesz w logu zgodnie z przykładem powyżej.
  • Komentarz jest opcjonalny.

Po zapisaniu zmiany wskazana reguła mod_security będzie ignorowana.

Sposób nr 2: dodanie wyjątku w pliku .htaccess

  1. Otwórz plik .htaccess w katalogu public_html domeny. Możesz przejść do niego na przykład przez menedżer plików w panelu hostingu.
  2. Na początku pliku dodaj regułę:
SecRuleRemoveByID 77350349

77350349 zamień na swój ID reguły.

Po zapisaniu zmiany wskazana reguła mod_security będzie ignorowana.