RS57512B1 - Razlikovanje stvarnih korisnika od botova, ocr sistema i učešća treće strane prilikom captcha provere - Google Patents

Razlikovanje stvarnih korisnika od botova, ocr sistema i učešća treće strane prilikom captcha provere

Info

Publication number
RS57512B1
RS57512B1 RS20180837A RSP20180837A RS57512B1 RS 57512 B1 RS57512 B1 RS 57512B1 RS 20180837 A RS20180837 A RS 20180837A RS P20180837 A RSP20180837 A RS P20180837A RS 57512 B1 RS57512 B1 RS 57512B1
Authority
RS
Serbia
Prior art keywords
captcha
user
check
string
characters
Prior art date
Application number
RS20180837A
Other languages
English (en)
Inventor
Shay Rapaport
Erez Azaria
Omri Schwartz
Original Assignee
Fireblade Holdings Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fireblade Holdings Llc filed Critical Fireblade Holdings Llc
Publication of RS57512B1 publication Critical patent/RS57512B1/sr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2133Verifying human interaction, e.g., Captcha
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/144Detection or countermeasures against botnets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)

Description

Opis
OBLAST TEHNIKE
Predmetni pronalazak se odnosi na CAPTCHA izazove namenjene da spreče robotizovanu pretragu Interneta i popunjavanje i podnošenje formi, a posebno se odnosi na detektovanje opštih načina za prevazilaženje CAPTCHA izazova.
RAZMATRANJE POSTOJEĆEG STANJA TEHNIKE
CAPTCHA su računarski generisani testovi koje ljudi lako rešavaju a na koje, u najvećem broju slučajeva, kompjuteri ne uspevaju da daju tačne odgovore. Tipična implementacija ovoga jeste računarski generisana slika slova i brojeva koji mogu biti deformisani i u pozadini delimično sadržati vizuelni „šum“. Od korisnika se zahteva da unese niz karaktera koji je prikazan na slici, pri čemu procedura podrazumeva da ljudi mogu pročitati ove slike a računari ne. Ovi testovi su namenjeni verifikaciji prisustva stvarne osobe kao krajnjeg korisnika u interakciji koja se izvršava na računarskoj mreži.
Korišćenje automatizovanih alata poznatih kao „botovi“ postala je uobičajena praksa na Internetu kada je u pitanju izvršavanje ponavljajućih zadataka i obmanjivanje mrežnih (web) aplikacija. Repetitivni zadaci mogu podrazumevati popunjavanje i podnošenje formi, kao i slanje ponovljenih zahteva za otvaranjem stranica i namenjeni su za kreiranje korisničkih naloga, prijavljivanje na postojeće naloge, unos sadržaja na forme sajtova na mreži, prikupljanje podataka od sajtova na mreži a, generalno, za zloupotrebu mrežnih platformi i njihovih sistemskih resursa. Ove aktivnosti stvaraju komercijalne vrednosti onima koji ih sprovode, dok prema mnogim aspektima u značajnoj meri ometaju rad sistema i obavljanje posla onih koje zloupotrebljavaju. CAPTCHA provere su razvijene radi sprečavanja ovakvih zloupotreba utvrđivanjem da li je krajnji korisnik čovek ili mašina. One su postale ustaljena praksa pri korišćenju sajtova na mreži kako bi se sprečile automatizovane zloupotrebe poput tzv. „spamovanja“ i sličnih.
Ipak, obzirom na učestalost CAPTCHA provera, one su privukle pažnju osoba koje se bave masovnim slanjem e-mail poruka (tzv. „spameri“), kompanija i pojedinačnih korisnika koji žele da prevare ili zaobiđu CAPTCHA provere kako bi omogućili sprovođenje svojih zlonamernih aktivnosti. Postoje dva poznata načina za varanje ili zaobilaženje CAPTCHA provera. Prvi se zasniva na korišćenju naprednih sistema za optičko prepoznavanje karaktera (OCR – Optical Code Recognition). OCR sistemi mogu biti programirani da identifikuju deformisane karaktere koje koriste određene CAPTCHA provere. Automatizovana skripta (tzv. „bot“) koji koristi OCR sistem će omogućiti dešifrovanje CAPTCHA provere a zatim i unos niza karaktera u polje forme u koje je potrebno uneti rešenje CAPTCHA provere.
Drugi način se zasniva na prosleđivanju CAPTCHA provere trećoj strani na rešavanje od strane čoveka. Pod trećom stranom se misli na entitet koji nije klijent koji obavlja interakciju sa mrežnim serverom. Komercijalne kompanije koje se bave rešavanje CAPCHA provera (poznate i kao CAPTCHA farme) naplaćuju i do svega 0,50 dolara za rešavanje 1000 CAPTCHA provera. Kada bot naiđe na CAPTCHA proveru, on će u tipičnom slučaju preuzeti CAPTCHA sliku i proslediti je ka CAPTCHA farmi (putem aplikativnog programskog interfejsa tj. API-a), gde će čovek izvršiti dešifrovanje slike i poslati rezultujući niz karaktera nazad botu kako bi ga ovaj uneo na formu i uspešno prošao test. U nekim slučajevima se za privlačenje korisnika koriste sajtovi sa velikim saobraćajem, kao što su oni koji sadrže serijske brojeve softvera ili sadržaj za odrasle, gde se od nesvesnih korisnika kao preduslov za pristupanje sadržaju koji im je potreban traži rešavanje CAPTCHA izazova. CAPTCHA izazov je u ovom slučaju prosleđen od strane bota koji zloupotrebljava drugu platformu u čemu mu pomažu ovi korisnici.
Sajtovi na mreži koji primete automatizovanu aktivnost koja prolazi njihovu CAPTCHA proveru će, u tipičnom slučaju, promeniti varijantu primenjene CAPTCHA provere. Ovo će bar na kratko onemogućiti primenu OCR sistema za rešavanje CAPTCHA provera obzirom da oni zavise od vizuelnih karakteristika provere prilikom njenog rešavanja. Ipak, ovo ne može pomoći ukoliko se za rešavanje koristi treća strana odnosno ukoliko su u rešavanje izazova uključeni ljudi, pošto tip CAPTCHA provere nema uticaja na njih: sve dok je moguće da postavljeni zadatak bude rešen od strane čoveka, izazovi će biti rešavani. Ovo takođe daje odgovor na pitanje zbog čega CAPTCHA farme postaju sve popularnije uprkos tome što podrazumevaju novčane izdatke, kao i zbog čega OCR sistemi postaju sve manje poželjni kod spamera.
U želji da se spreči primena OCR sistema na rešavanje CAPTCHA izazova, zadaci postaju sve teži i teži. Karakteri su u tipičnom slučaju prikazani kao zamućeni, iskrivljeni i u mnogim slučajevima preklapaju jedan drugog. Konačno, mnogi CAPTCHA izazovi postaju previše teški za rešavanje čak i za ljude. Oni kvare korisničko iskustvo pri korišćenju i u nekim slučajevima čak i plaše i rasteruju korisnike. Ove teške CAPTCHA provere koje su otporne na rešavanje primenom OCR sistema ne uspevaju da spreče rešavanje izazova od treće strane (tj. prosleđivanje), tako da uz veoma male troškove bivaju rešene od strane spamera.
IZLAGANJE SUŠTINE PRONALASKA
Primeri izvođenja predmetne tehnike opisuju postupak i sisteme za obezbeđivanje automatizovanog javnog Tjuringovog testa za sistem klijenta. Postupak podrazumeva obezbeđivanje slike sa većim brojem slučajnih karaktera, kao i obezbeđivanje kôda za pretraživač klijenta, pri čemu je kôd za pretraživač klijenta prilagođen da ograniči prikaz slike isključivo na njen unapred određen deo. Postupak dalje sadrži određivanje odgovora klijenta na prijem unapred određenog dela navedene slike.
Drugi primeri izvođenja predmetne tehnike dodatno podrazumevaju postupak selektivnog podvrgavanja korisnika automatizovanom Tjuringovom testu kao odgovora na komunikaciju primljenu od korisnika. Postupak podrazumeva proveru postojanja identifikatora korisnika. Postupak dodatno podrazumeva verifikaciju da, u slučaju kada je identifikator korisnika dostavljen, primljeni identifikator nije ukraden. U slučaju kada identifikator nije dostavljen, postupak dodeljuje korisniku identifikator korisnika. Dodatno, postupak podrazumeva prezentovanje automatizovanog javnog Tjuringovog testa korisniku ukoliko nije zadovoljen unapred određeni skup kriterijuma. Dodatno, postupak podrazumeva dobijanje i čuvanje analize odgovora korisnika na automatizovane javne Tjuringove testove. Primeri stanja tehnike iz predmetne oblasti tehnike su opisani u dokumentima US2009/113294 A1 i WO2010/111169 A1. Pronalazak je definisan nezavisnim zahtevima. Dodatna izvođenja su opisana zavisnim zahtevima.
KRATAK OPIS SLIKA NACRTA
Radi boljeg razumevanja izvođenja pronalaska i u cilju prikazivanja kako se ista mogu realizovati u praksi, opis će se pozivati, isključivo u vidu primera, na pridružene slike nacrta na kojima slične oznake pozicija obeležavaju slične odgovarajuće elemente ili segmente.
Na pridruženim slikama nacrta:
Slika 1 prikazuje dijagram toka koji, u skladu sa aspektom predmetnog pronalaska, ilustruje funkcionalne interakcije između krajnjeg korisnika, mrežnog servera i Servera posvećenog pružanju CAPTCHA usluge.
Slika 2 prikazuje dijagram toka CAPTCHA Skupa pravila analize u skladu sa aspektom predmetnog pronalaska.
Slika 3 prikazuje dijagram toka u saglasnosti sa aspektom predmetnog pronalaska.
Slika 4 prikazuje mrežni sistem u saglasnosti sa primerom izvođenja predmetnog pronalaska.
DETALJNI OPIS PRONALASKA
Uz poseban osvrt na detalje sa slika, naglašava se da su posebnosti prikazane isključivo u vidu primera i ilustrativnog razmatranja prvenstvenih izvođenja predmetnog pronalaska, kao i da su predstavljene u cilju pružanja onog što se smatra najkorisnijim i najrazumljivijim opisom principa i konceptualnih aspekata pronalaska. U ovom smislu nije bilo pokušaja prikazivanja strukturnih detalja pronalaska u meri većoj od potrebne za fundamentalno razumevanje pronalaska, tako da opis zajedno sa slikama omogućava stručnjacima iz predmetne oblasti kako se pronalazak može realizovati u praksi u nekoliko oblika.
Pre davanja najmanje jednog detaljnog objašnjenja za najmanje jedno od izvođenja pronalaska, podrazumeva se da pronalazak u svojoj primeni nije ograničen isključivo na detalje konstrukcije i izvođenja komponenata koje su opisane u opisu koji sledi ili su ilustrovane na priloženim slikama. Pronalazak je primenljiv i na druga izvođenja ili se u praksi može izvesti na različite načine. Takođe je potrebno naglasiti da ovde upotrebljene termine i fraze ne treba smatrati ograničavajućim ni u kom smislu, već da su oni upotrebljeni isključivo radi opisivanja pronalaska.
Slika 1 prikazuje dijagram 10 toka koji uopšteno ilustruje način rada koji je opisan postupcima koji su detaljnije predstavljeni ispod, gde dijagram 10 toka daje pregled funkcionalnih interakcija između krajnjeg korisnika, mrežnog servera i Servera posvećenog pružanju CAPTCHA servisa (u daljem tekstu „Servisne Mašine“), gde sistemske komponente rade u saglasnosti sa predmetnim pronalaskom.
U koraku 12 se inicira CAPTCA sesija na strani mrežnog servera ili mrežne aplikacije. Servisna Mašina u koraku 14 ka mrežnom serveru ili mrežnoj aplikaciji vraća identifikaciju transakcije i kôd. U koraku 16 mrežni server ili mrežna aplikacija prosleđuje korisniku skriptu. Krajnji korisnik u koraku 18 prima skriptu i dobija stranicu sa ugrađenim kôdom i kreira iFrame dokument. U koraku 20 Servisna Mašina prima odgovor od krajnjeg korisnika i prima korisnički identifikator ili dodeljuje korisnički identifikator. Servisna Mašina u koraku 22 takođe dobija atribute korisničkog uređaja i u koraku 24 generiše slike i kôd.
U koraku 26 Servisna Mašina prosleđuje CAPTCHA kôd ka krajnjem korisniku. Krajnji korisnik u koraku 28 dobija CAPTCHA kôd, šalje svoj identifikator i zahteva CAPTCHA sliku. U koraku 30 Servisna Mašina prima zahtev korisnika i prosleđuje CAPTCHA sliku ka krajnjem korisniku. Uređaj na strani krajnjeg korisnika u koraku 32 delimično prikazuje sliku, evidentira događaje (tzv. „logovanje“) i podnosi formu koju prosleđuje mrežnom serveru ili mrežnoj aplikaciji. Mrežni server ili mrežna aplikacija u koraku 34 prima podatke koji su uneti na formu uključujući i CAPTCHA polja.
Mrežni server ili mrežna aplikacija, zatim, u koraku 36 izvršava upit ka Servisnoj Mašini kako bi se izvršila verifikacija CAPTCHA provere.
U koraku 38 Servisna Mašina prima evidentirane događaje i CAPTCHA unos od korisničkog uređaja. Servisna Mašina, zatim, u koraku 40 vrši Analizu unosa od strane korisnika, u koraku 42 vrši analizu korisničkih događaja, a u koraku 44 vrši analizu istorije korisničkog uređaja. Dobijeni rezultati CAPTCHA testa i upozorenja se u koraku 46 prosleđuju ka uređaju krajnjeg korisnika od strane Servisne Mašine. Uređaj krajnjeg korisnika u koraku 48 prima rezultat CAPTCHA testa i upozorenja prosleđena od strane Servisne Mašine i u koraku 50 reaguje u skladu sa tim na način koji će biti detaljnije opisan u nastavku teksta.
Prema primeru izvođenja predmetnog pronalaska, slika koja sadrži slučajni niz karaktera konvertovan u bit-mapu, može biti generisana od strane servera bilo da je u pitanju mrežni server koji opslužuje pretraživani sajt na mreži, bilo da je u pitanju server koji je posvećen obavljanju uloge Servisne Mašine. Slika može biti animirana, kao što su na primer animirane GIF slike, kako bi se „otežalo“ dešifrovanje niza karaktera pomoću OCR sistema. Animacija može biti izvršena pomoću, bez nametanja ograničenja, (i) debele vertikalne linije piksela koja kruži horizontalno preko niza tekstualnih karaktera, tako da je u svakom datom minutu najmanje jedan karakter najmanje delimično sakriven iza linije, ili (ii) horizontalna linija koja kruži gore i dole preko slike kako bi sakrila deo svih karaktera u bilo kom trenutku vremena.
Prema primeru izvođenja, krajnjem korisniku će biti prikazan samo unapred određeni deo CAPTCHA slike generisane od strane Servisne Mašine. U ovom cilju će Servisna Mašina najpre na slučajan način odrediti koji deo ukupne slike je potrebno prikazati (na primer karaktere 4 do 9 sa CAPTCHA slike koja sadrži 12 karaktera). Servisna Mašina će preračunati broj piksela koju je potrebno sakriti sa obe od ivica ukupne CAPTCHA slike i sačuvati sve generisane vrednosti, uključujući i: (i) ukupan CAPTCHA niz karaktera, (ii) deo niza karaktera koji će biti prikazan, i (iii) broj piksela koji je potrebno sakriti sa obe strane ukupne CAPTCHA slike.
Prema primeru izvođenja, u cilju proračuna širine
delova ukupne CAPTCHA slike koje je potrebno sakriti, može biti iskorišćen metod za kreiranje ukupne CAPTCHA slike i kreiranje slike ili slika delova čitavog niza karaktera koje nije potrebno prikazati. Na primer, ukoliko je ukupan niz karaktera
„abcdefgh12345“, a krajnjem korisniku je potrebno prikazati samo deo niza „fgh123“, server će kreirati jednu sliku niza karaktera „abcdefgh12345“, a zatim dve privremene slike – jednu sliku dela niza karaktera „abcde“ i jednu sliku dela niza karaktera „45“ korišćenjem istog tipa fonta i veličine. Poslednje dve slike će se iskoristiti za merenje njihovih širina što je moguće izvršiti na jednostavan način nakon njihovog slike generisanja, a vrednosti broja piksela koje je potrebno sakriti sa svake od strana ukupne slike će biti snimljene.
Prema primeru izvođenja, a u cilju sakrivanja delova ukupne CAPTCHA slike i prikazivanju samo odabranih karaktera, Servisna Mašina generiše kôd za stranu klijenta (tipično HTML, JavaScript i CSS), koji će biti prosleđen Internet pretraživaču na strani krajnjeg korisnika i koji će u sebi sadržati sliku. Broj piksela koje je potrebno sakriti sa obe strane može biti prosleđen u ovoj skripti u vidu numeričke vrednosti ili funkcije ili numeričkih funkcija koje generišu ovu vrednost. Skripta kada se obradi od strane pretraživača korisnika prikazuje sliku, ali sakriva karaktere koje nije potrebno prikazati. Takva skripta može, bez ograničavanja, generisati iFrame dokument sa atributima koji ga čine kraćim po dužini u odnosu na sliku kreiranu za potrebe provere. Slika može biti prezentovana unutar iFrame dokumenta i može biti uvučena na levu ili desnu stranu za unapred određeni broj piksela što će učiniti da samo željeni deo slike bude vidljiv. Na primer, a bez želje za postavljanjem ograničenja, uvlačenje slike na desnu ili na levu stranu može biti izvršeno pomoću atributa za definisanje stila kao što su CSS atributi left ili right, ili dodavanjem drugih generisanih slika unapred određene širine sa leve ili desne strane ukupne CAPTCHA slike.
Prema drugom primeru izvođenja, kada korisnik unese odgovor na CAPTCHA proveru, skup karaktera unet od strane korisnika će biti prosleđen do Servisne Mašine bilo direktno ili indirektno (na primer pomoću poziva web-servisa koji sadrži identifikator transakcije). Servisna Mašina će izvršiti Analizu unosa od strane korisnika čija je uloga donošenje odluke da li je odgovor na CAPTCHA proveru unet ispravno kao i da li postoje znaci koji ukazuju na prosleđivanje provere trećoj strani ili prevaru primenom automatizacije. Rezultati Analize unosa od strane korisnika se mogu konačno sačuvati kao jedna vrednost ili kao dve zasebne vrednosti – jednu koja ukazuje na analizu poklapanja nizova karaktera i drugu koja ukazuje da li je uočen pokušaj prevare prilikom rešavanja CAPTCHA izazova. U cilju povećanja razumljivosti objašnjenja, kada se koriste dve zasebne vrednosti, prva vrednost se identifikuje pomoću polja sa labelom stringMatch (poklapanje nizova karaktera), dok se druga vrednost identifikuje pomoću polja sa labelom fraudDetected (otkriven pokušaj zloupotrebe).
Kako bi se izvršila analiza unosa od strane korisnika, Servisna Mašina može uporediti niz karaktera unetih od strane korisnika kako sa delom niza karaktera koji je bilo potrebno prikazati, tako i sa ukupnim nizom karaktera generisanim za tekuću CAPTCHA transakciju, u saglasnosti sa skupom pravila za donošenje odluke, gde je skup pravila u saglasnosti sa dijagramom 60 toka prikazanim na Slici 2. Ukoliko se, u bloku 62 za odlučivanje, niz karaktera unetih od strane korisnika poklapa sa delom niza karaktera, to znači da je korisnik uneo vidljivi deo ukupne CAPTCHA slike i na ispravan način prošao test. U takvom slučaju se u koraku 64 polje stringMatch postavlja na vrednost „Prošao“. Ukoliko se niz karaktera ne poklapa ni sa jednim od sačuvanih nizova karaktera, tj. ni sa ukupnim nizom ni sa delom niza karaktera kreiranog za ovu transakciju, što znači da je korisnik pao na CAPTCHA testu, tako da će u bloku 65 polje stringMatch biti postavljeno na vrednost „Pao“ a da će postupak biti nastavljen u bloku 66 za odlučivanje. Ukoliko se u bloku 66 za odlučivanje proverom utvrdi da se niz karaktera unetih od strane korisnika poklapa sa ukupnim nizom karaktera (sadržanih na ukupnoj slici uključujući i skrivene karaktere), to znači da je, u koraku 68, došlo do prosleđivanja izazova pošto korisnik nije trebalo da vidi sakrivene delove ukupne CAPTCHA slike. Ovo ukazuje na to da je čitava slika prosleđena do mašine treće strane gde ju je korisnik posmatrao bez slojeva koji prekrivaju njene delove i da je, zato, uneo ukupan niz znakova. U takvim slučajevima će, u koraku 70, vrednost polja stringMatch ostati „Pao“, dok će polje fraudDetected biti postavljeno na vrednost „Prosleđivanje“ sa svoje podrazumevane vrednosti „OK“.
Na kraju Analize unosa od strane korisnika Servisna Mašina može sačuvati dobijeni rezultat (Prošao/Pao, Prosleđivanje/OK) sa korisničkim podacima i podacima o transakciji. Servisna Mašina može odgovoriti mrežnoj aplikaciji prosleđivanjem rezultata Analize unosa od strane korisnika, ili pre čuvanja rezultata i prosleđivanja odgovora ka mrežnoj aplikaciji može izvršiti dodatne analize kao što je detaljnije opisano ispod. Prema još jednom primeru izvođenja, predmetni pronalazak sadrži dodatna sredstva za identifikaciju slučajeva prosleđivanja provere. Obzirom da se za pokrivanje delova slike koriste skripte koje se izvršavaju na strani klijenta, poput HTML/CSS/JavaScript kôda, spameri mogu pokušati da trećoj strani proslede čitav relevantni kôd zajedno sa slikom kako bi se postigla situacija da je isti deo slike sakriven ili prikazan i na ekranu osobe koja rešava zadatak.
Ukoliko se za prikaz CAPTCHA koristi iFrame, unutar iFrame dokumenta može biti ugrađen JavaScript kôd kako bi se detektovalo prisustvo iFrame dokumenta i nadređenog (parent) dokumenta, i/ili kako bi se proverila veličina iFrame dokumenta i osiguralo da je on iste veličine kako je inicijalno i ubačen u kôd, i/ili kako bi se izvršio upit URL adresa iFrame dokumenta i njegovog nadređenog dokumenta kako bi se proverilo da li se oba pojavljuju na ispravnoj URL adresi mrežne aplikacije ili je potrebno otvoriti još jedan frejm za dokument i pokušati upit preko skripte koja se izvršava na strani klijenta kako bi se obezbedilo da je cross-scripting funkcionalnost dozvoljena i kako bi se utvrdilo da su CAPTCHA i mrežna aplikacija prikazane na istom domenu. Netačne URL adrese, nepostojanje iFrame dokumenta, nekorektne veze između nadređenog i podređenog dokumenta ili nemogućnost pristupa drugoj URL adresi na domenu mrežne aplikacije pomoću skripte mogu ukazivati na slučaj prosleđivanja trećoj strani. U slučaju takvog prosleđivanja, vrednost polja fraudDetected će biti promenjena na „Prosleđivanje“ sa svoje podrazumevane vrednosti „OK“.
Prema još jednom primeru izvođenja, predmetni pronalazak može sadržati još sredstava za detekciju prosleđivanja provere trećoj strani. Mrežna aplikacija može sadržati kôd koji će proveriti IP adrese korisnika u toku trajanja njihovih sesija i proslediti ih ka Servisnoj Mašini na početku CAPTCHA servisne sesije. Servisna Mašina može dalje uporediti IP adresu ili adrese sa onima koje su upotrebljene za popunjavanje CAPTCHA forme. Ukoliko je strana koja prezentuje CAPTCHA formu učitana sa IP adrese koja je različita od one sa koje je započeta korisnička sesija, kao i ukoliko se ne nalazi unutar istog opsega IP adresa ili geo-lokacije ili unutar istog identifikatora organizacije (preuzetog iz IP ’who-is’ upita), ovo je takođe dokaz postupka prosleđivanja provere trećoj strani. U slučaju takvog prosleđivanja, vrednost polja fraudDetected će biti promenjena na „Prosleđivanje“ sa podrazumevane vrednosti „OK“.
Prema još jednom primeru izvođenja, predmetni pronalazak može sadržati Analizu korisničkih događaja kako bi se otkrili automatizovani ili zlonamerni pokušaji
1
slanja podataka i rešavanja CAPTCHA provere. U cilju prikupljanja podataka za Analizu korisničkih događaja (user-events), kôd koji se izvršava na strani klijenta može sadržati proces za praćenje i logovanje događaja koji proverava da li je korisnik (i) zaista fokusiran na CAPTCHA tekstualno polje ili na neko od drugih polja forme (onFocus JavaScript događaj), (ii) da li je bilo klikova mišem, pokreta miša ili pritisnutih tastera za kretanje između polja, i (iii) ukoliko postoji korelisani niz detektovanih događaja pritiska na tastere kako bi se uneli podaci i da li postoji detektovani događaj sa miša ili tastature za podnošenje forme. Proces za praćenje i logovanje događaja će u logu beležiti događaje koji nastanu sa miša i tastature i može privremeno čuvati detektovane događaje. Čuvanje detektovanih događaja se može realizovati, bez želje za nametanjem ograničenja, na strani klijenta korišćenjem promenljivih unutar skripti, korišćenjem kolačića ili snimanjem na lokalnom uređaju za čuvanje podataka, ili alternativno na strani mrežnog servera pomoću Ajax skripti.
U tipičnom slučaju, a bez želje za nametanjem ograničenja, log će sadržati bilo koji tip događaja poput: (i) dobijanje ili gubljenje fokusa od strane elementa forme, (ii) bilo koju promenu vrednosti u polju forme i događaj podnošenja forme, i (iii) listu događaja sa miša i tastature koji su se dogodili pre svakog od takvih događaja na formi. Log događaja se prilikom podnošenja CAPTCHA forme na proveru može proslediti Servisnoj Mašini radi analize. Servisna Mašina može primeniti Skup pravila o korisničkim događajima kako bi se utvrdilo da li je CAPTCHA tekstualno polje ili bilo koje drugo polje sa forme popunjeno bez očekivanih korelisanih događaja sa tastature i/ili miša. Nedostatak očekivanih događaja može biti dokaz da je došlo do prosleđivanja trećoj strani i/ili do automatizovanog procesa. U takvim slučajevima automatizacije, vrednost polja fraudDetection će biti postavljena na „Automatizacija“ sa podrazumevane vrednosti „OK“.
Prema još jednom primeru izvođenja, navedeni Skup pravila o korisničkim događajima može biti konfigurisan kako bi se zadovoljio uslov postojanja događaja sa tastature ili miša, ili alternativno ukoliko je postojao najmanje jedan pritisak na taster ili događaj sa miša po svakom dobijanju fokusa na poljima forme ili po svakom gubljenju fokusa na poljima forme ili po svakoj promeni vrednosti u poljima forme ili po bilo kojoj njihovoj kombinaciji. Dodatno, Skup pravila o korisničkim događajima može biti postavljen tako da se provere pojedinačni pritisci na tastere tastature i uporede sa vrednostima prosleđenim kroz određena polja forme.
Prema još jednom primeru izvođenja, u cilju beleženja korisničke istorije Servisna Mašina može svakom od korisnika dodeliti po jedinstveni korisnički identifikator (u daljem tekstu „identifikator korisnika“ ili „oznaka korisnika“). Identifikator korisnika će biti poslat krajnjem korisniku kroz skriptu koja će ga sačuvati na mašini korisnika bilo kroz kolačić pretraživača, Flash kolačić (poznat i kao
„globalno skladište“), kao lokalnu vrednost u pretraživaču, kao keširani skript fajl koji sadrži identifikator u vidu vrednosti, ili kombinacijom navedenih metoda. Servisna Mašina će takođe dostaviti i skriptu koja će preuzeti identifikator korisnika iz pretraživača korisnika ukoliko on već poseduje takvu dodeljenu oznaku. Bilo koja informacija koja je prikupljena u toku CAPTCHA sesije može biti snimljena na način koji dozvoljava naknadnu rekonstrukciju podataka samo na osnovu identifikatora korisnika kao ključa.
Prema još jednom primeru izvođenja, u cilju identifikacije korisnika koji pokušava da izbegne označavanje brisanjem kolačića i pražnjenjem keša, a i u cilju omogućavanja Servisne Mašine da rekonstruiše istoriju korisnika, Servisna Mašina može sa uređaja krajnjeg korisnika prikupiti atribute uređaja i pretraživača koji su poznati pod zajedničkim nazivom „otisci prstiju uređaja“. Takvi otisci prstiju se prikupljaju kombinacijom kôda koji se izvršava na strani servera i kôda koji se izvršava na strani klijenta, kao što je demonstrirano na ’EFF.org’ i ’browserspy.com’ mrežnim sajtovima. Servisna Mašina će prosleđivati kôd ka pretraživaču krajnjeg korisnika i snimati potreban izlaz.
Ovi atributi mogu sadržati, bez nametanja ograničenja, tip pretraživača, tip operativnog sistema, rezoluciju ekrana, raspoložive fontove, broj verzije i build-a JavaScript-a, instalirane dodatke poput Flash-a i drugih kao i njihove verzije, dodatke pretraživača, razliku između vremena na mašini korisnika i serveru, verziju fleša, HTTP zaglavlje, TCP/IP stek, korišćenje proksija i slično. Kombinacija ovih atributa može kreirati jedinstveni otisak prstiju sa različitim nivoima preciznosti počev od jedan pa do nekoliko desetina hiljada, kao što je demonstrirano na EFF.org mrežnom sajtu. Ovi atributi će biti snimljeni zasebno ili kao jedan niz karaktera (poput heš vrednosti) zajedno sa bilo kojim sveže kreiranim identifikatorom korisnika tako da kada god nastane nov identifikator korisnika i bude snimljen na mašini korisnika, identifikator korisnika se takođe snima na Servisnoj Mašini zajedno sa ovim atributima uređaja na način koji dozvoljava kasniju rekonstrukciju atributa uređaja na osnovu identifikatora korisnika i obrnuto.
Prema još jednom primeru izvođenja, u cilju identifikacije korisnika koji se vraća, Servisna Mašina će najpre utvrditi da li je identifikator korisnika sveže nastao u toku tekuće sesije ili je u pitanju postojeći identifikator koji je preuzet od strane korisnika. Ukoliko je u pitanju postojeći identifikator (što znači da je korisnik započeo sesiju sa postojećim identifikatorom), Servisna Mašina će izvršiti pretragu u bazi na osnovu identifikatora korisnika i, ukoliko ga pronađe, iskoristiti ovaj identifikator korisnika za snimanje bilo kakvih informacija o trenutnoj sesiji. Ovaj identifikator korisnika može biti markiran oznakom „veteran“, što znači da je taj korisnik imao najmanje dve ili veći broj sesija korišćenjem istog identifikatora (što pokazuje da ovaj korisnik ne briše kolačiće i keš). Ukoliko korisnik ne poseduje identifikator koji je markiran oznakom
„veteran“ ili ukoliko prikupljeni identifikator nije pronađen u bazi, Servisna Mašina može pretražiti identifikatore korisnika na osnovu atributa uređaja. Atributi koji su u toku tekuće sesije prikupljeni od strane Servisne Mašine mogu biti upoređeni bilo sa svim drugim prethodno sačuvanim atributima uređaja, ili se alternativno mogu uporediti samo sa identifikatorima koji nisu markirani oznakom „veteran“, što znači da su u pitanju bilo novi korisnici ili korisnici za koje se veruje da brišu kolačiće i keš svog Internet pretraživača – potencijalno u cilju maskiranja svog identiteta. Ukoliko dođe do poklapanja, za ovu sesiju će se preuzeti i iskoristiti pronađeni identifikator korisnika.
Prema drugom primeru izvođenja, u cilju beleženja istorije korisnika, nakon kreiranja ili rekonstruisanja identifikatora korisnika, bilo koji događaji koji se dogode u trajanju CAPTCHA sesije mogu biti snimljeni zajedno sa identifikatorom korisnika na način koji će omogućiti da se naknadno rekonstruišu na osnovu identifikatora korisnika. Takvi događaji mogu biti vreme početka sesije, vreme odgovora korisnika, detalji sajta, rezultati Analize unosa od strane korisnika i rezultati Analize pokušaja prevare po sesiji. Prema primeru izvođenja, Servisna Mašina može izvršiti Analizu istorije korisnika u slučajevima kada je identifikator korisnika dostavljen od korisnika ili pronađen na osnovu pretrage na osnovu atributa uređaja. U cilju izvođenja Analize istorije korisnika, Servisna Mašina će koristiti identifikator korisnika da rekonstruiše sve ili podatke o skorijim sesijama za taj identifikator. Skorije sesije mogu podrazumevati ograničen broj skorijih sesija (kao što je na primer poslednjih 100
1
sesija) ili sve sesije koje su se desile u toku poslednjih nekoliko minuta ili časova. Servisna Mašina će, nakon prikupljanja istorije korisnika, primeniti na podatke skup pravila za analizu istorije kako bi se utvrdilo da li je korisnik u pitanju mogući spamer. Rezultati Analize istorije korisnika će biti prosleđeni mrežnoj aplikaciji zajedno sa Analizom unosa od strane korisnika.
Prema primeru izvođenja, skupo pravila za analizu istorije će utvrditi da je korisnik potencijalni spamer ukoliko je ispunjen jedan ili više od sledećih kriterijuma: (i) ukoliko korisnik poseduje veći broj od unapred definisanog broja CAPTCHA sesija u toku ograničenog vremena (mogu se proveravati različiti vremenski intervali, kao što je poslednji minut, poslednjih 10 minuta itd.); (ii) ukoliko korisnik poseduje veći broj od unapred određenog broja zapisa označenih sa „Prosleđivanje“, (iii) ukoliko korisnik poseduje veći broj od unapred određenog broja zapisa označenih sa
„Automatizacija“ ili (iv) ukoliko korisnik prekoračuje unapred određeni odnos zapisa označenih sa „Pao“ u odnosu na one označene sa „Prošao“.
Prema još jednom primeru izvođenja, Servisna Mašina može biti jedna ili više mašina (fizičkih ili virtuelnih) posvećenih isključivo pružanju naprednog CAPTCHA servisa. Servisna Mašina može prosleđivati klijentski kôd direktno krajnjem korisniku (pomoću iFrame) ili indirektno prosleđivanjem delova ili celog kôda i slika do mrežnog aplikativnog servera koji će ih dalje proslediti do krajnjih korisnika, ili poslati kôd do mrežnog servera koji će ga dalje poslati do svojih krajnjih korisnika. U tipičnom slučaju, a bez želje za nametanjem ograničenja, mrežni server će kreirati identifikator transakcije i zatražiti kôd od CAPTCHA servera korišćenjem identifikatora transakcije (preko HTTP/web-servisa).
Prema primeru izvođenja, Servisna Mašina sadrži samostalnu mašinu koja komunicira i sa mrežnom aplikacijom i sa krajnjim korisnikom. Mrežna aplikacija poziva Servisnu Mašinu kada je potreban CAPTCHA servis (u tipičnom slučaju pomoću web-servisa) i dobija identifikator transakcije zajedno sa klijentskim kôdom koji je potrebno ugraditi u stranu kako bi se prikazala Progresivna CAPTCHA provera. Kôd sadrži proces za praćenje i logovanje događaja potreban za izvođenje Analize korisničkih događaja, funkciju koja generiše iFrame objekat u kojem će biti prikazana CAPTCHA slika i polje forme u koje je potrebno uneti CAPTCHA vrednost. iFrame poziva URL na Servisnoj Mašini uz ugrađivanje identifikatora transakcije u URL. Servisna Mašina, po prijemu poziva od Internet pretraživača krajnjeg korisnika generiše CAPTCHA niz karaktera i CAPTCHA slike i vraća kôd koji se koristi za preuzimanje atributa uređaja od korisnikovog pretraživača, kôd koji poziva i prikazuje CAPTCHA slike sa sakrivenim delovima kako je opisano iznad i ukupnu CAPTCHA sliku. Kada je uneta CAPTCHA vrednost a forma podneta mrežnom aplikativnom serveru, mrežna aplikacija će izvršiti upit ka Servisnoj Mašini u vezi rezultata Analize, tipično pomoću web-servisa uz navođenje identifikatora transakcije u zahtevu.
Drugi primeri izvođenja predmetne tehnike podrazumevaju postupak prilagođen za detektovanje legitimnog krajnjeg-klijenta ili pretraživača i izostavljanje CAPTCHA provera za takve legitimne krajnje korisnike. Ipak, ukoliko postupak prepozna klijenta ili pretraživač kao automatizovanu skriptu ili spamera, CAPTCHA provera se ne izostavlja za takve krajnje klijente.
U saglasnosti sa predmetnim pronalaskom, (i) kôd i sva sredstva koja se koriste za odlučivanje da li je CAPTCHA proveru potrebno prikazati krajnjem klijentu i (ii) sav kôd i sredstva potrebna za komunikaciju sa mrežnom aplikacijom i/ili CAPTCHA softverom ili CAPTCHA servisom, mogu se nalaziti bilo na mrežnom serveru na kojem se nalazi sajt ili na nekom drugom serveru ili uređaju.
Poželjno, funkcije servera ili uređaja za komuniciranje sa krajnjim klijentom sajta bilo (i) direktno (na primer, pomoću iFrame poziva iz dokumenta koji potiče sa mrežnog servera), ili (ii) indirektno (na primer, prosleđivanjem kôda ili uputstava mrežnoj aplikaciji koja prosleđuje kôd svojim krajnjim klijentima. Takva komunikacija se može postići primenom bilo kog protokola, kao što je na primer web-servis ili bilo kom kombinacijom prethodnog. Server ili uređaj koji se koristi za određivanje da li je potrebno određenom krajnjem korisniku prikazati CAPTCHA proveru ili ne, u daljem tekstu će biti nazvan „Servisna Mašina“ dok će servis koji pruža Servisna Mašina u daljem tekstu biti nazvan „Uslovno izostavljanje CAPTCHA provere“.
U skladu sa tim, a prema Slici 2, opisan je dijagram 80 toka koji je u saglasnosti sa primerom izvođenja predmetne tehnike. Stoga, kada je krajnjem klijentu prikazana CAPTCHA provera na sajtu u kojem je integrisano uslovno izostavljanje CAPTCHA provere, Servisna Mašina će proveriti postojanje identifikatora korisnika na uređaju krajnjeg klijenta. Takav identifikator korisnika će biti potražen od strane klijentske
1
skripte prosleđene krajnjem klijentu u kolačiću pretraživača, lokalnom mestu za skladištenje pretraživača, Flash kolačiću (poznatom i kao „globalno skladište“) i keširanoj JavaScript strani kako bi se odredilo da li postoji identifikator korisnika u bloku 82 odlučivanja.
Ukoliko identifikator korisnika postoji, on će biti vraćen Servisnoj Mašini nakon čega postupak prelazi u blok 84 odlučivanja u kojem Servisna Mašina pretražuje bazu Servisne Mašine (SM bazu) tražeći uređaj krajnjeg klijenta. Ukoliko je uređaj krajnjeg klijenta naveden u SM bazi, postupak se nastavlja korakom 86 kako bi se iz SM baze preuzela istorija korisnika na osnovu identifikatora korisnika. Ukoliko su u SM bazi prisutni i dodatni detalji o uređaju krajnjeg klijenta (kao što je otisak prstiju uređaja, kao što je opisano ispod), Servisna Mašina u koraku 88 može porediti neke ili sve atribute tekućeg uređaja krajnjeg klijenta sa atributima sačuvanim uz identifikator korisnika prema skupu pravila iz SM baze, kako bi se verifikovalo da kolačić sa identifikatorom korisnika nije ukraden.
Ukoliko se u bloku 90 odlučivanja sumnja da je krajnji klijent spamer, u koraku 92 se vrši prikazivanje CAPTCHA provere. U suprotnom, ukoliko su atributi krajnjeg klijenta u redu, postupak se nastavlja korakom 94 gde se za ovog konkretnog krajnjeg klijenta izostavlja prikazivanje CAPTCHA provere. Ukoliko pretraga u SM bazi odredi da je uređaj krajnjeg klijenta nepoznat uređaja, tj. da uređaj krajnjeg klijenta (i) nema identifikator korisnika ili (ii) poseduje identifikator korisnika koji ne može biti pronađen ili verifikovan, Servisna Mašina će dodeliti jedinstveni identifikator korisnika uređaju krajnjeg korisnika i u koraku 96 postaviti identifikator krajnjeg korisnika na uređaj krajnjeg korisnika pomoću kolačića.
Prema shvatanju iz relevantnog stanja tehnike, kolačić može biti standardni kolačić Internet pretraživača, lokalni prostor za čuvanje podataka pretraživača, Flash kolačić (globalno skladište) ili keširani JavaScript fajl koji sadrži identifikator korisnika. Servisna Mašina može u koraku 98 prikupljati i atribute od uređaja krajnjeg korisnika potpomognuto kôdom koji se izvršava na strani klijenta. Takvi detalji, opšte poznati kao „otisak prsta uređaja“ mogu sadržati, bez želje za ograničavanjem, tip i verziju Internet pretraživača, tip i verziju operativnog sistema, tip i broj verzije i build-a JavaScript-a, postojeće fontove, HTTP zaglavlja, raspoloživa proširenja pretraživača i njihove verzije, raspoložive dodatke pretraživača (poput Acrobat Reader-a, Skype-a i
1
drugih). Ovi atributi će biti snimljeni sa novo-kreiranim identifikatorom korisnika sa više različitih namena kao što su: (i) verifikacija da dostavljeni identifikator korisnika pripada krajnjem klijentu i da nije ukraden (kao što je opisano iznad), ili (ii) prepoznavanje klijentskih uređaja koji se vraćaju a na kojima su uklonjeni kolačići i obrisan keš.
Prema primeru izvođenja, kada se krajnjem klijentu prikazuje CAPTCHA provera na sajtu na kojem je integrisano uslovno izostavljanje CAPTCHA provere, kada god dođe do iniciranja provere Servisna Mašina će biti obaveštena o tome (tipično pomoću web-servisa) i snimiće događaj za dati identifikator korisnika. Kada god korisnik unese i prosledi odgovor na prikazanu proveru, Servisna Mašina će preuzeti i snimiti analizu CAPTCHA provere.
Takva analiza se tipično izvršava od strane bilo kog CAPTCHA softvera ili servisa poređenjem CAPTCHA niza karaktera sa onim koji je uneo klijent i određivanjem da li je CAPTCHA test rešen uspešno ili neuspešno. Napredni CAPTCHA servisi mogu takođe detektovati znake pokušaja premošćavanja CAPTCHA provere, tipično pomoću OCR automatizacije ili rešavanja pomoću treće strane (poznato i kao „prosleđivanje CAPTCHA provere“). Ovi servisi mogu podrazumevati alternative koje prevazilaze binarno odlučivanje o uspehu ili neuspehu provere.
Ultimativno, server CAPTCHA servisa će, bilo od CAPTCHA softvera ili od mrežne aplikacije koja je prezentovala CAPTCHA proveru, dobiti poruku koja naznačava da li je CAPTCHA niz karaktera unet ispravno ili neispravno, ili da li je rešavanje CAPTCHA provere automatizovano ili prosleđeno trećoj strani. Rezultat ove analize će biti snimljen zajedno sa identifikatorom korisnika. Servisna Mašina će snimiti identifikator korisnika i rezultat analize. Dodatno, Servisna Mašina može prikupiti i snimiti detalje poput dobijenih atributa uređaja, URL CAPTCHA provere, naziv sajta i vreme i datum provere.
Kao posledica toga, kada mrežna aplikacija izvršava upit na Servisnoj Mašini i kada proverava da li je potrebno prikazati ili sakriti CAPTCHA proveru za identifikovanog krajnjeg klijenta koji poseduje identifikator korisnika, Servisna Mašina će u bloku 100 odlučivanja potražiti u SM bazi respektivni identifikator korisnika kako
1
bi odredila da li je postavljeno pravilo na osnovu istorije krajnjeg klijenta. Servisna Mašina može takođe prikupiti dodatne atribute o uređaju krajnjeg klijenta, kao što je opisano iznad, kako bi uporedila sve ili neke od njih sa atributima prikupljenim sa prvim zapisom sačuvanim prilikom dodele originalnog identifikatora korisnika identifikovanom krajnjem klijentu. Ukoliko ima poklapanja, Servisna Mašina će u koraku 102 preuzeti skup pravila za istoriju uređaja krajnjeg korisnika i primeniti ih na istoriju na osnovu čega će konačno odgovoriti da li je potrebno prikazati ili ne CAPTCHA proveru identifikovanom krajnjem klijentu.
Kao što je opisano u predmetnom pronalasku, informacije koje se koriste za određivanje da li je potrebno prikazati CAPTCHA proveru krajnjem klijentu sa zabeleženom istorijom su prvenstveno zasnovane na sledećim podacima iz istorije korisnika: (i) rezultatima analize uslova iz prethodnih CAPTCHA testova; (ii) odnosa između broja uspešno i neuspešno rešenih CAPTCHA testova u istoriji krajnjeg klijenta ili u skorašnjem intervalu istorije (kao što je odnos kod poslednjih pokušaja ili pokušaja iz poslednjih sati/dana); (iii) broj slučajeva CAPTCHA provera na koje je u toku poslednjeg vremenskog intervala naišao krajnji klijent, kao što je na primer broj provera u toku poslednjih 10 sekundi, u toku poslednjeg minuta, u toku poslednjeg sata, itd. i rezultati tih provera (odnosno da li su CAPTCHA provere bile zaista prikazane ili sakrivene od strane uslovnog izostavljanja CAPTCHA provere); i (iv) prisustvo „uverenja“ o automatizaciji ili prosleđivanju trećoj strani.
Dodatno, u skupu pravila postoje pravila koja treba da zaključe da li je CAPTCHA proveru potrebno prikazati krajnjem klijentu sa zabeleženom istorijom. Ova pravila sadrže sledeće: (i) ukoliko prethodno prikazani CAPTCHA niz karaktera nije unet ili nije unet ispravno, CAPTCHA proveru je potrebno prikazati; (ii) ukoliko je prethodno prikazani CAPTCHA niz karaktera unet ispravno, novu CAPTCHA proveru je potrebno prikazati samo u sledećim slučajevima: (a) ukoliko je prekoračen određeni prag CAPTCHA provera u datom vremenskom intervalu (na primer, više od jedne CAPTCHA provere u poslednjih 10 sekundi), ili (b) ukoliko je odnos između neuspešno rešenih i uspešno rešenih CAPTCHA testova u čitavoj istoriji ili skorijoj istoriji ograničenoj na određeni broj testova ili određeni vremenski interval prevazilazi unapred određeni prag (na primer sedam neuspešno rešenih testova u deset najskorijih provera bi bio istorijski odnos koji prevazilazi unapred određenu vrednost praga od pet neuspešno rešenih testova u deset provera), ili (c) ukoliko su u istoriji
1
korisnika pronađena uverenja o automatizaciji ili prosleđivanju trećoj strani, ili (d) skoriji deo uverenja prevazilazi određeni prag (na primer, dva izveštaja o automatizaciji u toku jednog dana što prevazilazi prag od jednog izveštaja), ili (e) jedan izveštaj o prosleđivanju u istoriji klijenta koji prevazilazi prag od nula izveštaja).
Prema primeru izvođenja, Servisna Mašina sadrži kôd ili druga sredstva za povezivanje sa trećim stranama koje poseduju istoriju krajnjeg klijenta, tipično pomoću API-ja koji nude te treće strane. Takve treće strane mogu biti entiteti koji postavljaju kolačiće na mnoge mašine korisnika na mnogim različitim sajtovima na mreži (poznati kao „kolačići trećih strana“) i loguju posete i aktivnosti korisnika za sopstvene potrebe radi, a bez namere za ograničavanjem, prikazivanja reklamnog sadržaja. Ove treće strane mogu pratiti krajnje klijente i prikupljati njihovu vidljivu istoriju u cilju analiziranja ponašanja korisnika kako bi pomogli oglašivačima i/ili izdavačima da odluče koje reklame su najprikladnije za koje korisnike. Kao što će biti razumljivo za stručnjaka iz predmetne oblasti, moguće je utvrditi da li je određeni krajnji klijent praćen od strane takvog servisa i da li kao posledica toga taj krajni klijent ima sačuvanu istoriju. Ova provera može biti izvršena pomoću API-ja ili primenom nekog drugog komunikacionog metoda koji nude ovi pružaoci usluga kako bi se došlo do informacija koje nude.
Servisna Mašina će, stoga, u bloku 104 odlučivanja sadržati kôd ili sredstvo za preuzimanje informacija o uređaju ili pretraživaču određenog krajnjeg korisnika od ovih trećih strana i, na osnovu tih informacija, zaključiti da li krajnji klijent poseduje sačuvani skup istorijskih pravila o korišćenju Interneta i, ukoliko je moguće, koliko je dugačka ova istorija. Može se pretpostaviti da automatizovani agenti ne poseduju kolačiće trećih strana i nemaju skup istorijskih pravila, ili da najmanje nemaju istoriju dužu od par dana obzirom da brišu kolačiće, keš i bilo koju istoriju Internet pretraživanja kako bi zadržali punu anonimnost. Provera istorije na trećoj strani će biti primenjena na nepoznate uređaja (bez kolačića sa identifikatorom korisnika ili sa nepoznatim identifikatorom), i njeni rezultati će biti snimljeni u bazi ili na uređaju za čuvanje podataka zajedno sa novo-dodeljenim identifikatorom korisnika.
Dodatno, popularni sajtovi na mreži koji loguju podatke i identitet krajnjeg korisnika mogu biti takođe ispitani pomoću API-ja ili nekog drugog raspoloživog sredstva kako bi se utvrdilo da li krajnji klijent poseduje nalog na tim sajtovima i, u
1
mogućoj meri, koliko je star taj nalog i kada je korišćen. Takvi sajtovi trećih strana mogu biti, bez namere za ograničavanjem, socijalne mreže, web-mail platforme, pružaoci usluga zajedničkog naloga i prijavljivanja na različite sajtove kao što je npr. OpenID projekat i drugi. Posedovanje naloga na takvim sajtovima i stvarno korišćenje tih naloga može ukazivati na klijenta koji je validna osoba koja preuzima aktivnu ulogu na drugim popularnim sajtovima na mreži i koja ne briše kolačiće i keš. Ove provere istorije korisnika na trećim stranama se primenjuju na nepoznate uređaja (bez kolačića sa identifikatorom korisnika ili sa nepoznatim identifikatorom) i njihovi rezultati se snimaju u SM bazu ili na uređaj za čuvanje podataka zajedno sa novo-dodeljenim identifikatorom korisnika.
Neki od sajtova trećih strana, kao što su socijalne mreže i druge platforme, mogu zahtevati saglasnost korisnika za prosleđivanje podataka Servisnoj Mašini. Takva saglasnost može biti data ugradnjom skripte ili dela stranice (poznatog kao widget i takođe poznatog na Facebook-u kao „Facebook aplikacija“) od sajtova treće strane ili preusmeravanjem korisnika na specifičnu stranicu sajta treće strane, kao što je aplikativna strana ili strana kreirana za upravljanje servisom Uslovnog izostavljanja CAPTCHA provere. Po svakoj od ovih alternativa, krajnji klijent bi trebalo da bude prijavljen na sajt treće strane i, nakon klika na odgovarajuća polja za obeležavanje ili neko potrebno dugme, potvrđuje otkrivanje detalja ili izlaganje sopstvenog naloga Servisnoj Mašini. U takvim slučajevima server za Uslovno izostavljanje CAPTCHA provere može sadržati kôd koji je potreban da se korisnik provede kroz postupak potvrđivanja CAPTCHA servisa.
Prema primeru izvođenja, predmetni pronalazak može sadržati dobro poznati propust kod Internet pretraživača koji je poznat kao „CSS propust“, gde se linkovi ka mrežnim sajtovima prosleđuju pretraživaču sa skriptom koja proverava atribut boje prikazanog linka. Pretraživači mogu primeniti različite boje za nove linkove i posećene linkove, tako da se na ovaj način na osnovu njihove boje može saznati da li je korisnik posetio određene adrese. Pored CAPTCHA provere, strana ili kod prosleđen od strane Servisne Mašine može sadržati linkove ka popularnim mrežnim sajtovima ili slikama na ovim sajtovima kako bi se iskorišćavanjem ovog CSS propusta proverilo da li su oni bili prethodno posećeni ili ne. Posete ovim mrežnim sajtovima mogu takođe predstavljati nagoveštaj da je krajnji klijent čovek i da ne krije svoju istoriju pretraživanja Interneta.
2
Alternativa ovom propustu, koja je već blokirana od strane nekih pretraživača, može biti ugrađivanje popularnih slika (kao što su URL adrese logoa popularnih mrežnih sajtova) u stranice i merenje, pomoću skripte koja se izvršava na strani klijenta koja sadrži tajmer i onLoad događaj, vreme potrebno za njihovo učitavanje. Ovo se može iskoristiti da se utvrdi da li se popularne slike učitavaju iz lokalnog keša (za šta je uobičajeno potrebno nekoliko milisekundi) ili sa Interneta, gde učitavanje iz keša ukazuje da je taj sajt na mreži bio posećen. Ove provere istorije pretraživanja mreže se primenjuju na nepoznate uređaje krajnjih korisnika (bez kolačića sa identifikatorom korisnika ili sa nepoznatim identifikatorom), a njihovi rezultati se snimaju u bazu ili na uređaj za čuvanje podataka zajedno sa novo-dodeljenim identifikatorom korisnika.
Kada mrežna aplikacija vrši upit ka Servisnoj Mašini i proverava da li da prikaže ili izostavi CAPTCHA izazov za određenog korisnika koji ne poseduje identifikator ili poseduje identifikator koji ne može biti verifikovan u SM bazi, Servisna Mašina će ili (i) odgovoriti da je CAPTCHA proveru potrebno prikazati, ili (ii) ukoliko je uslovno izostavljanje CAPTCHA provera konfigurisano na drugačiji način, bilo globalno ili za određeni sajt na mreži, Servisna Mašina će koristiti deo ili sve sledeće informacije da odluči da li je krajnjem klijentu potrebno prikazati CAPTCHA proveru ili ne: (a) istorija krajnjeg klijenta kod trećih strana koje prate kolačiće, (b) raspoloživost naloga krajnjeg klijenta, (c) korišćenje na mrežnim platformama trećih strana, kao što su socijalne mreže, platforme za pružanje usluga mrežnih identiteta, web-mail platforme i slično, i (d) istorija pretraživanja popularnih sajtova od strane krajnjeg klijenta, dobijena iskorišćavanjem CSS propusta ili na osnovu keširanja slika.
Prema primeru izvođenja, kada mrežna aplikacija u bloku 104 odlučivanja vrši upit ka Servisnoj Mašini da li da prikaže ili izostavi CAPTCHA proveru za određenog krajnjeg klijenta koji ne poseduje identifikator korisnika ili poseduje identifikator koji ne može biti verifikovan u SM bazi, Servisna Mašina će primeniti pravila kako bi se u koraku 92 odlučilo da je potrebno prikazati CAPTCHA proveru jer korisnik ne poseduje validnu istoriju, ili kako bi se u koraku 94 odlučilo da nije potrebno prikazati CAPTCHA proveru pošto korisnik poseduje validnu istoriju.
Ta pravila se mogu postaviti na takav način da se: (i) ukoliko je krajnji klijent posetio unapred određen broj popularnih sajtova na mreži, ili (ii) ukoliko krajnji klijent poseduje praćenu istoriju kod trećih strana koje prate kolačiće, ili (iii) je ova praćena istorija duža od unapred definisanog broja dana, ili (iv) ukoliko krajnji klijent poseduje naloge na popularnim mrežnim platformama, ili (v) ukoliko je krajnji klijent u skorije vreme koristio nalog, ili (vi) bilo kojom kombinacijom prethodno navedenog, pretpostavlja da je krajnji klijent validni korisnik koji poseduje vidljivu istoriju pretraživanja Interneta i da nije verovatno da je u pitanju spamer. Ukoliko je ispunjen bilo koji od ovih uslova (i) do (vi), ili neka unapred određena kombinacija istih, Servisna Mašina će signalizirati da CAPTCHA proveru nije potrebno prikazati.
Slika 4 ilustruje mrežu 150 koja je u saglasnosti sa primerom izvođenja predmetne tehnike. Mreža 150 je primer izvođenja platforme kojom se pruža i/ili obrađuje CAPTCHA servis na način kako je opisano u tekstu iznad u vezi sa Slikama 1 do 3. U skladu sa tim, mreža 150 je komunikaciona mreža prilagođena za povezivanje različitih čvorova, kao što su na primer serveri, računarski sistemi i krajnji korisnici, kao i za omogućavanje prenosa podataka između čvorova i krajnjih korisnika. Dodatno, mreža 150 može biti formirana od različitih posvećenih računarskih sistema i/ili servera, od kojih neki mogu raditi u vidu računarskih klastera i/ili računarskog oblaka radi pružanja i distribuiranja CAPTCHA servisa u saglasnosti sa primerima izvođenja predmetne tehnike.
Preciznije, Slika 4 ilustruje čvorove/krajnje tačke/krajnje korisnike 152 i 154, kao i servere 156 i računarske sisteme (CS – Computing Systems) 158. Korisnik 152 i/ili 154 može biti klijentski računar poput kućnog ili kancelarijskog personalnog računara (PC – Personal Computer), udaljeni klijent, tanki klijent ili neki drugi tip računarskog i/ili procesorskog interfejsa prilagođen za obradu opštih podataka i za povezivanje na mrežu 150. Iako nije ilustrovano na Slici 1, klijentski računari mogu dodatno biti spregnuti i/ili povezani sa drugim periferijskim uređajima poput monitora, tastatura, miševa, štampača, rutera, bežičnih uređaja, mikrofona, zvučnika, kamera, detektora otiska prstiju, spoljašnjih memorijskih uređaja i drugih uređaja. PC 12 može sadržati softverske platforme i operativne sisteme poput Windows-a, Red Hat Linux-a i drugih pomoćnih programa.
Potrebno je imati na umu da, iako je predmetni pronalazak opisan u odnosu na
„računar“ na „računarskoj mreži“, termin „računar“ može podrazumevati bilo koji uređaj koji poseduje procesor za obradu podataka i/ili mogućnost izvršavanja jedne ili više instrukcija. Takvi uređaji mogu između ostalog obuhvatati i: personalne računare (PC), servere, mini-računare, mobilne telefone, pametne telefone, PDA uređaje (personalne asistente), pejdžere, TV dekodere, igračke konzole, digitalne muzičke plejere, ATM mašine (tzv. „bankomati“), POS terminale za kreditne kartice ili elektronske kase. Bilo koja dva ili više takvih uređaja koji su u uzajamnoj komunikaciji i/ili bilo koji računar koji je u komunikaciji sa bilo kojim drugim računarom mogu opciono sačinjavati „računarsku mrežu“.
Stoga, korisnici, tj. korisnici 152 i 154 koji imaju pristup mreži 10 mogu pristupati mrežnim stranicama kao delu bilo kog uopštenog pretraživanja mreže 150. Potrebno je imati na umu da pristup mreži 150 može ostvarivati veći broj korisnika, poput korisnika 152 i 154, obrazujući različite segmente, lokacije, postavke i/ili druge atribute koji karakterišu personalni profil mrežnih korisnika.
Dodatno, server 156 i/ili CS 158 mogu biti prilagođeni za čuvanje, rutiranje i/ili komuniciranje podacima unutar mreže 150 i/ili drugih mreža sa kojima server 156 i CS 158 mogu biti povezani. Stoga, server 156 može sadržati sačuvane informacije koje se odnose na materijal sadržan na mrežnom sajtu, kao što je onaj koji pripada različitim pružaocima usluga oglašavanja, promocija, administracije itd. Alternativno, server 156 može sadržati sačuvane informacije o originalno kreiranim reklamama, kao i parametre koji definišu način na koji se one personalizuju.
Dalje, prema primeru izvođenja, server 156 može biti tipa raspoloživog od strane proizvođača kao što su Sun Microsystems, Hewlett Packard, Dell, IBM (International Business Machines) i/ili drugih poznatih proizvođača servera. U skladu sa tim serveri 156 i CS 158 mogu sadržati različite hardverske uređaje poput mikroprocesora, memorijskih kartica, grafičkih kartica, rutera, bežičnih uređaja i drugih modula za prijem, prenos i/ili obradu podataka. Dodatno, serveri mogu sadržati različite softverske platforme i pakete, poput onih koje obezbeđuju kôd pisan u Java, Python, Ruby on Rails i/ili drugim računarskim jezicima, radi omogućavanja svakodnevnog rada i korišćenja servera 154 i CS 158 kao delova mreže 150. Potrebno je dodatno imati na umu da korisnički čvorovi 152 i 154 i serveri 156 i CS 158 su dati kao primer, kao i da mreža 150 može imati mnoge druge dodatne korisničke čvorove slične korisnicima 152 i 154, kao i mnoge druge servere slične onima koji su ovde razmatrani.
2
Dodatno, server 156 može biti prilagođen da vrši skladištenje i čuvanje podataka kao što su na primer mrežni sajtovi koji su uopšteno dostupni korisnicima 152 i/ili 154 preko mreže 150. Stručnjaci iz predmetne oblasti će razumeti da svaki od mrežnih sajtova koji je dostupan korisnicima, na primer, može imati više različitih strana koje mogu takođe biti dostupne i korisnicima 152 i 154 po zahtevu. Na primer, server 14 može sadržati mrežne sajtove privatnih kompanija i/ili korporacija, kao i državnih i/ili drugih javnih organizacija. Stoga, server 154 obezbeđuje pristup korisniku 12 mrežnih stranica koje pružaju prethodno navedeni privatni ili javni entiteti tako da korisnik, na primer, može obavljati posao i/ili upravljati različitim zadacima preko mreže 150. Na primer, korisnik 152 može pristupati serveru 154 radi preuzimanja web stranice koja pripada pružaocu finansijskih usluga preko kojeg korisnik 12 može obavljati svoje finansijske transakcije, kao na primer prilikom kupovine potrošačke robe i slično. Prema dodatnom primeru, korisnik 152 može pristupiti serveru 14 radi preuzimanja web stranica kao što su one koje su pridružene različitim javnim institucijama, preko kojih korisnici 152 i 154 mogu dobiti lične i/ili druge tipove informacija potrebne za izvršavanje svakodnevnih ličnih i/ili poslovnih zadataka itd. U skladu sa tim, korisnici 152 i 154 mogu u opštem obliku uspostavljati komunikacione sesije tokom kojih korisnik 152 i server 154 kroz mrežu 150 razmenjuju informacije.
U saglasnosti sa primerom izvođenja predmetne tehnike, CAPTCHA sesija može biti inicirana od strane CS 158, gde može biti implementirana Servisna Mašina. Servisna Mašina je prilagođena da mrežnom serveru 156 ili mrežnoj aplikaciji vrati identifikator transakcije i kôd. Prema tome mrežni server 156 ili mrežna aplikacija korisniku 152/154 prosleđuje skriptu. Krajnji korisnik 154/156 prima skriptu radi kreiranja iFrame objekta. Servisna Mašina (na primer CS 158) prihvata poziv od krajnjeg korisnika 152/154 i u koraku 20 dobija identifikator korisnika ili dodeljuje identifikator korisnika. Servisna Mašina je dalje prilagođena da preuzme atribute korisničkog uređaja 152/154 kako bi generisala slike i kôd.
Kao što je prethodno opisano u vezi sa Slikama 1 i 2, CS 158 je prilagođen za slanje CAPTCHA kôda ka krajnjem korisniku 152/154. Krajnji korisnik prihvata CAPTCHA kôd i zahteva CAPTCHA sliku. CS 158 prima zahtev korisnika i prosleđuje CAPTCHA sliku ka krajnjem korisniku 152/154. U skladu sa tim, uređaj krajnjeg korisnika prikazuje delimičnu sliku, prati i loguje događaje i podnosi formu mrežnom serveru 156 ili mrežnoj aplikaciji. Mrežni server 156 ili mrežna aplikacija preuzimaju sadržaj unet na formu uključujući i CAPTCHA polja. Mrežni server 156 ili mrežna aplikacija, zatim, vrši upit ka CS 158 kako bi se verifikovao rezultat CAPTCHA provere.
Dalje, CS 158 dobija CAPTCHA i korisničke događaje sa korisničkog uređaja (na primer korisnika 152/154). CS, zatim, vrši analizu unosa od strane korisnika, analizu korisničkih događaja i analizu istorije korisnika. Dobijeni rezultati CAPTCHA testa i upozorenja se vraćaju uređaju krajnjeg korisnika 152/154 od strane CS 158. Uređaj krajnjeg korisnika prima rezultate CAPTCHA testa i upozorenja od CS 158.
Prema drugom primeru izvođenja predmetne tehnike, mrežni sistem 150 je prilagođen za implementaciju postupka selektivnog podvrgavanja korisnika 152/154 automatizovanom javnom Tjuringovom testu kako bi se kao odgovor na komunikaciju primljenu od korisnika 152/154 testirao korisnik 152/154. U skladu sa tim, kada korisnik 152/154 pristupi mrežnom sajtu, kao što je onaj koji je na raspolaganju na serveru 156, CS 158 je prilagođen da proveri postojanje identifikatora korisnika. Ukoliko CS dobije identifikator korisnika 152/154, CS 158 potvrđuje da je navedeni vraćeni identifikator korisnika verodostojan i da se ne radi o ukradenom identifikatoru. Dalje, ukoliko identifikator korisnika nije vraćen, CS 158 dodeljuje korisniku identifikator korisnika. Nakon toga CS 158 korisniku prikazuje automatizovani javni Tjuringov test kako bi izvršio testiranje korisnika, izuzev ukoliko nisu ispunjeni prethodno definisani kriterijumi poput onih koji se odnose na atribute i istoriju korisnika 152/154, kao što je opisano iznad u vezi sa Slikom 3. Dodatno, CS 158 je prilagođen da preuzme i sačuva analizu odgovora korisnika na automatizovani Tjuringov test.
Izuzev ukoliko je drugačije definisano, sve tehnički i naučni termini koji su ovde upotrebljeni imaju isto značenje koje se uopšteno podrazumeva od strane prosečnih stručnjaka iz predmetne oblasti kojoj pronalazak pripada. Materijali, postupci i primeri koji su ovde navedeni, dati su isključivo u ilustrativne svrhe i nisu namenjeni da budu ograničavajući.
Mnogi od specifičnih detalja određenih izvođenja pronalaska su opisani u prethodnom opisu i odnose se na slike kako bi obezbedili temeljno razumevanje
2
takvih izvođenja. Osoba sa poznavanjem predmetne oblasti će razumeti da je, ipak, predmetni pronalazak moguće realizovati bez nekolicine detalja koji u prethodno opisani. Šta više, u opisu se podrazumeva da slike koje se odnose na različita izvođenja ne treba interpretirati kao nosioce bilo kakvih specifičnih ili relativnih fizičkih dimenzija.
2

