
CAPTCHA to mechanizm zabezpieczający stosowany na stronach internetowych i w aplikacjach w celu odróżnienia człowieka od automatycznego programu, czyli bota. Nazwa jest skrótem od Completely Automated Public Turing test to tell Computers and Humans Apart. Tego typu zabezpieczenia pojawiają się między innymi podczas logowania, zakładania konta, wysyłania formularza, dodawania komentarza czy odzyskiwania hasła. Ich zadaniem jest ograniczenie automatycznych działań wykonywanych na dużą skalę.
Zasada działania i rola w ochronie przed botami
Klasyczna CAPTCHA wymaga wykonania prostego zadania, które ma być łatwe dla człowieka, a trudniejsze dla programu komputerowego. Jedną z najstarszych form jest odczytanie liter lub cyfr przedstawionych na zniekształconym obrazie i wpisanie ich w odpowiednie pole. Inne rozwiązania polegają na zaznaczaniu wskazanych obiektów na zdjęciach, rozwiązywaniu prostych łamigłówek albo potwierdzeniu określonej czynności. W praktyce sposób weryfikacji zależy od zastosowanego systemu i oceny ryzyka konkretnej wizyty.
CAPTCHA jest wykorzystywana przede wszystkim do ochrony usług internetowych przed nadużyciami. Boty mogą automatycznie tworzyć tysiące fałszywych kont, wysyłać spam, masowo wypełniać formularze, próbować przejmować konta przy użyciu wykradzionych haseł albo sztucznie generować ruch. Mechanizm weryfikacyjny utrudnia wykonanie takich operacji bez udziału człowieka. Nie stanowi jednak samodzielnego zabezpieczenia przed wszystkimi rodzajami ataków i zwykle jest tylko jednym z elementów ochrony serwisu.
Nowoczesne systemy weryfikacji oraz ograniczenia CAPTCHA
Współczesne systemy nie zawsze wymagają przepisywania znaków lub wybierania obrazków. Mogą analizować sygnały pochodzące z przeglądarki i przebieg sesji, a następnie oceniać prawdopodobieństwo, że użytkownik jest człowiekiem. Jeżeli ryzyko jest niewielkie, weryfikacja może odbyć się praktycznie niezauważalnie. Dopiero przy bardziej podejrzanej aktywności system może poprosić o dodatkowe działanie. Nowsze rozwiązania antybotowe starają się w ten sposób ograniczać liczbę uciążliwych testów.
Jednym z najbardziej rozpoznawalnych systemów tego rodzaju jest Google reCAPTCHA. Istnieją również alternatywy, takie jak Cloudflare Turnstile. Ten drugi może wykonywać w tle niewielkie testy i analizować sygnały z przeglądarki, a w razie potrzeby wyświetlić użytkownikowi prostą interakcję. Niezależnie od konkretnego rozwiązania rezultat weryfikacji jest zwykle przekazywany do serwera, który sprawdza jego poprawność przed zaakceptowaniem chronionej operacji.
CAPTCHA ma też ograniczenia. Test może być niewygodny na małym ekranie smartfona, a nieczytelne znaki lub obrazy mogą utrudniać korzystanie z serwisu. Szczególne znaczenie ma dostępność dla osób z niepełnosprawnościami wzroku, słuchu lub motoryki. Z tego powodu stosuje się alternatywne metody weryfikacji, a nowsze systemy dążą do ograniczenia liczby zadań wymagających aktywnej reakcji użytkownika. Mechanizm służy przede wszystkim właścicielowi witryny do ograniczania ruchu generowanego przez boty i nie potwierdza wiarygodności samego serwisu.