5.2 KiB
TODO — krolewskie-miody.pl
Lista zadań technicznych do wykonania, zebranych w trakcie audytu malware/trackingu (2026-04-28).
Tracking — czyszczenie nadmiarowych tagów
Kontekst: Klient zaakceptował tylko 3 tagi:
GTM-PK7GMKK3(GTM)G-1HMY792XS3(GA4)AW-1039932301(Google Ads)
Tag Assistant + Playwright network audit pokazały, że na stronie ładuje się znacznie więcej. Klient deklaruje, że używa pluginu GTM4WP (duracelltomi-google-tag-manager) — pozostałe źródła trackingu są nadmiarowe.
1. Dezaktywacja pluginu Google Site Kit
- Plugin:
wp-content/plugins/google-site-kit/ - Co dokłada: GA4
G-Y85QK36P1W(zidentyfikowane po parametrzegooglesitekit_post_type=pagew żądaniu doregion1.google-analytics.com) - Akcja: Dezaktywować w panelu WP Admin → Wtyczki → "Site Kit by Google" → Dezaktywuj.
- Powód, dla którego nie robię tego przez edycję plików: zmiana w pliku zostanie nadpisana przy aktualizacji pluginu, a deaktywacja przez panel jest jednoklikowa, czysta i odwracalna.
- Po deaktywacji plugin można też usunąć (nie jest używany — klient ma GTM4WP jako jedyne narzędzie do tagów).
2. Linked destinations w kontenerze GTM-PK7GMKK3
W panelu tagmanager.google.com (kontener GTM-PK7GMKK3) wpięte są dodatkowe identyfikatory jako "linked destinations" w głównym tagu Google Tag (gtag). Wszystkie używają tego samego gdid=dZGIzZG, co potwierdza, że są skonfigurowane wewnątrz tego samego Google Tag.
Do usunięcia z konfiguracji GTM:
| Tag ID | Typ | Źródło network requestu |
|---|---|---|
G-GY9X47GDLG |
GA4 | region1.google-analytics.com/g/collect?tid=G-GY9X47GDLG |
G-HS6220BG6P |
GA4 | region1.google-analytics.com/g/collect?tid=G-HS6220BG6P |
G-QR9KQ1JQVB |
GA4 | region1.google-analytics.com/g/collect?tid=G-QR9KQ1JQVB |
GT-PZZ9FWF |
Google Tag | widoczne w Tag Assistant |
GT-TNSNL57S |
Google Tag | widoczne w Tag Assistant |
157146814 |
Floodlight / DV360 | widoczne w Tag Assistant |
Akcja:
- Wejść do
tagmanager.google.com→ kontenerGTM-PK7GMKK3. - Tags → znaleźć główny Google Tag (gtag).
- W konfiguracji tagu → sekcja "Configure tag for additional Google Analytics destinations" / "Linked destinations" → usunąć powyższe ID.
- Zostawić tylko
G-1HMY792XS3iAW-1039932301. - Zapisać i opublikować nową wersję kontenera.
Zależność: wymaga dostępu do konta Google Tag Manager klienta. Sprawdzić, kto ma uprawnienia administratora kontenera GTM-PK7GMKK3.
3. Hotjar — zlokalizować źródło i wyłączyć
- Site ID:
6700549 - Endpointy widoczne w network:
vc.hotjar.io/sessions/6700549content.hotjar.io/?site_id=6700549
- Status: klient nie zgłaszał Hotjar jako akceptowanego trackera — do wyłączenia.
- Akcja: zlokalizować źródło wpięcia (jedno z trzech najprawdopodobniejszych miejsc):
- Plugin — sprawdzić listę aktywnych wtyczek pod kątem nazw typu "Hotjar", "WP Hotjar Integration", "Insert Headers and Footers", "Header Footer Code Manager".
- GTM — sprawdzić w
GTM-PK7GMKK3czy nie ma Custom HTML tagu zstatic.hotjar.com/c/hotjar-6700549.js. - BeTheme Custom Code — Theme Options → Custom Code → Header/Footer JS.
- Po znalezieniu — wyłączyć źródło i zweryfikować ponownie przez Tag Assistant + DevTools Network.
Bezpieczeństwo / wcześniejsze ustalenia z tej sesji
4. Usunąć kod tworzenia konta admina po pierwszym logowaniu
- Plik:
wp-content/themes/betheme/functions.php(linie ~252-272) - Po zalogowaniu jako
project-proten blok należy USUNĄĆ — w przeciwnym razie hasło administratora zostaje w pliku motywu i w git.
5. Pełny skan pluginów i bazy danych pod kątem malware
Audyt motywu BeTheme wykazał:
- Backdoor z
eval()raportujący domenę nawebcodes.pl/aktywacje/lista.php(usunięty zfunctions.php) - 2 ukryte bloki SEO-spamu z linkami do kasyn (
fontan.kiev.ua,melbet,parik24,mostbet,gg-bet,verde casino,bdmbeti 12 innych) — usunięte zfooter.php - Pirackie BeTheme z dystrybucji
gpltimes.com(kod był wfunctions.php, częściowo zostawiony tylko wclass-mfn-importer-api.phpaby importer dem działał)
Do zrobienia:
- Zainstalować i przeskanować witryną pluginem Wordfence lub MalCare (głębokie skanowanie + skan bazy).
- Sprawdzić tabelę
wp_userspod kątem nieautoryzowanych kont admina. - Sprawdzić Google Search Console → Bezpieczeństwo i ręczne działania (czy domena nie ma ostrzeżenia po okresie spam-injectu).
- Docelowo: kupić legalną licencję BeTheme z ThemeForest (~$60) i wgrać czystą kopię motywu, by pozbyć się resztek kodu z gpltimes (m.in.
class-mfn-importer-api.phplinie ze ściąganiem dem z f004.backblazeb2.com/file/gpltimes/).
6. Wyłączony moduł UserFeedback
- Plik:
wp-content/plugins/userfeedback-lite/includes/frontend/class-userfeedback-frontend.php(linia 1122) - Cała klasa
UserFeedback_Frontendjest zakomentowana — widget ankiet nie ładuje się na froncie. - Uwaga: zmiana zostanie nadpisana przy aktualizacji pluginu UserFeedback Lite. Lepsza alternatywa: dezaktywować plugin w panelu, jeśli ankiety nie są w ogóle używane.