Claims (7)

PATENTNI ZAHTEVI
1. Postupak za primenu CAPTCHA provere i detektovanje korišćenje CAPTCHA bota ili prosleđivanje trećoj strani od strane klijentskog računara, podrazumeva na strani servera:
prosleđivanje CAPTCHA provere klijentskom računaru (30), gde CAPTCHA provera sadrži sliku i kôd za pretraživač namenjen za prikaz slike, gde slika sadrži niz karaktera u kojem prvi pod-niz karaktera manji od navedenog niza karaktera odgovara rešenju navedene CAPTCHA provere i gde najmanje jedan drugi pod-niz karaktera koji je manji od navedenog niza odgovara nizu dodatnih karaktera koji nisu deo rešenja, gde kôd za pretraživač ima ulogu da ograniči prikaz slike na klijentskom računaru na samo prvi pod-niz (32) karaktera, primi odgovor od klijentskog računara koji se odnosi na rešenje CAPTCHA provere (34), uporedi odgovor sa najmanje jednim drugim pod-nizom karaktera, i odredi, ukoliko odgovor sadrži najmanje jedan drugi pod-niz karaktera, da je klijentski računar koristio CAPTCHA bot ili prosleđivanje.
2. Postupak prema Zahtevu 1, gde navedena CAPTCHA provera sadrži mogućnost animiranja takvu da je u bilo kom datom trenutku različit deo prvog pod-niza karaktera sakriven od prikaza na displeju klijentskog računara.
3. Postupak prema Zahtevu 1 koji dalje podrazumeva evaluaciju najmanje jednog od: većeg broja događaja promene fokusa na poljima forme, većeg broja događaja primljenih od miša nastalih na računaru klijenta, i većeg broja događaja primljenih od tastature nastalih na računaru klijenta.
4. Postupak prema Zahtevu 1 koji dalje podrazumeva poređenje IP adresa računara klijenta sa IP adresom pridruženom navedenom odgovoru.
2
5. Postupak prema Zahtevu 1 koji dalje podrazumeva utvrđivanje da li na računaru klijenta postoji iFrame objekat i, ako je tako, utvrđivanje URL adrese navedenog iFrame objekta; i verifikaciju URL adresa pridruženih nadređenom dokumentu navedenog iFrame objekta.
6. Računarski program snimljen na medijumu za čuvanje podataka koji može biti očitan na računaru, a koji prilikom izvršavanja implementira postupak koji je opisan u bilo kojem od Zahteva 1 do 5.
7. Sistem za primenu CAPTCHA provera i detekciju korišćenja CAPTCHA bota ili prosleđivanje provere od strane računara klijenta, koji sadrži server konfigurisan da izvršava postupak koji je opisan u bilo kojem od Zahteva 1 do 5.
RS20180837A 2011-02-10 2012-02-07 Razlikovanje stvarnih korisnika od botova, ocr sistema i učešća treće strane prilikom captcha provere RS57512B1 (sr)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201161441630P 2011-02-10 2011-02-10
US201161472114P 2011-04-05 2011-04-05
PCT/IB2012/050551 WO2012107879A2 (en) 2011-02-10 2012-02-07 DISTINGUISH VALID USERS FROM BOTS, OCRs AND THIRD PARTY SOLVERS WHEN PRESENTING CAPTCHA
EP12744330.7A EP2673708B1 (en) 2011-02-10 2012-02-07 DISTINGUISH VALID USERS FROM BOTS, OCRs AND THIRD PARTY SOLVERS WHEN PRESENTING CAPTCHA

