Rejestr incydentów bezpieczeństwa
Rejestr incydentów pozwala dokumentować zdarzenia bezpieczeństwa w sklepie. Wspiera zgodność z Cyber Resilience Act (CRA) - unijnym rozporządzeniem wymagającym rejestru incydentów dla produktów z elementami cyfrowymi.
Czym jest CRA
Dział zatytułowany „Czym jest CRA”CRA to rozporządzenie UE dotyczące bezpieczeństwa cybernetycznego produktów z elementami cyfrowymi. Sprzedawcy muszą:
- Prowadzić rejestr incydentów bezpieczeństwa
- Raportować incydenty do organów nadzoru w ciągu 24 godzin
- Informować klientów o wykrytych lukach
- Dokumentować działania naprawcze
Dostęp do rejestru
Dział zatytułowany „Dostęp do rejestru”Przejdź do WooCommerce > Polski > Narzędzia > Incydenty bezpieczeństwa. Wymaga uprawnienia manage_woocommerce.
Rejestrowanie incydentu
Dział zatytułowany „Rejestrowanie incydentu”Kliknij Dodaj incydent i wypełnij formularz:
Pola formularza
Dział zatytułowany „Pola formularza”| Pole | Typ | Wymagane | Opis |
|---|---|---|---|
| Tytuł | text | Tak | Krótki opis incydentu |
| Data wykrycia | datetime | Tak | Kiedy incydent został wykryty |
| Data wystąpienia | datetime | Nie | Kiedy incydent faktycznie miał miejsce |
| Kategoria | select | Tak | Typ incydentu |
| Priorytet | select | Tak | Krytyczny / Wysoki / Średni / Niski |
| Opis | textarea | Tak | Szczegółowy opis zdarzenia |
| Produkty dotknięte | multiselect | Nie | Produkty WooCommerce dotknięte incydentem |
| Zakres wpływu | select | Tak | Liczba dotkniętych klientów |
| Działania podjęte | textarea | Nie | Opis działań naprawczych |
| Status | select | Tak | Nowy / W trakcie / Rozwiązany / Zamknięty |
| Osoba odpowiedzialna | select | Nie | Użytkownik WordPress odpowiedzialny |
| Zgłoszono do organu | checkbox | Nie | Czy incydent zgłoszono do organu nadzoru |
| Data zgłoszenia | datetime | Nie | Kiedy zgłoszono do organu |
| Klienci powiadomieni | checkbox | Nie | Czy klienci zostali powiadomieni |
| Data powiadomienia | datetime | Nie | Kiedy klienci zostali powiadomieni |
| Załączniki | file | Nie | Logi, zrzuty ekranu, raporty |
Kategorie incydentów
Dział zatytułowany „Kategorie incydentów”| Kategoria | Opis |
|---|---|
| Wyciek danych | Nieautoryzowany dostęp do danych osobowych |
| Złośliwe oprogramowanie | Malware, skimmer, backdoor |
| Atak DDoS | Atak odmowy usługi |
| Nieautoryzowany dostęp | Włamanie na konto admina lub klienta |
| Luka w oprogramowaniu | Odkryta podatność w wtyczce lub motywie |
| Phishing | Atak phishingowy na klientów sklepu |
| Manipulacja danymi | Nieautoryzowana zmiana danych (ceny, zamówienia) |
| Inne | Inne zdarzenia bezpieczeństwa |
Skala wpływu
Dział zatytułowany „Skala wpływu”| Zakres | Opis |
|---|---|
| Brak wpływu | Incydent wykryty i zablokowany |
| Pojedynczy klient | Dotyczy 1 klienta |
| Kilku klientów | Dotyczy 2-10 klientów |
| Wielu klientów | Dotyczy 11-100 klientów |
| Masowy | Dotyczy ponad 100 klientów |
Lista incydentów
Dział zatytułowany „Lista incydentów”Tabela wszystkich incydentów z kolumnami:
- ID - numer incydentu
- Data - data wykrycia
- Tytuł - krótki opis
- Kategoria - typ incydentu
- Priorytet - kolorowa etykieta (czerwony/pomarańczowy/żółty/szary)
- Status - aktualny stan
- Odpowiedzialny - przypisana osoba
- Zgłoszenie - czy zgłoszono do organu nadzoru
Filtrowanie i sortowanie
Dział zatytułowany „Filtrowanie i sortowanie”Filtruj incydenty po:
- Kategorii
- Priorytecie
- Statusie
- Dacie (zakres dat)
- Osobie odpowiedzialnej
Sortowanie po każdej kolumnie (rosnąco/malejąco).
Wyszukiwanie
Dział zatytułowany „Wyszukiwanie”Pole wyszukiwania przeszukuje tytuł i opis incydentów.
Linia czasu incydentu (timeline)
Dział zatytułowany „Linia czasu incydentu (timeline)”Każdy incydent ma linię czasu z chronologią działań:
2025-06-15 08:30 - Incydent wykryty przez system monitoringu2025-06-15 08:45 - Incydent przypisany do Jana Kowalskiego2025-06-15 09:00 - Rozpoczęto analizę logów2025-06-15 10:30 - Zidentyfikowano źródło - nieautoryzowany dostęp przez podatność w wtyczce X2025-06-15 11:00 - Wtyczka X zaktualizowana do najnowszej wersji2025-06-15 11:30 - Hasła wszystkich administratorów zmienione2025-06-15 12:00 - Incydent zgłoszony do UODO2025-06-15 14:00 - Powiadomienie wysłane do dotkniętych klientów2025-06-15 15:00 - Status zmieniony na "Rozwiązany"Wpisy dodają się automatycznie (zmiana statusu, przypisanie) lub ręcznie (notatki, działania).
Eksport CSV
Dział zatytułowany „Eksport CSV”Kliknij Eksportuj CSV nad tabelą. Eksport zawiera:
Kolumny eksportu
Dział zatytułowany „Kolumny eksportu”| Kolumna | Opis |
|---|---|
incident_id | Numer incydentu |
title | Tytuł |
detection_date | Data wykrycia |
occurrence_date | Data wystąpienia |
category | Kategoria |
priority | Priorytet |
description | Opis |
affected_products | ID dotkniętych produktów |
impact_scope | Zakres wpływu |
actions_taken | Działania podjęte |
status | Status |
responsible_person | Osoba odpowiedzialna |
reported_to_authority | Czy zgłoszono do organu |
report_date | Data zgłoszenia |
customers_notified | Czy klienci powiadomieni |
notification_date | Data powiadomienia |
resolution_date | Data rozwiązania |
Filtrowanie eksportu
Dział zatytułowany „Filtrowanie eksportu”Eksport można ograniczyć do:
- Wybranego zakresu dat
- Wybranej kategorii
- Wybranego statusu
// Hook do modyfikacji danych eksportuadd_filter('polski/security_incidents/export_data', function (array $data): array { // Dodanie własnej kolumny foreach ($data as &$row) { $row['custom_field'] = 'wartość'; } return $data;});Powiadomienia
Dział zatytułowany „Powiadomienia”Automatyczne powiadomienia:
| Zdarzenie | Odbiorcy | Kanał |
|---|---|---|
| Nowy incydent krytyczny | Wszyscy administratorzy | |
| Zmiana statusu incydentu | Osoba odpowiedzialna | |
| Incydent bez działań > 24h | Osoba odpowiedzialna | |
| Zbliżający się termin zgłoszenia | Administratorzy |
Konfiguracja powiadomień: WooCommerce > Polski > Narzędzia > Incydenty > Powiadomienia.
Automatyczne wykrywanie
Dział zatytułowany „Automatyczne wykrywanie”Moduł automatycznie rejestruje niektóre zdarzenia:
- Nieudane logowania - seria nieudanych prób logowania (brute force)
- Zmiana plików rdzenia - modyfikacja plików WordPress core
- Nowy użytkownik admin - utworzenie konta z rolą administratora
- Zmiana uprawnień - podwyższenie uprawnień istniejącego konta
Wykryte zdarzenia mają przypisaną kategorię i priorytet, ale wymagają ręcznej weryfikacji (status “Nowy”).
// Wyłączenie automatycznego wykrywaniaadd_filter('polski/security_incidents/auto_detect', '__return_false');Programowe dodawanie incydentów
Dział zatytułowany „Programowe dodawanie incydentów”do_action('polski/security_incidents/create', [ 'title' => 'Wykryto próbę SQL injection', 'category' => 'unauthorized_access', 'priority' => 'high', 'description' => 'Wykryto próbę SQL injection w parametrze product_id.', 'detection_date' => current_time('mysql'), 'status' => 'new',]);Rozwiązywanie problemów
Dział zatytułowany „Rozwiązywanie problemów”Powiadomienia nie docierają - sprawdź konfigurację e-mail WordPressa. Użyj wtyczki SMTP (np. WP Mail SMTP) zamiast domyślnego wp_mail().
Eksport CSV zwraca pusty plik - sprawdź filtry. Zbyt restrykcyjne filtrowanie daje pusty wynik.
Za dużo alertów - dostosuj progi w ustawieniach. Domyślny próg nieudanych logowań (5 na 15 minut) może być za niski dla dużych sklepów.
Zgłaszanie problemów: github.com/wppoland/polski/issues