WordPress

Jak zapobiegać atakom polegającym na wstrzykiwaniu SQL WordPress (7 wskazówek)

  • 7 maja, 2024
  • 11 min read
Jak zapobiegać atakom polegającym na wstrzykiwaniu SQL WordPress (7 wskazówek)


Czy chcesz zapobiec atakom polegającym na wstrzykiwaniu SQL do WordPressa?

Wstrzykiwanie SQL to luka w zabezpieczeniach, którą hakerzy mogą wykorzystać do ataku na bazę danych Twojej witryny. Gdy to zrobi, osoba atakująca może odczytać poufne dane, zmodyfikować je i przejąć kontrolę nad całą bazą danych.

W tym artykule podzielimy się krok po kroku kilkoma praktycznymi wskazówkami, jak zapobiegać atakom polegającym na wstrzykiwaniu SQL w WordPress.

Zapobiegaj atakom typu SQL Injection na WordPressZapobiegaj atakom typu SQL Injection na WordPress

Dlaczego warto zapobiegać atakom typu SQL Injection na WordPress?

SQL oznacza Structured Query Language, który jest językiem programowania komunikującym się z bazą danych Twojej witryny WordPress. Bez tej funkcji Twoja witryna nie będzie w stanie wygenerować żadnej dynamicznej treści.

Jednak nieautoryzowane wprowadzanie danych przez użytkownika, nieaktualne oprogramowanie lub ujawnianie poufnych informacji może spowodować lukę w zabezpieczeniach i ułatwić hakerom przeprowadzanie ataków polegających na wstrzykiwaniu kodu SQL.

Celem tego ataku jest serwer bazy danych i dodanie złośliwego kodu lub instrukcji do kodu SQL. Robiąc to, hakerzy mogą wykorzystać poufne informacje przechowywane w bazie danych, takie jak dane użytkownika, do kradzieży tożsamości, przejęcia konta, oszustw finansowych i nie tylko.

Mogą także zmieniać wpisy w bazie danych lub uprawnienia konta oraz przeprowadzać ataki DDOS, utrudniając rzeczywistym użytkownikom odwiedzenie Twojej witryny.

Może to zaszkodzić zaufaniu klientów, negatywnie wpłynąć na wygodę użytkowników i zmniejszyć ruch w witrynie, co będzie niekorzystne dla rozwoju małej firmy.

Powiedziawszy to, rzućmy okiem na kilka praktycznych wskazówek, które mogą zapobiec atakom polegającym na wstrzykiwaniu SQL w WordPress.

Notatka: Przed wprowadzeniem jakichkolwiek zmian w bazie danych w celach zapobiegawczych, zalecamy utworzenie jej kopii zapasowej. Dzięki temu, jeśli coś pójdzie nie tak, możesz skorzystać z kopii zapasowej, aby to naprawić. Aby uzyskać szczegółowe informacje, zapoznaj się z naszym samouczkiem na temat ręcznego tworzenia kopii zapasowej bazy danych WordPress.

1. Regularnie aktualizuj witrynę i korzystaj z zapory sieciowej

Skutecznym sposobem zapobiegania atakom polegającym na wstrzykiwaniu SQL jest regularne aktualizowanie witryny WordPress do najnowszej wersji. Aktualizacje te często łatają luki w zabezpieczeniach, w tym problemy z oprogramowaniem baz danych, co utrudnia hakerom atak na Twoją witrynę.

Jeśli używasz przestarzałej wersji WordPressa, zalecamy włączenie automatycznych aktualizacji do najnowszej wersji, odwiedzając stronę Panel » Aktualizacje strona.

Tutaj wystarczy kliknąć link „Włącz automatyczne aktualizacje dla wszystkich nowych wersji WordPress”. Teraz wszystkie główne aktualizacje zostaną zainstalowane w Twojej witrynie po wydaniu.

Zainstaluj aktualizacje WordPressaZainstaluj aktualizacje WordPressa

Aby uzyskać więcej informacji, możesz zapoznać się z naszym przewodnikiem dla początkujących dotyczącym bezpiecznego aktualizowania WordPressa.

Gdy już to zrobisz, możesz także dodać zaporę sieciową dla dodatkowego bezpieczeństwa. Ta funkcja działa jak tarcza między Twoją witryną a ruchem przychodzącym i blokuje typowe zagrożenia bezpieczeństwa, w tym ataki SQL, zanim dotrą one do Twojej witryny.

Do tej funkcji polecamy Sucuri, które jest najlepszym oprogramowaniem firewall WordPress na rynku. Oferuje zaporę sieciową na poziomie aplikacji, ochronę przed brutalną siłą, a także usługi usuwania złośliwego oprogramowania i czarnych list, co czyni go doskonałym wyborem.