Publications (1)

Publication Number Publication Date
RS57512B1 true RS57512B1 (sr) 2018-10-31

Family

ID=46639004

Family Applications (1)

Application Number Title Priority Date Filing Date
RS20180837A RS57512B1 (sr) 2011-02-10 2012-02-07 Razlikovanje stvarnih korisnika od botova, ocr sistema i učešća treće strane prilikom captcha provere

Country Status (5)

Country Link
US (2) US9501651B2 (sr)
EP (1) EP2673708B1 (sr)
ES (1) ES2679286T3 (sr)
RS (1) RS57512B1 (sr)
WO (1) WO2012107879A2 (sr)

Families Citing this family (99)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9275215B2 (en) 2008-04-01 2016-03-01 Nudata Security Inc. Systems and methods for implementing and tracking identification tests
US9842204B2 (en) 2008-04-01 2017-12-12 Nudata Security Inc. Systems and methods for assessing security risk
US10395018B2 (en) 2010-11-29 2019-08-27 Biocatch Ltd. System, method, and device of detecting identity of a user and authenticating a user
US10949514B2 (en) 2010-11-29 2021-03-16 Biocatch Ltd. Device, system, and method of differentiating among users based on detection of hardware components
US10298614B2 (en) * 2010-11-29 2019-05-21 Biocatch Ltd. System, device, and method of generating and managing behavioral biometric cookies
US20250016199A1 (en) * 2010-11-29 2025-01-09 Biocatch Ltd. Device, System, and Method of Detecting Vishing Attacks
US10621585B2 (en) 2010-11-29 2020-04-14 Biocatch Ltd. Contextual mapping of web-pages, and generation of fraud-relatedness score-values
US10083439B2 (en) 2010-11-29 2018-09-25 Biocatch Ltd. Device, system, and method of differentiating over multiple accounts between legitimate user and cyber-attacker
US10897482B2 (en) 2010-11-29 2021-01-19 Biocatch Ltd. Method, device, and system of back-coloring, forward-coloring, and fraud detection
US10069837B2 (en) * 2015-07-09 2018-09-04 Biocatch Ltd. Detection of proxy server
US11223619B2 (en) 2010-11-29 2022-01-11 Biocatch Ltd. Device, system, and method of user authentication based on user-specific characteristics of task performance
US10476873B2 (en) 2010-11-29 2019-11-12 Biocatch Ltd. Device, system, and method of password-less user authentication and password-less detection of user identity
US10164985B2 (en) 2010-11-29 2018-12-25 Biocatch Ltd. Device, system, and method of recovery and resetting of user authentication factor
US10586036B2 (en) 2010-11-29 2020-03-10 Biocatch Ltd. System, device, and method of recovery and resetting of user authentication factor
US10262324B2 (en) 2010-11-29 2019-04-16 Biocatch Ltd. System, device, and method of differentiating among users based on user-specific page navigation sequence
US10037421B2 (en) 2010-11-29 2018-07-31 Biocatch Ltd. Device, system, and method of three-dimensional spatial user authentication
US10728761B2 (en) 2010-11-29 2020-07-28 Biocatch Ltd. Method, device, and system of detecting a lie of a user who inputs data
US12101354B2 (en) * 2010-11-29 2024-09-24 Biocatch Ltd. Device, system, and method of detecting vishing attacks
US10949757B2 (en) 2010-11-29 2021-03-16 Biocatch Ltd. System, device, and method of detecting user identity based on motor-control loop model
US10404729B2 (en) 2010-11-29 2019-09-03 Biocatch Ltd. Device, method, and system of generating fraud-alerts for cyber-attacks
US11210674B2 (en) 2010-11-29 2021-12-28 Biocatch Ltd. Method, device, and system of detecting mule accounts and accounts used for money laundering
US10032010B2 (en) 2010-11-29 2018-07-24 Biocatch Ltd. System, device, and method of visual login and stochastic cryptography
US10834590B2 (en) 2010-11-29 2020-11-10 Biocatch Ltd. Method, device, and system of differentiating between a cyber-attacker and a legitimate user
US10747305B2 (en) 2010-11-29 2020-08-18 Biocatch Ltd. Method, system, and device of authenticating identity of a user of an electronic device
US20190158535A1 (en) * 2017-11-21 2019-05-23 Biocatch Ltd. Device, System, and Method of Detecting Vishing Attacks
US9483292B2 (en) 2010-11-29 2016-11-01 Biocatch Ltd. Method, device, and system of differentiating between virtual machine and non-virtualized device
US11269977B2 (en) 2010-11-29 2022-03-08 Biocatch Ltd. System, apparatus, and method of collecting and processing data in electronic devices
US10776476B2 (en) 2010-11-29 2020-09-15 Biocatch Ltd. System, device, and method of visual login
US10970394B2 (en) 2017-11-21 2021-04-06 Biocatch Ltd. System, device, and method of detecting vishing attacks
US10069852B2 (en) 2010-11-29 2018-09-04 Biocatch Ltd. Detection of computerized bots and automated cyber-attack modules
US9848009B2 (en) * 2010-11-29 2017-12-19 Biocatch Ltd. Identification of computerized bots and automated cyber-attack modules
US10917431B2 (en) * 2010-11-29 2021-02-09 Biocatch Ltd. System, method, and device of authenticating a user based on selfie image or selfie video
US10055560B2 (en) 2010-11-29 2018-08-21 Biocatch Ltd. Device, method, and system of detecting multiple users accessing the same account
US9626677B2 (en) * 2010-11-29 2017-04-18 Biocatch Ltd. Identification of computerized bots, and identification of automated cyber-attack modules
US10685355B2 (en) * 2016-12-04 2020-06-16 Biocatch Ltd. Method, device, and system of detecting mule accounts and accounts used for money laundering
US10474815B2 (en) 2010-11-29 2019-11-12 Biocatch Ltd. System, device, and method of detecting malicious automatic script and code injection
WO2012107879A2 (en) * 2011-02-10 2012-08-16 Site Black Box Ltd. DISTINGUISH VALID USERS FROM BOTS, OCRs AND THIRD PARTY SOLVERS WHEN PRESENTING CAPTCHA
US8776173B2 (en) * 2011-03-24 2014-07-08 AYAH, Inc. Method for generating a human likeness score
US9183362B2 (en) * 2011-08-05 2015-11-10 Mobile Messenger Global, Inc. Method and system for verification of human presence at a mobile device
JP6181558B2 (ja) * 2012-01-06 2017-08-16 キャピーインク キャプチャ提供方法及びプログラム
CN104769629B (zh) 2012-05-14 2019-01-08 斯格罗普莱斯公司 具有增强的隐私和集成定制化特征的社交平台
US9742751B2 (en) * 2012-11-05 2017-08-22 Paypal, Inc. Systems and methods for automatically identifying and removing weak stimuli used in stimulus-based authentication
WO2014124417A1 (en) * 2013-02-11 2014-08-14 Vindico Llc Comprehensive measurement of the opportunity to see online advertisements
US9852275B2 (en) * 2013-03-15 2017-12-26 NSS Lab Works LLC Security device, methods, and systems for continuous authentication
US9386011B2 (en) * 2013-08-29 2016-07-05 Aol Inc. Systems and methods for managing resetting of user online identities or accounts
CN104468107B (zh) * 2013-09-18 2018-12-11 深圳市腾讯计算机系统有限公司 校验数据处理方法及装置
US11165770B1 (en) * 2013-12-06 2021-11-02 A10 Networks, Inc. Biometric verification of a human internet user
US20140136338A1 (en) * 2013-12-23 2014-05-15 Zenovia Digital Exchange Corporation Systems and Methods for Increasing Win Rates, Volume and Liquidity within an Internet Advertising Exchange
US9223997B2 (en) 2014-01-03 2015-12-29 Juniper Networks, Inc. Detecting and breaking CAPTCHA automation scripts and preventing image scraping
US20150269387A1 (en) * 2014-03-18 2015-09-24 Qualcomm Incorporated Methods and Systems of Preventing An Automated Routine from Passing a Challenge-Response Test
US10097583B1 (en) 2014-03-28 2018-10-09 Amazon Technologies, Inc. Non-blocking automated agent detection
US9361446B1 (en) 2014-03-28 2016-06-07 Amazon Technologies, Inc. Token based automated agent detection
US9424414B1 (en) * 2014-03-28 2016-08-23 Amazon Technologies, Inc. Inactive non-blocking automated agent detection
US8997226B1 (en) * 2014-04-17 2015-03-31 Shape Security, Inc. Detection of client-side malware activity
CN104036169B (zh) 2014-06-06 2017-10-10 北京智谷睿拓技术服务有限公司 生物认证方法及生物认证装置
CN104038489A (zh) 2014-06-06 2014-09-10 北京智谷睿拓技术服务有限公司 生物认证方法及生物认证装置
US9338162B2 (en) 2014-06-13 2016-05-10 International Business Machines Corporation CAPTCHA challenge incorporating obfuscated characters
KR102255369B1 (ko) * 2014-08-18 2021-05-24 삼성전자주식회사 대체 서비스 제공 방법 및 그 전자 장치
US9471767B2 (en) 2014-08-22 2016-10-18 Oracle International Corporation CAPTCHA techniques utilizing traceable images
US9600651B1 (en) 2015-01-05 2017-03-21 Kimbia, Inc. System and method for determining use of non-human users in a distributed computer network environment
US10534512B2 (en) * 2015-03-04 2020-01-14 Tata Consultancy Services Limited System and method for identifying web elements present on a web-page
CN106157344B (zh) * 2015-04-23 2020-11-10 深圳市腾讯计算机系统有限公司 验证图片的生成方法及装置
US9787696B2 (en) * 2015-05-19 2017-10-10 Workday, Inc. Brute force attack prevention system
US10284371B2 (en) 2015-05-19 2019-05-07 Workday, Inc. Brute force attack prevention system
GB2539705B (en) 2015-06-25 2017-10-25 Aimbrain Solutions Ltd Conditional behavioural biometrics
CN106340049A (zh) * 2015-07-15 2017-01-18 中国传媒大学 一种基于动画语义的验证码产生方法
WO2017027320A1 (en) * 2015-08-07 2017-02-16 Stc.Unm System and methods for detecting bots real-time
US9710637B2 (en) * 2015-08-28 2017-07-18 Salesforce.Com, Inc. Unicode-based image generation and testing
US9710638B2 (en) * 2015-08-28 2017-07-18 Salesforce.Com, Inc. Unicode-based image generation and testing
US9619642B2 (en) * 2015-08-28 2017-04-11 Salesforce.Com, Inc. Unicode-based image generation and testing
GB2552032B (en) 2016-07-08 2019-05-22 Aimbrain Solutions Ltd Step-up authentication
US10313322B2 (en) * 2016-09-02 2019-06-04 Ca, Inc. Distinguishing human-generated input from programmatically-generated input
US10511611B2 (en) * 2016-09-11 2019-12-17 Cisco Technology, Inc. Conditional content access
US10198122B2 (en) 2016-09-30 2019-02-05 Biocatch Ltd. System, device, and method of estimating force applied to a touch surface
EP3319069B1 (en) * 2016-11-02 2019-05-01 Skeyecode Method for authenticating a user by means of a non-secure terminal
US10579784B2 (en) 2016-11-02 2020-03-03 Biocatch Ltd. System, device, and method of secure utilization of fingerprints for user authentication
EP3319067B1 (en) * 2016-11-02 2019-05-15 Skeyecode Method for authenticating a user by means of a non-secure terminal
US10120866B1 (en) 2017-04-28 2018-11-06 Microsoft Technology Licensing, Llc Conversational system user behavior identification
US10127373B1 (en) * 2017-05-05 2018-11-13 Mastercard Technologies Canada ULC Systems and methods for distinguishing among human users and software robots
US9990487B1 (en) 2017-05-05 2018-06-05 Mastercard Technologies Canada ULC Systems and methods for distinguishing among human users and software robots
US10007776B1 (en) 2017-05-05 2018-06-26 Mastercard Technologies Canada ULC Systems and methods for distinguishing among human users and software robots
US10397262B2 (en) 2017-07-20 2019-08-27 Biocatch Ltd. Device, system, and method of detecting overlay malware
US10565385B1 (en) * 2017-08-28 2020-02-18 Amazon Technologies, Inc. Substitute web content generation for detection and avoidance of automated agent interaction
CN109782989B (zh) * 2017-11-14 2021-08-03 腾讯科技(深圳)有限公司 安全验证方法及相关装置
US10877560B2 (en) * 2017-12-22 2020-12-29 Mastercard International Incorporated Haptic feedback for authentication and security in computer systems
US10949523B2 (en) * 2018-03-28 2021-03-16 Indian Institute Of Technology Bombay Method and electronic device for providing image-based CAPTCHA challenge
US11204648B2 (en) 2018-06-12 2021-12-21 Mastercard International Incorporated Handshake to establish agreement between two parties in virtual reality
KR102010360B1 (ko) * 2018-10-08 2019-08-14 넷마블 주식회사 색각 이상 판단 장치 및 방법
CN110276183B (zh) * 2019-06-19 2020-11-03 同盾控股有限公司 反向图灵验证方法及装置、存储介质、电子设备
US11283921B1 (en) * 2020-08-10 2022-03-22 Intrado Corporation Mitigating disturbances at a call center
US11838444B1 (en) 2020-08-10 2023-12-05 Intrado Life & Safety, Inc. Queuing calls based on disturbance
FR3118229B1 (fr) * 2020-12-17 2024-04-05 Orange Procédé de génération d’un formulaire à partir d’un formulaire de référence et d’envoi à un terminal
US12095804B2 (en) * 2021-06-08 2024-09-17 Shopify Inc. Systems and methods for bot mitigation
US11783001B2 (en) 2021-07-08 2023-10-10 Bank Of America Corporation System and method for splitting a video stream using breakpoints based on recognizing workflow patterns
US11606353B2 (en) 2021-07-22 2023-03-14 Biocatch Ltd. System, device, and method of generating and utilizing one-time passwords
KR102756264B1 (ko) * 2021-07-27 2025-01-21 주식회사 에스투더블유 웹 사이트 수집 방법 및 장치
KR102403941B1 (ko) * 2022-02-11 2022-05-31 (주)에스투더블유 봇 탐지를 우회하여 웹 사이트를 크롤링하는 방법
US12380186B2 (en) 2023-06-26 2025-08-05 Bank Of America Corporation Unauthorized activity detection based on input analysis and monitoring
US20250211613A1 (en) * 2023-12-22 2025-06-26 Kyndryl, Inc. Impersonation attack detection and prevention system

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2009111A (en) 1930-11-14 1935-07-23 Apex Electrical Mfg Co Laundry machine
US20060190561A1 (en) 2002-06-19 2006-08-24 Watchfire Corporation Method and system for obtaining script related information for website crawling
US7507459B2 (en) 2002-12-20 2009-03-24 The Procter & Gamble Company Compression resistant nonwovens
US8321955B2 (en) 2003-08-26 2012-11-27 Wu-Chang Feng Systems and methods for protecting against denial of service attacks
JP4705324B2 (ja) * 2003-12-26 2011-06-22 富士通株式会社 データ運用方法
US20060136249A1 (en) 2004-12-17 2006-06-22 Kagan Lloyd D Method for recycling used items
US7577994B1 (en) * 2005-08-25 2009-08-18 Symantec Corporation Detecting local graphic password deciphering attacks
US20070260520A1 (en) 2006-01-18 2007-11-08 Teracent Corporation System, method and computer program product for selecting internet-based advertising
US20070255821A1 (en) 2006-05-01 2007-11-01 Li Ge Real-time click fraud detecting and blocking system
US8849746B2 (en) 2006-12-19 2014-09-30 Teradata Us, Inc. High-throughput extract-transform-load (ETL) of program events for subsequent analysis
US7895653B2 (en) 2007-05-31 2011-02-22 International Business Machines Corporation Internet robot detection for network distributable markup
US8073912B2 (en) * 2007-07-13 2011-12-06 Michael Gregor Kaplan Sender authentication for difficult to classify email
US20090113294A1 (en) * 2007-10-30 2009-04-30 Yahoo! Inc. Progressive captcha
US20090241174A1 (en) 2008-02-19 2009-09-24 Guru Rajan Handling Human Detection for Devices Connected Over a Network
US9275215B2 (en) * 2008-04-01 2016-03-01 Nudata Security Inc. Systems and methods for implementing and tracking identification tests
US20090328163A1 (en) * 2008-06-28 2009-12-31 Yahoo! Inc. System and method using streaming captcha for online verification
US8316310B2 (en) 2008-08-05 2012-11-20 International Business Machines Corporation System and method for human identification proof for use in virtual environments
US8914510B2 (en) 2008-11-17 2014-12-16 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for enhancing internet security for network subscribers
US20100250397A1 (en) 2009-03-24 2010-09-30 Gregory Ippolito Internet Retail Sales Method and System Using Third Party Web Sites
US8516606B2 (en) 2009-03-24 2013-08-20 Aol Inc. Systems and methods for challenge-response animation and randomization testing
US8751628B2 (en) 2009-05-05 2014-06-10 Suboti, Llc System and method for processing user interface events
WO2010143152A2 (en) * 2009-06-10 2010-12-16 Site Black Box Ltd Identifying bots
KR101109669B1 (ko) * 2010-04-28 2012-02-08 한국전자통신연구원 좀비 식별을 위한 가상 서버 및 방법과, 가상 서버에 기반하여 좀비 정보를 통합 관리하기 위한 싱크홀 서버 및 방법
KR20130010472A (ko) * 2010-06-28 2013-01-28 인터내셔널 비지네스 머신즈 코포레이션 마스크 기반 시도 응답 테스트
US10296653B2 (en) * 2010-09-07 2019-05-21 F5 Networks, Inc. Systems and methods for accelerating web page loading
WO2012107879A2 (en) * 2011-02-10 2012-08-16 Site Black Box Ltd. DISTINGUISH VALID USERS FROM BOTS, OCRs AND THIRD PARTY SOLVERS WHEN PRESENTING CAPTCHA
US20120222100A1 (en) * 2011-02-24 2012-08-30 International Business Machines Corporation Advanced captcha using integrated images
EP2847680A4 (en) 2012-05-08 2016-02-17 Fireblade Ltd CENTERIZED DEVICE REPUTATION CENTER

