Turnstile թե reCAPTCHA․ «անտեսանելի» ստուգումը վերջնական պաշտպանություն չէ

|Հեղինակ: QUASA-ի խմբագրական թիմ|5 րոպե ընթերցանություն
Turnstile թե reCAPTCHA․ «անտեսանելի» ստուգումը վերջնական պաշտպանություն չէ

Cloudflare Turnstile-ն ու Google reCAPTCHA-ն ընտրելիս վճռորոշը checkbox-ի առկայությունը չէ։ Turnstile-ը հարմար է, երբ ուզում եք հնարավորինս քիչ ընդհատել այցելուին և ստուգումը կիրառել նաև առանց Cloudflare CDN-ի։ reCAPTCHA v3-ը հարմար է, երբ կայքն արդեն կարող է ռիսկի գնահատականին համապատասխան տարբեր որոշումներ ընդունել։ Երկու դեպքում էլ ստուգման նշանը պետք է վավերացվի սերվերում, իսկ կրկնվող չարաշահումը զսպվի առանձին կանոններով։

«Անտեսանելի» ռեժիմը վերաբերում է այցելուի փորձառությանը, ոչ թե պաշտպանության անխոցելիությանը։ Turnstile-ի աննկատ աշխատանքն ու reCAPTCHA-ի գնահատականը տարբեր ազդանշաններ են տալիս, իսկ վճարովի լուծիչների և զննարկչային գործակալների փորձերը ցույց են տալիս, որ ստուգումն ինքնուրույն վերջնական արգելք չէ։ Որոշման հիմքը պետք է լինեն ձեր ձևի հասանելիությունը, տվյալների մշակման պայմանները և այն, թե կայքն ինչ է անում ստուգման արդյունքից հետո։

Այցելուն ի՞նչ է տեսնում

Cloudflare-ի Turnstile-ի պաշտոնական նկարագրությունը տարբերակում է Managed, Non-interactive և Invisible ռեժիմները. Managed-ը կարող է ըստ ռիսկի ցուցադրել checkbox, մյուսները այցելուի գործողություն չեն պահանջում։ Նույն էջում նշվում է, որ ծառայությունն աշխատում է առանց Cloudflare CDN-ի, և Turnstile-ը համապատասխանում է WCAG 2.2 AA-ին։ Այս ընտրության համար կայքի ամբողջ տրաֆիկը Cloudflare-ով անցկացնելու անհրաժեշտություն չկա։

Google-ի reCAPTCHA-ի տարբերակների ուղեցույցը տարանջատում է v2-ի checkbox-ը, Invisible v2-ը և v3-ը։ Invisible v2-ը չի պահանջում checkbox սեղմել, սակայն կասկածելի այցելուին կարող է տեսանելի առաջադրանք առաջարկել։ v3-ը առանց նման առաջադրանքի վերադարձնում է գնահատական. կայքը կարող է դրա հիման վրա թույլ տալ գործողությունը, պահանջել լրացուցիչ հաստատում կամ սահմանափակել հարցումը։ Հետևաբար նույն «անտեսանելի» բառով նկարագրվող տարբերակները նույն վարքը չունեն։

Տվյալներն ու գաղտնիության ծանուցումը

reCAPTCHA-ի cookie-ի և Turnstile-ի ստուգման ազդանշանների տարբերությունը՝ կայքի ձևի տվյալներից առանձին

Turnstile-ը զննարկչում ստուգում է միջավայրի ազդանշանները, այդ թվում՝ JavaScript-ի աշխատանքը և հասանելի վեբ հնարավորությունները։ Այն անվտանգության ստուգման համար անհրաժեշտ տվյալներ է մշակում և չի կարդում ձևի դաշտերի բովանդակությունը։ Սա զրոյական տվյալամշակում չի նշանակում. այցելուների համար նախատեսված ծանուցումը պետք է արտացոլի կայքում իրականում միացված գործառույթները, հատկապես եթե օգտագործվում են լրացուցիչ կարգավորումներ։

