Wystawiasz na stronie formularz kontaktowy, żeby klienci mogli łatwo napisać. Kilka dni później Twoja skrzynka pełna jest ofert kryptowalut, linków do podejrzanych stron i pustych wiadomości. Witaj w świecie botów, dla których każdy niezabezpieczony formularz to zaproszenie.

Jak boty widzą Twój formularz

Bot nie „czyta" strony jak człowiek. Skanuje kod, znajduje pola formularza i wypełnia wszystkie naraz, najszybciej jak się da, po czym wysyła. Robi to tysiące razy, na tysiącach stron, automatycznie. Nie interesuje go, co sprzedajesz — interesuje go to, że formularz działa i można przez niego coś przepchnąć.

Klasyczna odpowiedź to CAPTCHA — te „zaznacz wszystkie światła" albo przepisywanie zniekształconych liter. Problem w tym, że one karzą przede wszystkim prawdziwych użytkowników. Część ludzi po prostu rezygnuje, zamiast męczyć się z układanką. Tracisz realne zapytania, żeby odstraszyć boty. Da się lepiej.

Warstwy obrony, których użytkownik nawet nie zauważy

Pułapka na boty (honeypot)

Dodajesz do formularza dodatkowe pole, ukryte przed ludźmi, ale widoczne w kodzie. Człowiek go nie wypełni, bo go nie widzi. Bot wypełni wszystko, co znajdzie — łącznie z pułapką. Jeśli to pole jest wypełnione, wiadomo, że to bot, i zgłoszenie ląduje w koszu. Zero utrudnień dla ludzi, skuteczna eliminacja automatów.

Pomiar czasu wypełniania

Człowiek potrzebuje kilku–kilkunastu sekund, żeby wypełnić formularz. Bot robi to w ułamku sekundy. Jeśli formularz zostaje wysłany w mniej niż, powiedzmy, trzy sekundy od załadowania — to niemal na pewno automat. Prosta reguła, która odsiewa znaczną część ruchu botów.

Najlepsze zabezpieczenie to takie, którego uczciwy użytkownik w ogóle nie zauważa. Cała walka z botami dzieje się w tle, a człowiek po prostu wysyła wiadomość i dostaje odpowiedź.

Token bezpieczeństwa (ochrona przed CSRF)

Serwer generuje unikalny, jednorazowy token i osadza go w formularzu. Przy wysyłce sprawdza, czy token się zgadza. Dzięki temu zgłoszenie musi pochodzić z Twojej strony, a nie z obcego skryptu, który podszywa się pod formularz z zewnątrz.

Ograniczenie liczby zgłoszeń

Nawet jeśli bot przejdzie wcześniejsze warstwy, możesz ograniczyć, ile razy z jednego adresu można wysłać formularz w danym czasie. Człowiek nie wysyła pięćdziesięciu zapytań na godzinę — bot owszem. Limit ucina masowe nadużycia.

Walidacja i czyszczenie danych

Każde pole trzeba sprawdzić i oczyścić, zanim cokolwiek z nim zrobisz. To chroni nie tylko przed śmieciowymi danymi, ale i przed próbami wstrzyknięcia szkodliwej treści przez pola formularza — jedną z najstarszych sztuczek w sieci.

// tak budujemy formularze w CodeBright

Każdy formularz, który oddajemy, ma te warstwy wbudowane od początku: pułapkę na boty, pomiar czasu, token bezpieczeństwa, limit zgłoszeń i pełną walidację. Bez CAPTCHA, bez utrudniania życia Twoim klientom. Ochrona dzieje się w tle.

Co możesz sprawdzić u siebie już teraz

Jeśli masz na stronie formularz i dostajesz spam, zadaj wykonawcy trzy pytania: Czy formularz ma ukrytą pułapkę na boty? Czy sprawdza, jak szybko został wypełniony? Czy dane są walidowane po stronie serwera, a nie tylko w przeglądarce?

Jeśli odpowiedź brzmi „nie wiem" albo „chyba nie" — Twój formularz najpewniej jest otwartą bramą. Zamknięcie jej nie wymaga irytujących zagadek dla użytkowników. Wymaga tylko kilku warstw, które działają, zanim ktokolwiek to zauważy.