Domyślny prefiks tabel bazy danych (wp_)
Co to oznacza
WordPress domyślnie nazywa wszystkie tabele w bazie danych z prefiksem wp_ (np. wp_users, wp_options, wp_posts). Jeśli Twoja instalacja korzysta z tego domyślnego prefiksu, ułatwiasz atakującemu pracę w przypadku podatności SQL Injection. Sprawdź wartość zmiennej $table_prefix w pliku wp-config.php.
Prefiks tabel jest definiowany w pliku wp-config.php zmienną $table_prefix i jest ustawiany podczas instalacji WordPress.
Jakie jest ryzyko
- Ułatwienie ataków SQL Injection — jeśli atakujący znajdzie podatność SQL Injection w którejś z wtyczek, domyślny prefiks oznacza, że zna dokładne nazwy tabel. Może od razu targetować
wp_userspo dane logowania. - Zautomatyzowane exploity — większość publicznych exploitów SQL Injection na WordPress zakłada prefiks
wp_. Niestandardowy prefiks sprawia, że gotowe skrypty ataku nie zadziałają bez modyfikacji. - Dodatkowa warstwa ochrony — zmiana prefiksu to element strategii „defense in depth". Sama w sobie nie zatrzyma zdeterminowanego atakującego, ale utrudnia automatyczne ataki.
Uwaga: zmiana prefiksu to ochrona uzupełniająca. Nie zastępuje aktualizacji, silnych haseł i poprawnej konfiguracji.
Jak to naprawić
Zmiana prefiksu na istniejącej stronie wymaga ostrożności:
- Wykonaj kopię zapasową bazy danych — przed jakąkolwiek zmianą.
- Zmień prefiks w
wp-config.php:$table_prefix = 'nst_'; // dowolny prefiks zamiast wp_ - Zmień nazwy tabel w bazie danych — za pomocą SQL:
RENAME TABLE wp_posts TO nst_posts; RENAME TABLE wp_users TO nst_users; -- powtórz dla każdej tabeli - Zaktualizuj referencje w tabelach —
wp_optionsiwp_usermetazawierają wartości z prefiksem w kolumnachoption_nameimeta_key. - Alternatywa: użyj wtyczki — narzędzia jak Brozzme DB Prefix automatyzują cały proces.
Najlepszy moment na zmianę prefiksu to instalacja WordPress — wpisz niestandardowy prefiks w kreatorze instalacji.