Warto przeczytać!  Jak skonfigurować profesjonalny adres e-mail w Gmailu i Workspace
Jak zapora sieciowa blokuje atakiJak zapora sieciowa blokuje ataki

Ponadto narzędzie pomogło nam w przeszłości zablokować około 450 000 ataków WordPress na naszą witrynę.

Aby uzyskać więcej informacji, zapoznaj się z naszym pełnym przewodnikiem bezpieczeństwa WordPress.

2. Ukryj swoją wersję WordPressa

Domyślnie WordPress wyświetla aktualny numer wersji oprogramowania, którego używasz na swojej stronie. Na przykład, jeśli używasz WordPressa 6.4, ta wersja będzie wyświetlana w Twojej witrynie w celu śledzenia.

Jednak publiczna widoczność numeru wersji może powodować zagrożenia bezpieczeństwa i ułatwiać hakerom przeprowadzanie ataków polegających na wstrzykiwaniu SQL WordPress.

Usuń numer wersji WordPressaUsuń numer wersji WordPressa

Dzieje się tak, ponieważ każda wersja WordPressa ma swoje własne, unikalne luki, które atakujący mogą wykorzystać po odkryciu Twojej wersji. Umożliwi im to dodanie fragmentów złośliwego kodu do Twojej witryny za pomocą wrażliwych pól wejściowych.

Możesz łatwo usunąć numer wersji ze swojej witryny, dodając następujący fragment kodu do plikufunctions.php.

add_filter('the_generator', '__return_empty_string');

Gdy to zrobisz, hakerzy nie będą mogli znaleźć numeru wersji WordPressa za pomocą automatycznych skanerów ani w żaden inny sposób.

Notatka: Pamiętaj, że drobny błąd podczas dodawania kodu może spowodować, że Twoja witryna stanie się niedostępna. Dlatego polecamy WPCode. Jest to najlepsza wtyczka do fragmentów kodu, która sprawia, że ​​dodawanie niestandardowego kodu do witryny jest wyjątkowo bezpieczne i łatwe.

Aby uzyskać więcej informacji, zapoznaj się z naszym samouczkiem na temat prawidłowego usuwania numeru wersji WordPress.

3. Zmień prefiks bazy danych WordPress

Domyślnie WordPress dodaje prefiks wp_ do wszystkich plików bazy danych, co ułatwia hakerom zaplanowanie ataku poprzez wybranie prefiksu.

Najłatwiejszym sposobem zapobiegania atakom polegającym na wstrzykiwaniu SQL jest zmiana domyślnego prefiksu bazy danych na coś unikalnego, czego hakerzy nie będą w stanie odgadnąć.

Możesz to łatwo zrobić, łącząc swoją witrynę internetową za pomocą protokołu FTP. Następnie otwórz plik wp-config.php i znajdź zmianę $table_prefix linia. Następnie możesz zmienić to ustawienie z domyślnego wp_ do czegoś innego, takiego jak to: wp_a123456_.

$table_prefix  = 'wp_a123456_';

Następnie musisz odwiedzić cPanel swojego konta hostingowego. W tym samouczku będziemy używać Bluehost, jednak Twój cPanel może wyglądać nieco inaczej w zależności od firmy hostingowej.

Tutaj przejdź do zakładki „Zaawansowane” i kliknij przycisk „Zarządzaj” obok sekcji „PHPMyAdmin”.

Kliknij przycisk Zarządzaj obok sekcji PHPMyAdminKliknij przycisk Zarządzaj obok sekcji PHPMyAdmin

Spowoduje to otwarcie nowej strony, na której musisz wybrać nazwę bazy danych w lewej kolumnie i przejść do zakładki „SQL” u góry.

Następnie możesz dodać następujące zapytanie SQL do pola tekstowego.

Zapytanie SQL w phpMyAdminZapytanie SQL w phpMyAdmin

Pamiętaj tylko, aby zmienić prefiks bazy danych na ten, który wybrałeś podczas edycji pliku wp-config.php.

RENAME table `wp_comments` TO `wp_a123456_comments`;
RENAME table `wp_links` TO `wp_a123456_links`;
RENAME table `wp_options` TO `wp_a123456_options`;
RENAME table `wp_postmeta` TO `wp_a123456_postmeta`;
RENAME table `wp_RENAME table `wp_commentmeta` TO `wp_a123456_commentmeta`;
posts` TO `wp_a123456_posts`;
RENAME table `wp_terms` TO `wp_a123456_terms`;
RENAME table `wp_termmeta` TO `wp_a123456_termmeta`;
RENAME table `wp_term_relationships` TO `wp_a123456_term_relationships`;
RENAME table `wp_term_taxonomy` TO `wp_a123456_term_taxonomy`;
RENAME table `wp_usermeta` TO `wp_a123456_usermeta`;
RENAME table `wp_users` TO `wp_a123456_users`;

