Nazaj na blog
Tehnika Objavljeno 27.08.2026 6 min branja

CAPTCHA je tam – a ne ščiti ničesar

Viden gradnik reCAPTCHA, hCaptcha ali Turnstile malo pove o tem, ali je obrazec zaščiten. Tu so tipične napačne nastavitve in kako v nekaj minutah preverite svoje obrazce.

Veliko lastnikov spletnih mest kontaktnemu obrazcu doda CAPTCHA, vidi, da se pojavi majhna značka ali potrditveno polje, in težavo z neželeno pošto šteje za rešeno. Potem pa smeti še naprej prihajajo. Pogosto je sama CAPTCHA v redu – le povezana ni z ničimer, kar bi lahko ustavilo robota. Ta prispevek opisuje tipične načine, kako reCAPTCHA, hCaptcha in Cloudflare Turnstile postanejo okras, in kako preverite svoje obrazce.

Kje se zaščita dejansko zgodi

Vse tri storitve delujejo po istem načelu. Skripta v brskalniku izvede svoja preverjanja in obrazcu preda žeton – kratek niz, ki pravi »ta obiskovalec je opravil«. Žeton z oddajo obrazca potuje na Vaš strežnik. Šele tam se zgodi prava odločitev: Vaš strežnik pošlje žeton skupaj s skrivnim ključem ponudniku in dobi odgovor – uspeh ali neuspeh, pri reCAPTCHA v3 pa tudi oceno. Če kateri koli člen te verige manjka, je gradnik še vedno videti povsem običajno, robot, ki pošilja neposredno na Vašo obdelavo obrazca, pa gre naravnost skozi.

Veriga, od katere je odvisna CAPTCHA
1Skripta se naloži
Skripta ponudnika je naložena in na strani z obrazcem sme teči.
2Žeton je izdan
Brskalnik prejme kratkoživ žeton, ki ga je mogoče uporabiti le enkrat.
3Žeton je oddan
Žeton se skupaj s polji obrazca pošlje na strežnik.
4Strežnik preveri
Vaš strežnik žeton preveri pri ponudniku s skrivnim ključem.
5Strežnik odloči
Oddaja je zavrnjena, razen če je odgovor pozitiven (in je pri v3 ocena dovolj visoka).
Zaščita obstaja le, če deluje vsak korak – odločilni pa se zgodijo na strežniku, zunaj pogleda.

Testni ključ, ki spusti vse skozi

Google, hCaptcha in Cloudflare objavljajo posebne testne ključe, da lahko razvijalci izvajajo avtomatizirane teste brez reševanja ugank. Z ustrezno testno skrivnostjo preverjanje vedno uspe – to je ves njihov namen. Namenjeni so lokalnim in testnim okoljem, vendar redno preživijo selitev v produkcijo: razvijalec jih med gradnjo prilepi, spletno mesto gre v živo in nihče jih ne zamenja. reCAPTCHA v gradniku vsaj prikaže obvestilo, da je namenjena le testiranju, a pri nevidni nastavitvi skoraj nihče ne pogleda. Če sta v živo testni ključ spletnega mesta in testna skrivnost, gre skozi vsaka oddaja, ne glede na to, ali prihaja od človeka ali robota; če je testni le ključ spletnega mesta, preverjanje namesto tega ne uspe in prava sporočila so lahko zavrnjena.

Žeton, ki ga nihče ne preveri

Druga klasika je strežnik, ki ponudnika nikoli ne vpraša. Gradnik teče, žeton se ustvari in odda, nato pa ga obdelava obrazca preprosto prezre. Tipični viri so ročno napisani obrazci, kopirani izrezki, ki pokrivajo le stran brskalnika, in napol dokončane nastavitve vtičnikov. Bližnji sorodnik: strežnik storitev za preverjanje sicer pokliče, vendar preveri le, ali je zahteva uspela, ne pa, kaj pravi odgovor. Ali pa je prag ocene za reCAPTCHA v3 nastavljen na 0, kar sprejme vsako oceno, ki jo storitev lahko vrne. Nekatere obdelave tudi »odpovejo odprto«: če žeton manjka ali preverjanje ne uspe, sporočilo vseeno sprejmejo – robot pa žeton preprosto izpusti.

Ko se gradnik nikoli zares ne naloži