Google Cloud-ի reCAPTCHA-ի հարցուպատասխանը նկարագրում է ռիսկի վերլուծության համար անհրաժեշտ _GRECAPTCHA cookie-ն և կայքի սեփականատիրոջ՝ տվյալների մշակման նպատակները սահմանելու դերը։ Այցելուին տրվող տեղեկացման մեջ իմաստ ունի գրել անվտանգության և չարաշահման կանխարգելման նպատակը, ինչպես նաև տվյալ կայքում գործարկվող ռեժիմը։ Եթե reCAPTCHA-ի նշանը թաքցվում է, նույն ուղեցույցը պահանջում է կայքում հայտնել ծառայության կիրառության մասին. տեսանելի նշանի բացակայությունը չի վերացնում տեղեկացնելու անհրաժեշտությունը։

Հասանելիությունը որոշվում է ամբողջ ձևով

Turnstile-ի WCAG համապատասխանությունն ինքնին չի երաշխավորում գրանցման կամ վճարման ամբողջ հոսքի հասանելիությունը։ Կայքի սեփական ձևը նույնպես պետք է աշխատի ստեղնաշարով, սխալը պետք է հասկանալի լինի, իսկ ձախողված ստուգումից հետո պետք է լինի կրկնելու ուղի։ Եթե ստուգման բաղադրիչը չի բեռնվում, լուռ մերժումը խանգարում է օրինական այցելուին՝ անկախ նրանից, թե սկզբում checkbox կար։ Այս մասը որոշվում է կայքի իրականացմամբ, ոչ թե ծառայության անվան ընտրությամբ։

Գնահատականով աշխատող reCAPTCHA v3-ի դեպքում այցելուի համար որոշիչը ցածր գնահատականին հաջորդող գործողությունն է։ Եթե համակարգը անմիջապես փակում է հաշվի ստեղծումը և չի առաջարկում այլ հաստատում, անտեսանելի ստուգումը պարզապես անտեսանելի մերժում է դառնում։ Ընտրությունը համեմատելիս նույն ձևը փորձարկեք ստեղնաշարով և աջակցող տեխնոլոգիայով, ինչպես նաև դանդաղ կապի ու ստուգման սխալի պայմաններում։ Այդ փորձարկումը վերաբերում է ձեր ամբողջ հոսքին, ոչ միայն առանձին բաղադրիչի հարմարավետությանը։

Ինչ է անում սերվերը ստուգման նշանի հետ

Turnstile-ի նշանը սերվերում ստուգվում է, իսկ նույն նշանի կրկնակի օգտագործումը մերժվում է

Զննարկիչում ստացված նշանը ինքնուրույն թույլտվություն չէ։ Cloudflare-ի Siteverify-ի հրահանգը պահանջում է Turnstile-ի նշանը վավերացնել սերվերում. այն մեկանգամյա է և ուժի մեջ է հինգ րոպե։ Առանց այդ հարցման հարձակվողը կարող է ձևի մշակման հասցեին կամայական տող ուղարկել՝ շրջանցելով ստուգման բաղադրիչը։ reCAPTCHA-ի դեպքում ևս կայքի սերվերն է նշանը փոխանցում ծառայության ստուգման API-ին և որոշում՝ կատարել պաշտպանվող գործողությունը, թե ոչ։

Վավերացման դրական պատասխանից հետո համեմատեք նաև վերադարձված կայքի հասցեն սպասվող հասցեի հետ, իսկ գործողության նույնացուցիչը՝ այն գործողության հետ, որի համար նշանը տրվել է, եթե տվյալ ինտեգրումն այդ դաշտն օգտագործում է։ Նշանը գաղտնի բանալիով ստուգեք միայն սերվերում. գաղտնի բանալին զննարկչին տրամադրելը խախտում է ամբողջ մեխանիզմը։ Ժամկետանց կամ արդեն օգտագործված նշանի համար տվեք նոր ստուգման հնարավորություն և թույլ մի տվեք, որ նույն ներկայացումը կատարի գործողությունը։ Այս քայլերը հատկապես կարևոր են, երբ նույն կայքում կան մուտքի, գրանցման և հաշվի վերականգնման տարբեր հոսքեր։