Aby uzyskać więcej instrukcji, zapoznaj się z naszym samouczkiem na temat zmiany prefiksu bazy danych WordPress w celu poprawy bezpieczeństwa.

Warto przeczytać!  tworzenie wtyczek — czy WP REST API buforuje wewnętrznie wykonywane żądania?

4. Zweryfikuj dane użytkownika

Hakerzy zazwyczaj wprowadzają ataki SQL na Twoją witrynę internetową, korzystając z pól służących do wprowadzania danych użytkownika, takich jak sekcje komentarzy lub pola formularzy kontaktowych.

Dlatego ważne jest, aby sprawdzić wszystkie dane przesyłane na blogu WordPress. Oznacza to, że dane użytkowników nie zostaną przesłane do Twojej witryny, jeśli nie będą miały określonego formatu.

Na przykład użytkownik nie będzie mógł przesłać formularza, jeśli pole adresu e-mail nie będzie zawierało symbolu „@”. Dodając tę ​​weryfikację do większości pól formularza, możesz zapobiec atakom polegającym na wstrzykiwaniu kodu SQL.

Zweryfikuj swoje pole e-mailZweryfikuj swoje pole e-mail

Aby to zrobić, będziesz potrzebować Formidable Forms, czyli zaawansowanej wtyczki do tworzenia formularzy. Zawiera opcję „Format maski wprowadzania”, w której można dodać format, którego użytkownicy muszą przestrzegać, aby przesłać dane w polu formularza.

Możesz dodać określony format numerów telefonów lub pojedynczych pól tekstowych.

Dodaj format liczbowy doskonaleniaDodaj format liczbowy doskonalenia

Jeśli nie chcesz sprawdzać poprawności pól formularza, zalecamy WPForms, ponieważ jest to najlepsza wtyczka do formularza kontaktowego z pełną ochroną przed spamem i obsługą Google reCAPTCHA.

Za jego pomocą możesz także dodawać menu rozwijane i pola wyboru do swoich formularzy. Utrudni to hakerom dodanie złośliwych danych.

wpformswpforms

Więcej szczegółów znajdziesz w naszym tutorialu na temat tworzenia bezpiecznego formularza kontaktowego w WordPress.

5. Ogranicz dostęp i uprawnienia roli użytkownika

Kolejną wskazówką, jak zapobiegać atakom polegającym na wstrzykiwaniu SQL WordPress, jest ograniczenie dostępu użytkowników do Twojej witryny.

Na przykład, jeśli masz bloga wielu autorów, będziesz mieć różnych autorów wraz z subskrybentami i administratorami. W takim przypadku możesz poprawić bezpieczeństwo witryny, ograniczając pełny dostęp administracyjny tylko do administratora.

Możesz ograniczyć wszystkie pozostałe role użytkowników do określonych funkcji, których będą potrzebować do wykonania swojej pracy. Ograniczy to dostęp użytkowników do bazy danych i zapobiegnie atakom polegającym na wstrzykiwaniu kodu SQL.

Możesz to zrobić za pomocą bezpłatnej wtyczki Usuń dostęp do pulpitu nawigacyjnego. Po aktywacji wystarczy odwiedzić stronę Ustawienia » Dostęp do pulpitu nawigacyjnego strona, na której możesz zdecydować, które role użytkowników uzyskają dostęp do dashboardu.

Ogranicz ustawienia dostępu do pulpitu nawigacyjnegoOgranicz ustawienia dostępu do pulpitu nawigacyjnego

Jeśli chcesz ograniczyć użytkowników w zależności od ich możliwości, możesz zapoznać się z naszym samouczkiem na temat dodawania lub usuwania funkcji z ról użytkowników w WordPress.

Podobnie możesz także ograniczyć autorów do ich własnych postów w obszarze administracyjnym, aby zwiększyć bezpieczeństwo.

6. Utwórz niestandardowe komunikaty o błędach bazy danych

Czasami użytkownicy mogą natknąć się na błąd bazy danych w Twojej witrynie, który może wyświetlić ważne informacje o Twojej bazie danych, narażając ją na ataki polegające na wstrzykiwaniu SQL.