Also Published As

Publication number Publication date
EP2673708A2 (en) 2013-12-18
EP2673708A4 (en) 2014-07-16
US20140250538A1 (en) 2014-09-04
WO2012107879A3 (en) 2012-11-08
US20170034148A1 (en) 2017-02-02
US9954841B2 (en) 2018-04-24
US9501651B2 (en) 2016-11-22
EP2673708B1 (en) 2018-04-25
ES2679286T3 (es) 2018-08-23
WO2012107879A2 (en) 2012-08-16

Similar Documents

Publication Publication Date Title
US9954841B2 (en) Distinguish valid users from bots, OCRs and third party solvers when presenting CAPTCHA
Senol et al. Leaky forms: A study of email and password exfiltration before form submission
Kharraz et al. Surveylance: Automatically detecting online survey scams
US11356479B2 (en) Systems and methods for takedown of counterfeit websites
US11245718B2 (en) Method and system for tracking fraudulent activity
US20240236140A1 (en) Detecting web application vulnerabilities
EP3368973B1 (en) Multi-layer computer security countermeasures
US9715592B2 (en) Dynamic analysis security testing of multi-party web applications via attack patterns
US8799456B2 (en) Fast device classification
US12506764B2 (en) Event and rule-based dynamic security test system
Laperdrix Browser fingerprinting: Exploring device diversity to augment authentification and build client-side countermeasures
Vastel Tracking versus security: investigating the two facets of browser fingerprinting
Algwil Click-based Captcha paradigm as a web service
Koop Preventing the Leakage of Privacy Sensitive User Data on the Web
Musch Advanced attack and vulnerability scanning for the modern web
Boulila et al. A Closer Look At Modern Evasive Phishing Emails
Acar et al. Online Tracking Technologies and Web Privacy
Chuenchujit A taxonomy of phishing research
Miramirkhani Methodologies and tools to study malicious ecosystems
Neef Uncovering Fingerprinting Networks. An Analysis of In-Browser Tracking using a Behavior-based Approach
Campobasso Understanding and Characterizing the Cybercriminal Ecosystem Enabling Attack Innovation at Scale
Shuang On the Security and Privacy of Web Requests
Casini et al. Measuring the Adoption of Device Class Fingerprinting
Murley Exploring the trade-offs in web page behavioral abstractions
Subramani Investigating the Security of Emerging Web Technologies and their Role in Social Engineering Attacks