Ինչ են փոխում վճարովի լուծիչներն ու գործակալները

Վճարովի լուծիչների փորձերում reCAPTCHA-ի տեսանելի առաջադրանքների շրջանցումն ու գնահատականով ստուգման տարբերությունը

Broken Gates հետազոտությունը փորձարկել է յոթ վճարովի լուծող ծառայություն և վեց զննարկչային գործակալ՝ hCaptcha-ի, reCAPTCHA-ի ու Turnstile-ի տարբեր կարգավորումների դեմ. վճարովի լուծիչների միջին հաջողությունը reCAPTCHA v3-ի դեպքում կազմել է 23%, մինչդեռ դրանց աջակցած Turnstile կարգավորումների փորձերում այն հասել է 100%-ի։ Տեսանելի առաջադրանքների լուծումը նույնպես կարելի էր փոխանցել արտաքին ծառայության։ Սրանք փորձարարական միջավայրերի արդյունքներ են և չեն տալիս հայկական որևէ կայքի համար պատրաստի շրջանցման տոկոս։

Հետազոտության կարևոր տարբերակումը շրջանցման եղանակն է։ reCAPTCHA v3-ի գնահատականը կախված էր զննարկչի միջավայրից և կուտակված վստահության ազդանշաններից. նման գործողություններ կատարող գործակալները տարբեր արդյունքներ էին ստանում, երբ աշխատում էին տարբեր միջավայրերում։ Turnstile-ի որոշ կարգավորումներ նույնպես շրջանցվել են ավտոմատ գործակալներով։ Ուրեմն վավեր նշանը հաստատում է միայն տվյալ ստուգման հաջողությունը, ոչ թե հաշվի օրինականությունը կամ վճարման անվտանգությունը։

Ընտրության և լրացուցիչ պաշտպանության ստուգաթերթ

Եթե առաջնայինը այցելուի նվազագույն ընդհատումն է և Cloudflare CDN-ի հետ կապ չեք ցանկանում, Turnstile-ը տրամաբանական մեկնակետ է։ Եթե կայքը պատրաստ է գնահատականը կապել տարբեր որոշումների հետ, դիտարկեք reCAPTCHA v3-ը։ Տեսանելի առաջադրանքով v2-ը կարող է տեղավորվել այն հոսքում, որտեղ լրացուցիչ քայլն ընդունելի է, սակայն վճարովի լուծիչների փորձերը պատճառ են այն չհամարելու ինքնաբավ պատնեշ։ Վերջնական ընտրությունը կատարեք ձեր ձևի ձախողումների և չարաշահման պատկերի հիման վրա։

  • Յուրաքանչյուր պաշտպանվող գործողության համար սերվերում ստուգեք նշանը և մերժեք անվավեր կամ կրկնված պատասխանը։
  • Սահմանափակեք կրկնվող հարցումները՝ առանձին շեմերով մուտքի, գրանցման և հաշվի վերականգնման համար։
  • Բարձր ռիսկի գործողության դեպքում պահանջեք լրացուցիչ հաստատում՝ անկախ CAPTCHA-ի հաջող պատասխանից։
  • Հետևեք և՛ չարաշահման դեպքերին, և՛ օրինական այցելուների չավարտված ձևերին. մերժումների նվազումը միայնակ բավարար չափանիշ չէ։
  • Ստուգեք ստեղնաշարով անցումը, ձախողման հաղորդագրությունը և գաղտնիության ծանուցման համապատասխանությունը միացված ռեժիմին։

Կարդացեք նաև:

Կիսվել:

Բաժանորդագրվեք մեր տեղեկագրին

Ստացեք Web3-ի, ԱԲ-ի և կրիպտոյի վերջին լուրերն անմիջապես ձեր էլ. փոստին։

0