błędna konfiguracja zabezpieczeń
| Po angielsku | security misconfiguration |
|---|---|
| Którą formą pisać | obie formy Obie formy są w obiegu. Przy pierwszym wystąpieniu pisz „polski termin (english term)”, dalej sam polski. |
| Inne formy | nieprawidłowa konfiguracja zabezpieczeń · błędy konfiguracji bezpieczeństwa · niepoprawna konfiguracja |
| Kategoria | Podatności i klasy błędów |
Błędna konfiguracja zabezpieczeń (security misconfiguration) to według OWASP sytuacja, w której system, aplikacja albo usługa chmurowa jest ustawiona nieprawidłowo z punktu widzenia bezpieczeństwa, co tworzy podatności [1]. Źródłem problemu nie jest błąd w kodzie, lecz ustawienia: domyślne konta, zbędne funkcje, szczegółowe komunikaty o błędach albo brak nagłówków bezpieczeństwa. W zestawieniu OWASP Top 10 z 2025 roku kategoria ta zajmuje drugie miejsce, awansując z piątego w poprzedniej edycji [1].
Jak działa
Oprogramowanie trafia na serwer z ustawieniami domyślnymi, wygodnymi przy instalacji i testach. Jeśli nikt ich nie zmieni, zostają na produkcji. Atakujący nie musi wtedy szukać błędu w logice aplikacji. Wystarczy, że sprawdzi typowe adresy, typowe hasła i typowe przełączniki, a system sam poda mu informacje albo dostęp.
OWASP wymienia cechy aplikacji podatnej na tę kategorię [1]:
- brak utwardzenia albo źle ustawione uprawnienia w chmurze;
- włączone zbędne funkcje, usługi i konta domyślne z niezmienionymi hasłami, czyli domyślne hasła;
- obsługa błędów, która pokazuje użytkownikowi ślady stosu;
- wyłączone zabezpieczenia po aktualizacji, gdy zgodność wsteczna wygrywa z bezpieczeństwem;
- brak nagłówków bezpieczeństwa HTTP albo ich niebezpieczne ustawienie;
- wartości domyślne na serwerach, we frameworkach, bibliotekach i bazach danych.
Typowy przebieg wykorzystania pokazuje schemat poniżej.
Odmiany
Błędy konfiguracji występują na każdej warstwie: w serwerze WWW, w aplikacji, w bazie danych, w sieci i w chmurze. Scenariusze ataku opisane przez OWASP dobrze pokazują ich różnorodność [1].
| Odmiana | Przykład | Skutek |
|---|---|---|
| przykładowe aplikacje | pozostawione na serwerze produkcyjnym [1] | znane luki w przykładach [1] |
| listowanie katalogów (directory listing) | niewyłączone na serwerze [1] | atakujący przegląda katalogi [1] |
| szczegółowe błędy | ślady stosu zwracane użytkownikom [1] | wyciek wersji i ścieżek |
| stare kopie plików | archiwa i pliki .old w katalogu WWW [6] | odczyt kodu i haseł [6] |
Szerszy obraz daje wspólny komunikat NSA i CISA z 5 października 2023 roku [2]. Zespoły red team i blue team obu agencji wskazały dziesięć najczęstszych błędów konfiguracji w sieciach organizacji. Na pierwszym miejscu stoją domyślne konfiguracje oprogramowania i aplikacji, dalej między innymi słabe rozdzielenie uprawnień użytkownika i administratora, brak segmentacji sieci, słabe zarządzanie poprawkami oraz słaba higiena danych uwierzytelniających [2].
W WordPressie
W WordPressie większość ustawień bezpieczeństwa siedzi w pliku wp-config.php, w konfiguracji serwera i w panelu. Kilka z nich pojawia się w audytach szczególnie często.
Tryb debugowania. Dokumentacja WordPressa nie zaleca używania WP_DEBUG ani innych narzędzi diagnostycznych na działających stronach; są przeznaczone do testów lokalnych i środowisk stagingowych [3]. Stała WP_DEBUG_DISPLAY decyduje, czy komunikaty trafiają do HTML strony [3]. Z kolei WP_DEBUG_LOG zapisuje je domyślnie w pliku wp-content/debug.log [3], czyli w katalogu, który zwykle jest osiągalny z przeglądarki. Zob. tryb debugowania na produkcji.
Plik konfiguracyjny. Poradnik utwardzania WordPressa podaje dwie metody ochrony wp-config.php: przeniesienie pliku katalog wyżej niż instalacja oraz regułę serwera odmawiającą dostępu do niego [4]. Szerzej opisuje to hasło utwardzanie pliku wp-config.php (wp-config hardening). Kopie tego pliku z końcówką .bak czy .old należą już do publicznie dostępnych plików wrażliwych.
Edycja plików z panelu. Stała DISALLOW_FILE_EDIT ustawiona na true usuwa administratorom możliwość edycji plików, co według dokumentacji zapobiega wykonaniu kodu przez kokpit [4]. Zob. edytor plików motywów i wtyczek.
Uprawnienia plików. Dokumentacja zaleca uprawnienia 755 dla katalogów i 644 dla plików, a zapis w katalogu głównym i w /wp-admin/ tylko dla konta właściciela [4]. Szczegóły w haśle uprawnienia plików.
Listowanie katalogów. W Apache opcja Indexes sprawia, że jeśli adres wskazuje katalog bez pliku indeksu, serwer zwraca sformatowaną listę jego zawartości [5]. Dotyczy to na przykład katalogu /wp-content/uploads/, jeśli nie ma w nim pliku indeksu. Wyłączenie tej opcji jest jednym z typowych zabezpieczeń w .htaccess.
Options -Indexes
<Files wp-config.php>
Require all denied
</Files>
Zagrożenia i skutki
Błędna konfiguracja rzadko daje od razu pełną kontrolę nad stroną, ale często otwiera do niej drogę. Komunikat o błędzie ujawnia wersje i ścieżki, co ułatwia dobór exploita. Otwarty katalog pokazuje pliki, których nikt nie miał publikować. Domyślne konto albo pozostawiony instalator daje wejście do panelu. OWASP opisuje scenariusz, w którym przykładowe aplikacje pozostawione na serwerze produkcyjnym mają znane błędy, a atakujący wykorzystują je do przejęcia serwera [1].
Skutki łączą się z innymi klasami błędów: ujawnienie informacji, wyciek danych, a w skrajnym przypadku nieautoryzowane konto administratora założone przez pozostawiony instalator albo przez konto z domyślnym hasłem.
Jak się bronić
OWASP zaleca powtarzalny proces utwardzania (hardening) [1]:
- automatyczne wdrażanie identycznie skonfigurowanych środowisk, z osobnymi danymi dostępowymi dla każdego;
- minimalna instalacja bez zbędnych składników i przykładów;
- regularny przegląd konfiguracji razem z instalacją poprawek;
- wysyłanie nagłówków bezpieczeństwa do klientów;
- automatyczna weryfikacja ustawień we wszystkich środowiskach;
- centralne przechwytywanie komunikatów o błędach.
Wytyczne testowe OWASP dotyczące starych kopii plików dodają zakaz edycji plików bezpośrednio na serwerze produkcyjnym, trzymanie plików danych, logów i konfiguracji poza katalogami dostępnymi z sieci oraz politykę usuwania przestarzałych plików [6]. W praktyce WordPressa oznacza to środowisko testowe do diagnostyki, wyłączone wyświetlanie błędów na produkcji i okresowe skanowanie podatności obejmujące także ustawienia serwera.
Historia i przykłady
W edycji OWASP Top 10 z 2025 roku wszystkie testowane aplikacje miały jakąś formę błędnej konfiguracji, przy średniej częstości występowania 3,00 procent [1]. Kategoria obejmuje ponad 719 tysięcy wystąpień słabości CWE [1]. Na liście NSA i CISA z 2023 roku domyślne konfiguracje oprogramowania znalazły się na pierwszym miejscu, a słabe zarządzanie poprawkami na piątym [2].
Przypisy
6- [1] A02:2025 Security Misconfiguration · OWASP
- [2] NSA and CISA Red and Blue Teams Share Top Ten Cybersecurity Misconfigurations (AA23-278A) · CISA
- [3] Debugging in WordPress — Advanced Administration Handbook · WordPress.org
- [4] Hardening WordPress — Advanced Administration Handbook · WordPress.org
- [5] Apache HTTP Server 2.4: core — Options Directive · Apache Software Foundation
- [6] Review Old Backup and Unreferenced Files for Sensitive Information (WSTG v4.2) · OWASP
Hasła w tym artykule
19- OWASP Top 10
- domyślne hasło
- nagłówki bezpieczeństwa HTTP
- listowanie katalogów
- red team
- blue team
- segmentacja sieci
- tryb debugowania na produkcji
- utwardzanie pliku wp-config.php
- publicznie dostępne pliki wrażliwe
- edytor plików motywów i wtyczek
- uprawnienia plików
- zabezpieczenia w .htaccess
- exploit
- ujawnienie informacji
- wyciek danych
- nieautoryzowane konto administratora
- utwardzanie
- skanowanie podatności