W takim przypadku zalecamy utworzenie niestandardowego komunikatu o błędzie bazy danych, który będzie wyświetlany użytkownikom, gdy napotkają ten typowy błąd. Aby to zrobić, skopiuj i wklej następującą treść do notatnika i zapisz plik jako „db-error.php”.

<?php // custom WordPress database error page
   
  header('HTTP/1.1 503 Service Temporarily Unavailable');
  header('Status: 503 Service Temporarily Unavailable');
  header('Retry-After: 600'); // 1 hour = 3600 seconds
   
  // If you wish to email yourself upon an error
  // mail("your@email.com", "Database Error", "There is a problem with the database!", "From: Db Error Watching");
   
?>
   
<!DOCTYPE HTML>
<html>
<head>
<title>Database Error</title>
<style>
body { padding: 20px; background: red; color: white; font-size: 60px; }
</style>
</head>
<body>
  You got problems.
</body>

Następnie podłącz swoją witrynę do programu FTP i prześlij właśnie utworzony plik do katalogu /wp-content/ swojej witryny.

Warto przeczytać!  Projektowanie stron internetowych WordPress, konserwacja i nie tylko

Teraz, gdy użytkownicy natkną się na błąd bazy danych w Twojej witrynie, zobaczą po prostu komunikat o błędzie informujący ich o problemie, nie ujawniając żadnych wrażliwych informacji.

Niestandardowa strona podglądu błędów bazy danychNiestandardowa strona podglądu błędów bazy danych

Dodatkowo w zakładce przeglądarki internetowej wyświetli się tytuł „Błąd bazy danych”.

Aby uzyskać więcej informacji, zapoznaj się z naszym samouczkiem na temat dodawania niestandardowej strony błędu bazy danych w WordPress.

7. Usuń niepotrzebną funkcjonalność bazy danych

Aby zapobiec atakom polegającym na wstrzykiwaniu SQL, powinieneś także spróbować usunąć ze swojej witryny wszystkie funkcje bazy danych i pliki, których nie potrzebujesz.

Możesz na przykład usunąć niepotrzebne tabele, śmieci lub niezatwierdzone komentarze, które mogą narazić Twoją bazę danych na ataki hakerów.

Aby usunąć niepotrzebną funkcjonalność bazy danych, zalecamy WP-Optimize. To niesamowita wtyczka, która usuwa niepotrzebne tabele, poprawki postów, wersje robocze, usunięte komentarze, usunięte posty, pingbacki, metadane postów i wiele więcej.

Usuń niepotrzebną funkcjonalność bazy danychUsuń niepotrzebną funkcjonalność bazy danych

Usuwa wszystkie niepotrzebne pliki i optymalizuje bazę danych, aby stała się bezpieczniejsza i szybsza. Aby uzyskać szczegółowe informacje, zobacz nasz przewodnik dla początkujących dotyczący optymalizacji bazy danych WordPress.

Bonus: Skorzystaj z usług WPBeginner Pro, aby utworzyć bezpieczną witrynę

Po podjęciu wszystkich środków zapobiegawczych przeciwko atakom polegającym na wstrzykiwaniu SQL, możesz także zdecydować się na usługi WPBeginner Pro.

Pomożemy Ci zidentyfikować i naprawić wszelkie inne luki w zabezpieczeniach, o których nie wiesz. Ponadto, jeśli spotkałeś się już z atakiem polegającym na wstrzykiwaniu SQL, nasi eksperci mogą pomóc Ci ograniczyć szkody i odzyskać systemy.

WPBeginner Profesjonalne usługi Naprawa witryn zaatakowanych przez hakerówWPBeginner Profesjonalne usługi Naprawa witryn zaatakowanych przez hakerów

Możesz także zlecić nam poprawę optymalizacji szybkości witryny, zaprojektowanie, SEO, a nawet całkowitą przebudowę istniejącej witryny WordPress, niezależnie od tego, czy została zhakowana, czy nie.

Aby uzyskać więcej informacji, sprawdź wszystkie nasze usługi profesjonalne WPBeginner.

Mamy nadzieję, że ten artykuł pomógł Ci dowiedzieć się, jak zapobiegać atakom polegającym na wstrzykiwaniu SQL WordPress. Możesz także zapoznać się z naszym przewodnikiem dla początkujących na temat zarządzania bazami danych WordPress i naszymi najlepszymi wyborami najlepszych wtyczek do baz danych WordPress.

Jeśli spodobał Ci się ten artykuł, zasubskrybuj nasz kanał YouTube, aby zapoznać się z samouczkami wideo WordPress. Można nas znaleźć także na Świergot i Facebooku.




Źródło