Baza wiedzy

Honeypot (pole pułapkowe)

Niewidoczne dla użytkownika pole formularza, które służy do wykrywania i blokowania automatycznych botów spamujących.

← Wróć do bazy wiedzy

Jak to działa



Pole honeypot jest dodawane do formularza HTML, ale ukrywane przed użytkownikiem za pomocą CSS (display: none) i oznaczane atrybutem aria-hidden="true". Prawdziwy użytkownik nie widzi tego pola i nie wypełnia go.



Bot, który automatycznie przesyła formularze, nie rozpoznaje, które pola są widoczne - wypełnia wszystkie, łącznie z honeypot.



Co dzieje się po wypełnieniu honeypot



Serwer sprawdza wartość pola honeypot. Jeśli jest wypełnione, żądanie jest identyfikowane jako pochodzące od bota. Typowa reakcja to:



  • ciche odrzucenie żądania (bez informowania bota),

  • zwrócenie fałszywego komunikatu sukcesu (bot 'myśli', że mu się udało),

  • zarejestrowanie zdarzenia w logach bezpieczeństwa.



Zalety



  • brak wpływu na doświadczenie użytkownika (UX),

  • brak potrzeby wdrażania inwazyjnych mechanizmów (np. reCAPTCHA),

  • prostota implementacji i utrzymania,

  • zerowy narzut wydajnościowy po stronie frontendu.



Ograniczenia



  • zaawansowane boty mogą analizować CSS i pomijać ukryte pola,

  • nie chroni przed atakami ręcznymi (targeted attacks),

  • skuteczność spada przy publicznym opisie mechanizmu w kodzie źródłowym.



Honeypot w połączeniu z innymi warstwami



Honeypot jest najskuteczniejszy w połączeniu z rate limiting (ograniczenie częstotliwości żądań) i walidacją backendową (sprawdzanie struktury i typów danych). Razem tworzą wielowarstwowy model ochrony formularzy.

Przykład wdrożenia
Powiązane pojęcia
Kontakt
Masz pytanie techniczne?

Porozmawiajmy

Chętnie wyjaśnię, jak te pojęcia przekładają się na Twój projekt.

Skontaktuj się