Druge napačne nastavitve namesto tega pokvarijo stran brskalnika. Če ključ spletnega mesta ni registriran za domeno – tipično po selitvi iz testnega okolja v produkcijo, spremembi domene ali novi poddomeni – ponudnik zavrne izdajo žetonov in v gradniku ali konzoli brskalnika prikaže napako. Po zamenjavi teme ali posodobitvi vtičnika so lahko oznake gradnika še vedno na strani, skripte, ki ga oživi, pa ni več. Orodje za privolitev v piškotke ima lahko enak učinek, če skripto CAPTCHA blokira, dokler obiskovalec ne privoli. Kaj se zgodi nato, je odvisno od strežnika: če vztraja pri veljavnem žetonu, pravi obiskovalci ne morejo več pošiljati sporočil in izgubljenih povpraševanj nihče ne opazi; če ne vztraja, roboti prosto prehajajo.

Dva primera je lahko spregledati. Pri reCAPTCHA v3 značka v kotu kaže le, da je skripta naložena nekje na strani – morda s temo ali drugim vtičnikom – medtem ko je integracija v samem vtičniku za obrazce izklopljena. Vtičniki za predpomnjenje pa lahko stran shranijo skupaj z žetonom, vdelanim v HTML. Žetoni CAPTCHA veljajo le nekaj minut in jih je mogoče preveriti le enkrat, zato predpomnjen žeton za prave obiskovalce ne uspe; mamljiv »popravek«, da se preverjanje izklopi, pa tiho odstrani zaščito.

Videz proti resničnosti
Kaj vidite
  • Gradnik prikazuje obvestilo »samo za namene testiranja«
  • Značka v3 je v kotu
  • Gradnik se prikaže in vrne žeton
  • Neželena pošta je prenehala – a tudi prava povpraševanja
Kaj se morda dogaja
  • V uporabi so javni testni ključi in vsako preverjanje uspe
  • Integracija reCAPTCHA v vtičniku za obrazce je izklopljena
  • Strežnik žetona nikoli ne pošlje v preverjanje ali prezre rezultat
  • Ključ spletnega mesta ni registriran za domeno ali pa so predpomnjeni žetoni potekli

Kratko samopreverjanje

  1. 1Stran z obrazcem odprite v zasebnem oknu, odprite razvijalska orodja brskalnika in v konzoli poiščite napake skripte CAPTCHA.
  2. 2Preverite, ali se gradnik dejansko prikaže – enkrat pred sprejetjem pasice za piškotke in enkrat po njem – in da obrazca ni mogoče poslati, dokler manjka.
  3. 3V skrbniški konzoli ponudnika preverite, ali ključ spletnega mesta navaja Vašo živo domeno (vključno z različicami, kot je www), in ali se ključi v Vašem vtičniku za obrazce ali kodi z njim ujemajo – ne ključi iz dokumentacije ali testne nastavitve.
  4. 4V nastavitvah vtičnika za obrazce se prepričajte, da je integracija CAPTCHA omogočena za ta določeni obrazec; pri reCAPTCHA v3 preverite, ali je prag ocene nad 0.
  5. 5Če imate dostop do kode, poiščite preverjanje na strežniku in preverite, ali oddajo zavrne, ko je odgovor negativen ali žeton manjka.
  6. 6Stran z obrazcem izključite iz predpomnjenja celotne strani ali poskrbite, da se žeton v brskalniku ustvari na novo.
  7. 7Pošljite pravo testno sporočilo in preverite, ali prispe; preverjanje ponovite po spremembah teme, vtičnikov ali orodja za privolitev.
Kaj zunanje preverjanje vidi in česa ne
Testni ključi, oznake gradnika brez skripte, napake v konzoli in blokirane skripte so vidni od zunaj – brezplačno preverjanje na formexposed.com išče prav te znake, ne da bi kar koli oddalo. Ali Vaš strežnik žeton res preveri, na strani ni vidno; to se pokaže le v kodi Vašega strežnika ali pri pravi oddaji.

CAPTCHA je en sloj, ne celotna zaščita. V kombinaciji s past-poljem, preverjanjem časa in filtriranjem na strežniku napačna nastavitev na enem mestu ne pusti obrazca na stežaj odprtega. Če želite hitro sliko o tem, kje so Vaši obrazci, vnesite svojo domeno na formexposed.com – poročilo pokaže, ali so deli Vaše nastavitve CAPTCHA, ki so vidni od zunaj, v redu.