Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ
  • në shtëpi
  • Gabimet
  • ReCAPTCHA - captcha më e thjeshtë Unë nuk jam një robot nga Google.

ReCAPTCHA - captcha më e thjeshtë Unë nuk jam një robot nga Google.

Futja e një captcha mund të jetë e nevojshme për të përdorur siç duhet një program, faqe interneti ose për regjistrim. Thelbi i captcha është i thjeshtë: të konfirmosh që nuk je robot. Por çfarë duhet të bëni nëse nuk hapet ose ju thotë me kokëfortësi se keni futur një rezultat të pasaktë?

    • Pse është e vështirë të njohësh captcha?
    • Nëse captcha është futur gabim
    • Si të futni captcha për para

Nëse ju duhet absolutisht të regjistroheni në një forum specifik, provoni fillimisht të kontrolloni nëse captcha funksionon fare. Për ta bërë këtë, duhet të hapni imazhin në një dritare të veçantë dhe të shihni se çfarë do të shfaqet (asgjë, një foto, një kod). Nëse shfaqen karaktere të çuditshme, atëherë ka shumë të ngjarë që arsyeja të jetë një defekt me kodin. Në këtë rast, mund t'i shkruani vetëm administratës së faqes.

Pse është e vështirë të njohësh captcha?

Më poshtë janë disa mënyra për të mbrojtur veten:

  • përdorimi i alfabetit rus (përjashtimi i anglishtes);
  • duke përdorur një kombinim të shkronjave të alfabetit rus dhe numrave;
  • Mbrojtja shtesë është futur në formën e aplikimit të filtrave të ndryshëm, shtrembërimeve, plehrave etj.

Një mbrojtje e tillë e ndërlikon shumë leximin dhe njohjen e captcha jo vetëm për specialistët, por edhe për përdoruesit e zakonshëm të burimeve të Internetit, trajnimi i të cilëve është disa herë më i ulët.

Nëse captcha është futur gabim

Problemi me captcha lind për arsye të ndryshme: kur futni një captcha, një fotografi hapet me një ose dy fjalë që janë paksa të ndryshme nga sfondi i figurës, përveç kësaj, forma e personazheve është shtrembëruar, fjalët shkruhen me gabime. ; Është e vështirë për një kompjuter të njohë fontet e shtrembëruara dhe tekstin e pakuptimtë, por një person mund ta përdorë këtë për vërtetim.

  1. Hyni nga shfletues të ndryshëm. Ndonjëherë ndihmon.
  2. Kontrolloni shpejtësinë e internetit. Fakti është se me ritme shumë të ulëta imazhi thjesht mund të mos ngarkohet. Ose bëje me gabime.
  3. Sigurohuni që të lejoni që imazhet të shfaqen, sepse një captcha është në thelb një foto. Këshillohet që ta shikoni këtë në cilësimet e duhura. Nëse ka pasur një kufizim, thjesht rregulloni atë dhe rinisni shfletuesin.
  4. Hyni nga faqja kryesore e faqes. Kjo në fakt ndonjëherë funksionon.
  5. Mundohuni të gjeni versionin audio të captcha. Është shumë e mundur që gjithçka të jetë në rregull me aktrimin e zërit.
  6. Mundohuni të regjistroheni ose të kryeni veprimet e nevojshme nga telefoni juaj celular. Ndodh që versioni celular i faqes të funksionojë mirë.
  7. Kontrolli nuk kalon: captcha mund të bie ndesh me softuerin antivirus, ai perceptohet si një element potencialisht i rrezikshëm. Provoni të çaktivizoni antivirusin tuaj dhe të rifreskoni faqen;
  8. Pyetni nëse përdoruesit e tjerë në RuNet po përjetojnë një problem të ngjashëm. Në këtë mënyrë ju do të dini me siguri nëse ky problem lidhet me kompjuterin tuaj.

Me shumë mundësi, një nga këto metoda do të funksionojë. Përndryshe, duhet të kërkoni opsione të tjera.

Epo, në rastet kur nuk është e mundur të shmanget një captcha në mënyrë programore, CAPTCHA futet manualisht duke përdorur punën e njerëzve realë që i dërgojnë këto të dhëna sulmuesit ose zgjidhin captcha në kohë reale falë API-së.

Pra, ne zbuluam mjetet dhe motivet e hakerëve. Le të shohim tani metodat më të zakonshme të anashkalimit të CAPTCHA, duke i renditur ato në dy grupe: ato që janë të mundshme për shkak të gabimeve të programuesit gjatë zbatimit të CAPTCHA dhe ato për të cilat përdoren teknologjitë moderne.

Le të fillojmë me radhë, dhe unë do të përpiqem t'i vendos ato në rendin e rritjes së kompleksitetit të mbrojtjes ndaj tyre, duke filluar nga më primitivet dhe duke përfunduar me ato për të cilat metodat e mbrojtjes nuk janë shpikur ende.

Për të krijuar intriga, do të them se për momentin janë tre të tilla.

Duke anashkaluar captcha për shkak të gabimeve në zbatim

Nëse pyetni krijuesit e zbatimeve të tyre të CAPTCHA se si të anashkaloni captcha-n, ata do t'ju tregojnë të paktën disa mënyra. Por gjëja më interesante është se ata vetë ndonjëherë lënë dritare dhe dyer në krijimet e tyre për hakerim.

Kjo ndodh shpesh për shkak të fajit të faktorit njerëzor, ose më mirë të pavëmendjes së zakonshme gjatë zhvillimit dhe mungesës së përpikmërisë gjatë testimit të sigurisë së captchas.

Por ndonjëherë ka edhe papërvojë, për shkak të së cilës programuesi thjesht nuk ishte në dijeni të disa metodave të anashkalimit të captcha në kohën e zhvillimit.

Siç premtova, në këtë seksion do të shikoj më të zakonshmet, si dhe mënyrat për t'u mbrojtur kundër tyre. Dhe le të fillojmë, siç u premtuam, me gjënë më primitive.

Duke anashkaluar captcha me një grup fiks detyrash

Në agimin e captchas, captchas-të e shkruara vetë ishin shumë të njohura si një mjet për të luftuar robotët, sepse të gjithë donin të provonin teknologjinë e re, dhe si rezultat, captchas u shpikën nga të gjithë ata që nuk ishin shumë dembelë.

Në rastin e përdorimit të kapçave të shkruar vetë, në zbatimin e të cilave zhvilluesit vendosën të mos shqetësohen me një bazë të dhënash të madhe fotografish, pyetjesh ose lloje të tjera detyrash, për një sulm automatik të synuar në një sit me një CAPTCHA të tillë, ju thjesht duhet të gjeni përgjigjet me dorë.

Ato. ne shkojmë në një faqe të tillë, zgjedhim përgjigjet, përpilojmë një bazë të dhënash detyrash dhe zgjidhje të sakta dhe shkruajmë një bot për sulmet me forcë brutale që do të zgjedhë opsionet e përshtatshme.

Por, për fat të mirë, nuk do të mund të hasni shumë situata të tilla në botën moderne, sepse... Siguria kibernetike që atëherë ka arritur një nivel shumë të respektueshëm dhe askush nuk po krijon primitivë të tillë.

Dhe nëse ka njerëz të tillë, atëherë ata shumë shpejt mësojnë nga gabimet e tyre kur humbasin kontrollin e faqes së tyre ose klientëve të cilët janë hakuar për shkak të krijimeve të tilla.

Mbrojtja: Asnjëherë mos krijoni captcha me një sërë detyrash, zgjidhjet për të cilat mund të zgjidhen manualisht. Nëse për të zgjidhur një captcha ju duhet të zgjidhni një shembull matematikor ose të futni karaktere nga një fotografi, atëherë detyrat dhe përgjigjet ndaj tyre duhet të gjenerohen automatikisht.

Një mënyrë tjetër për t'u mbrojtur nga një hyrje e tillë automatike captcha është ndryshimi i emrit të fushës së formularit në të cilën duhet të futet përgjigja. Nëse emri i fushës, për shembull, është gjithmonë "captcha", atëherë do të jetë më e lehtë për një sulmues të thyejë një captcha të tillë. Programi i tij robot thjesht do t'i dërgojë një kërkesë skriptit të serverit të specifikuar në atributin HTML "veprim" të formularit, që përmban vlerën e kërkuar të captcha.

Nëse në këtë situatë emri i fushës captcha është i njëjtë gjatë gjithë kohës, atëherë hakeri thjesht do të përdorë bazën e të dhënave të emrave më të zakonshëm të fushave captcha, të cilat mund t'i përpiloni vetë gjatë studimit të faqeve të ndryshme ose të shkarkoni të gatshme në të specializuara. burime (nuk do t'i rendis për të promovuar hakerimin).

Nëse emri i fushës, si vetë detyra captcha, gjenerohet në server, atëherë asnjë bazë e të dhënave e emrit captcha nuk do të ndihmojë. Për të përdorur një emër të fushës dinamike, në praktikë captcha gjenerohet nga një skript dhe përpunohet nga një tjetër.

Në këtë rast, zbatimi i captcha ka një nuancë domethënëse: skripti që përpunon saktësinë e hyrjes së tij do të duhet të kalojë disi emrin e fushës captcha. Kjo bëhet më së shpeshti duke përdorur një formular të fshehtë të hyrjes, atribute të dhënash ose duke i kaluar ato përmes cookies ose një sesioni.

Pika kryesore është se ju nuk mund ta kaloni emrin drejtpërdrejt, d.m.th. fusha captcha quhet "captcha_mysite" dhe fusha e fshehur përmban vlerën "captcha_mysite" ose "site". Duhet të kodohet dhe deshifrimi duhet të ndodhë duke përdorur të njëjtin algoritëm si kriptimi.

Meqenëse algoritmi i enkriptimit do të ruhet në server, një sulmues nuk do të jetë në gjendje ta njohë lehtësisht atë (përveç nëse ai fiton qasje në përmbajtjen e skriptit të serverit).

Nga rruga, mjafton të përdorni një sekuencë të rastësishme karakteresh në vend të emrit të fushës, i cili është shumë i lehtë për t'u marrë në PHP duke përdorur funksionin uniqid().

Anashkaloni captcha duke përdorur sesionet

Nëse zbatimi i një captcha përfshin ruajtjen e përgjigjes së saktë në një seancë dhe sesioni nuk krijohet përsëri pasi të futet çdo captcha, atëherë sulmuesit mund të zbulojnë identifikuesin e sesionit dhe të zbulojnë vlerën e koduar të CAPTCHA.

Kështu, ata mund të zgjedhin lehtësisht një algoritëm enkriptimi dhe ta përdorin atë për sulme të mëtejshme të automatizuara të forcës brutale duke përdorur bots.

Gjithashtu, nëse në kodin për kontrollin e përgjigjes së përdoruesit në server programuesi nuk kontrollon boshllëkun e variablit të sesionit në të cilin transmetohet përgjigja e përdoruesit, atëherë hakeri mund të përdorë një identifikues sesioni jo-ekzistent për të cilin ndryshorja thjesht do nuk ekziston.

Për shkak të këtij lëshimi, captcha të tilla mund të zgjidhen duke futur ID të sesioneve joekzistente dhe vlera të zbrazëta captcha.

Mbrojtja: Pavarësisht se sa do të dëshironit të hiqnin dorë nga përdorimi i seancave për të transferuar vlerat e captcha, ky është një çmim shumë i lartë për të siguruar sigurinë e captchave nga hakerimi. Prandaj, seancat, vlerat e variablave dhe identifikuesit e tyre thjesht duhet të mbrohen me kujdes në mënyrë që një haker të mos mund të përdorë informacionin e ruajtur në to.

Vlen gjithashtu të kryhen të gjitha kontrollet banale, por aq të nevojshme të variablave për ekzistencën dhe zbrazëtinë e vlerave të tyre.

Thyerja e një captcha për shkak të informacionit sekret në kodin e klientit

Ndonjëherë captchas bëhen në atë mënyrë që kur transferoni vlerat e përdoruesit në server, kriptimi përdoret duke përdorur të ashtuquajturën "kripë", d.m.th. duke shtuar një ID sesioni, vlerë IP ose të dhëna të tjera unike në vlerën CAPTCHA. Shpesh kjo mund të jetë një sekuencë e thjeshtë e rastësishme simbolesh.

Dhe kushti kryesor për zgjidhjen e një captcha është që vlera e koduar CAPTCHA e futur nga përdoruesi të përputhet me vlerën e saj të saktë, e cila u krijua gjatë hapjes së faqes dhe u regjistrua në një seancë ose ruajtje tjetër për transmetim të mëtejshëm në server.

Koincidenca e këtyre vlerave ka shumë të ngjarë të tregojë se përdoruesi është një person real që ka hyrë në captcha-në e krijuar gjatë një sesioni komunikimi, në fund të së cilës ai e zgjidhi atë dhe nga i njëjti kompjuter në të cilin pa për herë të parë captcha.

Nëse këto vlera unike nuk përputhen, atëherë ka shumë të ngjarë që captcha të jetë futur automatikisht nga roboti.

Ky mekanizëm për mbrojtjen e faqes nga robotët është i menduar mirë, por ndonjëherë këto vlera të krijuara sekrete janë të pranishme në kodin HTML të faqes, nga ku mund të lexohen lehtësisht. Prandaj, mund të konfiguroni leximin automatik të tyre duke përdorur programe dhe të njëjtën hyrje automatike kur kaloni një captcha.

Mbrojtja: Kur zbatoni vetë një CAPTCHA, duhet të merrni parasysh këtë vrimë sigurie, dhe nëse për të zgjidhur një captcha duhet të merrni parasysh vlerën e një identifikuesi unik, atëherë duhet të siguroheni që ai të mos përmendet as në JS ose në kodin HTML që mund të shihet në shfletues.

Ju gjithashtu duhet të rikrijoni ID-në e sesionit dhe të gjeneroni vlera të tjera unike (përfshirë vetë CAPTCHA, nëse është e mundur) pas çdo përpjekjeje për të hyrë në captcha, gjë që do t'ju shpëtojë ose të paktën do ta bëjë më të vështirë për hakerët të hakojnë faqen duke duke zgjedhur automatikisht vlerën e duhur.

Një tjetër mjet mbrojtjeje është, nëse është e mundur, bllokimi i veprimeve nga IP dhe numri i përpjekjeve.

Si të anashkaloni captcha pa ndryshuar IP

Sulmi i forcës brutale është një mënyrë efektive për të anashkaluar captcha jo vetëm kur zbatohet me një grup fiks detyrash dhe zgjidhjet e tyre.

Një gabim tjetër në zbatimin e CAPTCHA, i cili e bën atë të prekshëm ndaj sulmeve të automatizuara, është mungesa e kufizimeve kohore për zgjidhjen e një captcha dhe numri i përpjekjeve.

Në këtë rast, do të jetë e mundur të anashkaloni captcha duke përdorur një program të veçantë që do të mbledhë një bazë të dhënash pyetjesh ose do të zgjedhë përgjigjet nga lista e disponueshme. Për më tepër, e gjithë kjo do të bëhet automatikisht falë metodave moderne të mësimit të makinerive dhe zhvillimeve në fushën e inteligjencës artificiale, të cilat kanë bërë një hap të madh përpara viteve të fundit.

Mbrojtja: Kur zbatoni një captcha vërtetë të sigurt, ju duhet të kufizoni kohën për t'u përgjigjur dhe numrin e përpjekjeve për të zgjidhur captcha nga një IP për të bllokuar sulmet me forcë brutale nga robotët.

Për shembull, nëse kanë kaluar më pak se 2 sekonda ndërmjet gjenerimit të një captcha dhe përgjigjes së përdoruesit, atëherë konsiderojeni një përdorues të tillë një robot dhe shfaqni një mesazh përkatës në ekran. Teksti i mesazhit duhet të përmbajë udhëzime për përdoruesit e vërtetë që futja nuk duhet të bëhet kaq shpejt (në rast se personi fizikisht ishte në gjendje ta fuste përgjigjen më shpejt).

Nëse ishte vërtet një person, atëherë ai do të marrë masat e duhura, dhe nëse është robot, ai do të vazhdojë të përpiqet të anashkalojë captcha-n.

Përpjekje të tilla duhet të konsiderohen të pasakta, me numrin e tyre të regjistruar në variablin e sesionit dhe veprimet e mëtejshme të bllokuara për përdoruesit nga IP-ja e tyre. Do të ishte gjithashtu një ide e mirë që adresa të tilla të bllokuara të lëshonin një mesazh për të kontaktuar administratorin në vend të një captcha nëse përdoruesi i bllokuar ishte një person real.

Dhe një mënyrë tjetër efektive për të luftuar robotët është futja e kufijve për veprime të caktuara në sit. Për shembull, një regjistrim nga një IP. Gjëja kryesore këtu nuk është të mbingarkoni dhe të mos arrini kufijtë në numrin e komenteve për një përdorues unik.

Por, në të vërtetë, këto masa nuk do të ndihmojnë shumë falë ekzistencës së serverëve proxy.

Duke anashkaluar captcha duke përdorur një përfaqësues

Edhe në situatat kur ende ndodh bllokimi i një numri të madh përpjekjesh për të zgjidhur një captcha me IP, kjo masë nuk siguron mbrojtje 100% nga robotët.

Kjo është e gjitha për shkak të serverëve proxy dhe programeve anonimizuese që funksionojnë në bazë të tyre, të cilat janë të njohura për ndoshta çdo nxënës modern të shkollës që kërkon mënyra për të anashkaluar kontrollet prindërore dhe për të bllokuar faqet e ndaluara.

Anonimizuesit ju lejojnë të fshehni të dhënat e kompjuterit kur përdorni sitin, duke përfshirë adresën IP të çmuar, me anë të së cilës klienti mund të identifikohet dhe bllokohet.

Skema është e thjeshtë: përdoruesi lidhet me një server proxy, ku të dhënat e tij kodohen ose zëvendësohen me të tjerë (për shembull, mund t'ju caktohet një adresë IP nga një vend tjetër), dhe më pas bëhet një kërkesë në faqen e synuar në të cilën klienti dëshiron të lidhet.

Kështu, një sulmues mund të anashkalojë lehtësisht të gjitha blloqet tuaja IP dhe do të zgjedhë zgjidhjen e duhur për captcha për aq kohë sa i nevojitet.

Dhe në disa sajte ku captcha shfaqet vetëm kur kryeni një numër të madh veprimesh identike (për shembull, në VK kur shtoni një numër të madh miqsh), mund të mos shfaqet fare nëse çdo veprim kryhet nga një IP e re dhe me afate kohore. ndërmjet përpjekjeve për të zgjidhur captcha-n, në mënyrë që sjellja e robotit të jetë e ngjashme me sjelljen e një personi real.

Kjo metodë është përdorur gjysmë shekulli më parë gjatë shkrimit të programeve të para për të kaluar testin Turing, zbatimi i të cilit është CAPTCHA.

Parimet e përshkruara, nga rruga, përdoren nga të gjitha programet e njohura aktualisht për futjen automatike të captcha. Për të ndryshuar adresën IP të lidhjes me një faqe, ata përdorin bazat e të dhënave falas dhe komerciale të serverëve proxy, të cilat nuk janë të vështira për t'u marrë nëse keni internet.

Mbrojtja: Fatkeqësisht, nuk ka asnjë mënyrë për të mbrojtur veten nga hakimi i captcha duke gjurmuar sulmuesit me IP, falë pranisë së anonimizuesve dhe bazave të të dhënave të hapura PROXY.

Shpresa e vetme është që vetë serverët PROXY mund të vendosin kufizime në numrin e IP-ve të përdorura nga një përdorues dhe numrin e lidhjeve nga secili prej tyre.

Për këtë arsye, nuk duhet ta braktisni plotësisht verifikimin e IP-së. Falë masave tuaja paraprake që mbrojnë kundër anashkalimit të captcha, do të jeni në gjendje të bllokoni hakerin në një nivel ose në një tjetër herët a vonë.

Dhe përfundimi më i saktë në këtë situatë do të ishte përdorimi, përveç kësaj metode të mbrojtjes kundër hakerimit të captcha, të tjera që ndihmojnë në ekspozimin e hakerit në një mënyrë tjetër.

Futja automatike e captcha duke përdorur emulatorët e veprimit

Nëse për të përfunduar një CAPTCHA ju duhet të kryeni një veprim të caktuar (klikimi i një butoni, lëvizja e një rrëshqitësi, etj.), atëherë gjithashtu mund të anashkaloni captcha në këtë situatë duke emuluar veprimin e nevojshëm (duke klikuar në një element të caktuar kontrolli ose një veprim tjetër ).

Problemi i vetëm me të cilin mund të përballet një haker në këtë situatë është se si të gjejë kontrollin e dëshiruar në faqe në mënyrë programore.

Mënyra më e lehtë për ta bërë këtë është me koordinatat ose pozicionin e tij në lidhje me disa elementë statikë të burimit.

Mbrojtja: Për t'u mbrojtur nga hyrja automatike e captcha në këtë rast, duhet të ndryshoni vazhdimisht pozicionin e elementit të kontrollit që ju lejon të zgjidhni CAPTCHA. Ato. Nëse nga tre persona duhet të zgjidhni vetëm atë të cilit i është ngritur dora, në asnjë rast nuk duhet të vendoset vazhdimisht në të njëjtin vend.

Epo, në rastet e zbatimeve të tjera captcha, kur kjo nuk është e mundur (për shembull, për një buton shkarkimi ose fushën "Unë nuk jam robot", e cila mund të ketë vetëm një përgjigje të saktë), është e nevojshme të përdoren metoda të tjera mbrojtjeje. që mund të ndalojë robotët të zgjidhin automatikisht captcha-n.

Si të anashkaloni captcha duke përdorur teknologjinë e lartë

Ne kemi parë pikat e dobëta të implementimeve të CAPTCHA, të cilat janë vrima sigurie dhe janë më të zakonshmet në praktikë. Sidoqoftë, në praktikë, edhe kapçat më të patëmetë ndonjëherë nuk janë në gjendje të mbrojnë burimin që i përdor ato nga sulmet e hakerëve.

Këto raste të hakimit të captcha janë pasojë e drejtpërdrejtë e progresit modern dhe nivelit të zhvillimit të teknologjisë kompjuterike, e cila, siç e dimë, jo gjithmonë përdoret për qëllime të mira.

Pra, si të shmangni captcha duke përdorur teknologjinë moderne?

Anashkaloni captcha duke përdorur OCR

OCR (Optical Character Recognition) është një teknologji për njohjen e tekstit të shtypur ose të shtypur për përdorim të mëtejshëm në format elektronik. Softueri më i njohur që zbaton këtë teknologji është Adobe FineReader.

Përdoret me sukses në krijimin e programeve automatike të hyrjes captcha që njohin dhe zgjidhin me sukses captcha grafike, për të përfunduar të cilat duhet të futni sekuencën e karaktereve të treguar në foto.

Hakerët, natyrisht, nuk përdorin Adobe FineReader (megjithëse mund të ketë disa 🙂), por shkruajnë skripta speciale që, duke përdorur biblioteka të ndryshme të gatshme për të punuar me imazhe ose duke përdorur aftësitë e gjuhës për të punuar me grafika, njohin captcha dhe prodhojnë një sekuencë karakteresh, të përshkruar në të.

Kam gjetur një numër të mjaftueshëm shembujsh të skripteve të tilla në internet. Parimi i punës së tyre ishte si më poshtë:

  • pastrimi i imazhit të përdorur në CAPTCHA grafike nga zhurma të ndryshme;
  • ndarjen e vargut të shfaqur në karaktere individuale;
  • krahasimi i secilës prej tyre me një foto (kampion) të përgatitur.

Mostrat grafike u përgatitën duke marrë parasysh fontet e ndryshme dhe shtrembërimet e mundshme (animet, rrotullimet, etj.).

Siç mund ta keni marrë me mend, gjëja më e rëndësishme është të përpiloni një bazë të dhënash të imazheve të simboleve në variacione të ndryshme, me të cilat simbolet captcha do të krahasohen më pas.

Mbrojtja: në fakt, për të ngatërruar programet OCR, përdoren zhurma të bezdisshme dhe shtrembërime të personazheve në foto, për shkak të të cilave teksti ndonjëherë është i vështirë për t'u kuptuar edhe për një person. Por, në rastin e robotëve, edhe kjo funksionon mirë, si rezultat i së cilës algoritmet OCR nuk mund të prodhojnë një rezultat 100% të saktë, gjë që ndikon pozitivisht në sigurinë e captcha-s dhe faqeve që e përdorin atë.

Nëse vendosni të përdorni kapça grafike, për të cilat duhet të futni karakteret e treguara në foto, atëherë duhet të ndiqni rekomandimet e mëposhtme:

  1. Simbolet në CAPTCHA të ndryshme duhet të kenë koordinata të ndryshme.
  2. Nëse përdorni ndonjë efekt zhurme për të krijuar një sfond, atëherë ngjyra e tij duhet të përputhet me ngjyrën e karaktereve, përndryshe sfondi mund të hiqet lehtësisht duke theksuar karakteret për njohje.
  3. Distanca midis personazheve duhet të jetë minimale. Ju madje mund t'i vendosni ato njëra mbi tjetrën, por vetëm pa fanatizëm, në mënyrë që përdoruesit e vërtetë t'i njohin ato.
  4. Përdorni shkronja të ndryshme për ta bërë të vështirë zgjedhjen e atij të duhurit për njohje.
  5. Shtrembëroni personazhet në çdo mënyrë të mundshme, ndryshoni stilin dhe trashësinë e tyre.
  6. Përdorni biblioteka të veçanta që ju lejojnë të ndryshoni karakteret në atë mënyrë që të jetë e pamundur të zgjidhni një font për njohjen e softuerit të tyre. Një shembull i një zgjidhjeje të tillë është një captcha nga krijuesi i burimit captcha.ru, i cili krijohet duke përdorur algoritmin e shtrembërimit të simboleve të ngjashme me valën e autorit.

Të gjitha këto masa bëjnë të mundur komplikimin e njohjes së captcha grafike për sistemet OCR dhe zvogëlimin e numrit të hyrjeve automatike captcha.

Si të kaloni një captcha duke përdorur rrjetet nervore

Nëse OCR është një teknologji mjaft e vjetër (pajisjet e para të patentuara njiheshin në fillim të shekullit të 20-të), atëherë rrjetet nervore artificiale (ANN) u shfaqën vetëm në gjysmën e dytë të shekullit të kaluar (50 vjet është një moshë domethënëse për teknologjitë : )).

Janë algoritmet ANN që qëndrojnë në themel të inteligjencës artificiale (AI), qëllimi i të cilave është krijimi i programeve dhe pajisjeve të pajisura me funksione krijuese, d.m.th. krijimi i njeriut të krijuar nga njeriu.

Për momentin, AI po zhvillohet vazhdimisht dhe çdo ditë shfaqen shpikje të reja që kanë veti të papara më parë.

Në konferencën e fundit për rrjetet nervore ku mora pjesë, u raportua se Google, e cila është e përfshirë në mënyrë aktive në zhvillimet në këtë fushë, tashmë ka shpallur shërbime publike cloud të bazuara në ANN.

Duke i përdorur ato ju mund të:

  • të njohë objektet në fotografi (nga gjinia e personit të paraqitur dhe marka e xhinseve të tij deri te cilës loje i përket fotografia e analizuar, me të gjithë paletën e ngjyrave, emrin e vendndodhjes dhe çfarë po ndodh në të);
  • kontrolloni pajisjet me zë dhe gjeste;
  • shkruani shënime për videot bazuar në atë që ndodh në video, etj.

Natyrisht, me këto aftësi, krijimi i një programi për futjen automatike të captcha duke përdorur parimet ANN nuk është i vështirë për njerëzit e ditur.

Një produkt i tillë u zhvillua nga Vicarious në 2014. Rrjeti nervor që ajo zhvilloi është në gjendje të njohë captchas në 90% të rasteve (më lejoni t'ju kujtoj se për të zgjidhur testin klasik të Turing, që është CAPTCHA, nevojiten vetëm 1% të përgjigjeve të sakta).

Mbrojtja: Fatkeqësisht, është e pamundur të mbrohesh nga ky lloj sulmi. Dhe për fat të mirë, ANN nga Vicarious nuk do të përdoret për sulme të synuara për të anashkaluar captcha në faqet e internetit, sepse ... është shumë e shtrenjtë për detyra kaq të vogla (vetë prodhuesit thonë se është një grup i shumë serverëve). Fusha kryesore e aplikimit të saj është zgjidhja e problemeve të ndryshme në mjekësi dhe robotikë.

Dhe thyerja e captcha me ndihmën e saj është vetëm një demonstrim i aftësive të tij.

Por koha kalon, teknologjitë që ishin të shtrenjta vetëm dje po bëhen më të lira dhe nuk është e largët koha kur produktet ANN do të përhapen. Prandaj, është mjaft e mundshme që në të ardhmen të ketë bot për hyrje automatike në captcha, të pajisur me inteligjencë artificiale.

Anashkaloni captcha duke përdorur shërbimet publike

Ndërsa sistemet OCR dhe AI ​​u zhvilluan, kompleksiteti i kapçave grafike u bë gjithnjë e më kompleks, gjë që i lejoi zhvilluesit e tyre të bënin përpjekje të mëdha gjatë zbatimit. Por gjithsesi dolën të kota, sepse... ata nuk siguruan mbrojtje 100% për faqet kundër sulmeve të automatizuara.

Prandaj, Google mori, siç më duket mua, rrugën e duhur dhe vendosi të shpikë thjesht një standard të ri noCAPTCHA, duke braktisur futjen manuale të personazheve nga fotografitë.

Gjatë zhvillimit të reCAPTCHA noCAPTCHA, ne përdorëm përvojën e luftimit të robotëve në epokën e lindjes së captcha-s dhe zhvillimet moderne në fushën e inteligjencës artificiale, e cila na lejon të sigurojmë nivelin e duhur të sigurisë së faqes, por edhe të mos e bëjmë jetën shumë të vështirë. për përdoruesit e internetit.

Por, përkundër faktit se ky standard u shfaq mjaft kohët e fundit, në vitin 2015, tashmë është gjetur një mënyrë për ta zgjidhur atë automatikisht. Dhe nuk qëndron në përdorimin e inteligjencës artificiale.

Gjithçka është shumë më banale - për të kaluar Google reCAPTCHA, thjesht duhet të përdorni shërbimet e vetë Google për njohjen e imazhit dhe të folurit.

Njohja e imazhit në rastin e reCAPTCHA v2 (i njëjti noCAPTCHA) nuk ka gjasa të ndihmojë, sepse për detyra grafike, duhet të zgjidhni imazhe që përmbajnë objektet e nevojshme dhe të mos futni simbolet e paraqitura, siç ishte rasti në versionin e mëparshëm.

Por shërbimet e shërbimit të njohjes së të folurit Google, i cili është një nga arritjet e Google në fushën e inteligjencës artificiale, i cili u përmend në metodën e mëparshme të anashkalimit të captcha, do të jenë shumë të dobishme. Meqenëse shërbimi ofron një API, krijimi i një aplikacioni bazuar në të nuk është i vështirë.

Mbrojtja: Fatkeqësisht, në këtë situatë, si në atë të mëparshmen, ku ANN u përdorën për të anashkaluar captcha-n, nuk do të jetë e mundur të mbroheni nga bypass-i captcha. E vetmja pikë pozitive sërish është disponueshmëria relative e shërbimeve të përshtatshme, sepse... Google ju jep vetëm një provë prej 300 dollarësh për t'i përdorur ato.

Pas përfundimit të tyre, shërbimet bëhen të paguara. Por kjo nuk ka gjasa të jetë një pengesë për hakerat, sepse... Ata mund të fitojnë edhe më shumë nga sulmet që përdorin hyrjen automatike të captcha.

Pra, në rastin e përdorimit të shërbimeve të njohjes së të folurit dhe imazhit për të thyer captcha, shpresa e vetme mbetet është vigjilenca e administratës së tyre, e cila mund të bllokojë llogarinë nëse zbulon se ajo përdoret ekskluzivisht për qëllimet e përshkruara.

Si të kaloni një captcha duke përdorur punën njerëzore

Për të plotësuar listën e mënyrave për të anashkaluar captcha, vendosa të shqyrtoj një që nuk përshtatet në asnjë nga kategoritë e listuara më sipër.

Ai nuk bazohet në shfrytëzimin e dobësive të implementimeve të CAPTCHA dhe përdorimin e teknologjive moderne, por bazohet në dëshirën e natyrshme të njeriut për të fituar para.

Dhe në të njëjtën kohë, kjo metodë ndihmon për të thyer një captcha të çdo kompleksiteti në 100% të rasteve dhe, për më tepër, për ta bërë këtë pa shumë përpjekje financiare, fizike dhe morale.

Ne po flasim për një nga metodat moderne të fitimit të parave - e cila, nga rruga, u shfaq rreth kohës kur CAPTCHA u bë e vështirë për t'u njohur në mënyrë programore.

Thelbi i tij është se po krijohet një shërbim special që gjoja u lejon njerëzve të fitojnë para (kryesisht të vogla, të cilat mund të jenë të mjaftueshme vetëm për indianët ose nxënësit e shkollës që kërkojnë ndonjë mënyrë për të marrë para) duke zgjidhur manualisht captchas.

Dhe kushdo që ka nevojë për zgjidhjet e tyre mund t'i sigurojë këto captcha.

Në thelb, këta janë hakerë që përdorin përgjigjet e përdoruesve të vërtetë për qëllimet e tyre egoiste:

  • automatizimi i fitimeve;
  • dërgimi i spamit;
  • blerja e biletave dhe mallrave në dyqanet online për rishitje më të shtrenjtë;
  • hakimi i faqes në internet, etj.

Për ta bërë procesin më të përshtatshëm, shërbimet madje ofrojnë një API, falë të cilit captcha mund të plotësohet në internet. Ato. përdoruesi fut një captcha përmes shërbimit dhe në këtë kohë përgjigja e tij përdoret për të konfirmuar blerjen në internet.

Shumë zejtarë në fushën e programimit, meqë ra fjala, mund të përdorin punën njerëzore absolutisht pa pagesë. Për shembull, kështu fitojnë jetesën pronarët e faqeve pornografike, shërbimeve të ndarjes së skedarëve, torrenteve dhe burimeve të tjera të dyshimta që ofrojnë shërbime falas.

Ata supozohet se u ofrojnë përdoruesve përmbajtje të vlefshme falas, duke kërkuar që ne të konfirmojmë që ju jeni një person dhe jo një robot, me ndihmën e të cilit sulmuesit përdorin produktet e tyre për qëllimet e tyre.

Natyrisht, ne nuk mendojmë për një kohë të gjatë, sepse... marrja e mundësisë për të shkarkuar një film të shumëpritur në cilësi HD absolutisht falas duke kontrolluar disa kuti në kutinë "Unë nuk jam robot" është thjesht një gjë e vogël. Ndërkohë, veprimi juaj API përdoret për të anashkaluar captcha në një faqe tjetër të palës së tretë.

Prandaj morali: mbani mend gjithmonë se djathi falas është vetëm në kurthin e miut dhe asgjë nuk është falas.

Mbrojtja: Fatkeqësisht, sot kjo është metoda më efektive për të anashkaluar captcha, kundër së cilës nuk ka asnjë mjet mbrojtjeje. Dhe kjo nuk do të ndodhë derisa ata që duan të fitojnë qindarkë përmes punës së palodhur dhe dashamirët e përmbajtjes falas nuk janë zhdukur, d.m.th., ka shumë të ngjarë kurrë.

Duke anashkaluar captcha - përfundime

Ndërsa shkruajta këtë artikull, arrita në përfundimin se captcha, megjithë idenë e shkëlqyer me të cilën u konceptua, domethënë mbrojtjen e faqeve nga robotët, ka pushuar prej kohësh së përmbushuri funksionet e saj.

Nëse ende mund të mbroheni nga anashkalimet e automatizuara të captcha që përdorin pika të dobëta në implementimet CAPTCHA duke eliminuar të gjitha problemet me sigurinë e tyre, atëherë është thjesht e pamundur të mbroheni nga futja e captcha nga përdoruesit e vërtetë për para.

I vetmi hir shpëtimtar në gjithë këtë situatë është se ata paguajnë shuma qesharake parash për këtë lloj pune dhe pak njerëz pranojnë ta bëjnë atë, kështu që shkalla e sulmeve kibernetike duke përdorur hyrjen automatike të captcha nuk është aq katastrofike sa mund të ishte.

Gjithashtu, metodat "të pathyeshme" të anashkalimit të captcha përfshijnë teknologjitë e inteligjencës artificiale, të cilat janë zhvilluar në mënyrë aktive vitet e fundit.

Në të njëjtën kohë, për t'ua bërë jetën më të vështirë hakerëve, captch-at "fryhen" vazhdimisht me funksionalitete të reja, gjë që e bën përfundimin e tyre një detyrë të vështirë dhe të lodhshme edhe për përdoruesit e vërtetë të faqes.

Mos harroni të njëjtën Google reCAPTCHA: kontrolloni kutinë, nëse Google nuk i pëlqeu diçka, zgjidhni fotografitë e nevojshme (nga rruga, unë kam ende probleme me shenjat rrugore, sepse mund ta kryej një detyrë të tillë diku me 5 përpjekje). A është shumë mundim të lini një koment ose të regjistroheni në faqe? Është më e lehtë të gjesh një burim tjetër...

Por, pavarësisht nga këto masa paraprake, captcha aktualisht nuk mund të quhet një mënyrë ideale për t'u mbrojtur nga robotët, për të cilën shumë njerëz e kritikojnë dhe po përpiqen të kërkojnë alternativa.

Në të njëjtën kohë, fakti që CAPTCHA vazhdon të përdoret si një teknologji e sigurisë kibernetike dhe po zhvillohet vazhdimisht, përfshirë nga Google, i cili nuk do të investojë para në projekte të dyshimta, sugjeron që kjo teknologji do të ekzistojë për një kohë të gjatë.

Prandaj, kur zhvilloni dhe mbështesni faqet ekzistuese që përdorin captcha, është e nevojshme të përdorni në mënyrë aktive rekomandimet e përshkruara në mënyrë që t'ua bëni jetën sa më të vështirë hakerëve që të hakojnë softuerin e tyre.

Dhe mos harroni të ndani mendimet tuaja për metodat ekzistuese të anashkalimit të captchas dhe masat për t'u mbrojtur kundër tyre në komentet nën artikull :)

P.S.: nëse keni nevojë për një faqe interneti ose keni nevojë të bëni ndryshime në një ekzistuese, por nuk ka kohë ose dëshirë për këtë, unë mund të ofroj shërbimet e mia.

Me shume se 5 vite eksperience zhvillimi profesional i faqes në internet. Punojnë me PHP, OpenCart, WordPress, Laravel, Yii, MySQL, PostgreSQL, JavaScript, Reagoni, Këndore dhe teknologji të tjera të zhvillimit të uebit.

Përvojë në zhvillimin e projekteve në nivele të ndryshme: faqet e uljes, faqet e internetit të korporatave, Dyqane online, CRM, portaleve. Përfshirë mbështetjen dhe zhvillimin Projektet HighLoad. Dërgoni aplikacionet tuaja me email [email i mbrojtur].

Ka mënyra të ndryshme për të anashkaluar CAPTCHA që mbrojnë faqet e internetit. Së pari, ka shërbime speciale që përdorin punë të lirë manuale dhe ofrojnë zgjidhjen e 1000 captcha për fjalë për fjalë 1 dollarë. Si alternativë, mund të provoni të shkruani një sistem inteligjent që, duke përdorur algoritme të caktuara, do të kryejë vetë njohjen. Kjo e fundit tani mund të zbatohet duke përdorur një mjet të veçantë.

Zgjidh CAPTCHA

Njohja e CAPTCHA është më shpesh një detyrë jo e parëndësishme. Është e nevojshme të aplikohen shumë filtra të ndryshëm në imazh për të hequr shtrembërimet dhe zhurmën, të cilat zhvilluesit duan të përdorin për të forcuar mbrojtjen. Shpesh ju duhet të zbatoni një sistem mësimi të bazuar në rrjetet nervore (kjo, meqë ra fjala, nuk është aq e vështirë sa mund të duket) për të arritur një rezultat të pranueshëm në zgjidhjen e automatizuar të captcha. Për të kuptuar se për çfarë po flas, është më mirë të hapni arkivin dhe të lexoni artikujt e mrekullueshëm "Cracking CAPTCHA: teori dhe praktikë. Le të kuptojmë se si thyhen captchas" dhe "Le të shohim dhe të njohim. Hakimi i filtrave Captcha" nga numrat #135 dhe #126, respektivisht. Sot dua t'ju tregoj për zhvillimin e TesserCap, të cilin autori e quan një zgjidhës universal CAPTCHA. Një gjë kurioze, çfarëdo që mund të thotë dikush.

Shikoni së pari TesserCap

Çfarë bëri autori i programit? Ai shikoi se si zakonisht trajtohet problemi i zgjidhjes së automatizuar të CAPTCHA dhe u përpoq ta përmbledhë këtë përvojë në një mjet. Autori vuri re se për të hequr zhurmën nga një imazh, domethënë për të zgjidhur problemin më të vështirë në njohjen e kapçave, përdoren më shpesh të njëjtët filtra. Rezulton se nëse zbatoni një mjet të përshtatshëm që ju lejon të aplikoni filtra në imazhe pa transformime komplekse matematikore dhe ta kombinoni atë me një sistem OCR për njohjen e tekstit, mund të merrni një program plotësisht të zbatueshëm. Kjo është, në fakt, ajo që bëri Gursev Singh Kalra nga McAfee. Pse ishte e nevojshme kjo? Autori i programit vendosi të kontrollojë në këtë mënyrë se sa të sigurta janë kapjet e burimeve të mëdha. Për testim, ne zgjodhëm ato faqe interneti që janë më të vizituarat sipas shërbimit të njohur të statistikave. Kandidatët për pjesëmarrje në testim përfshinin monstra të tillë si Wikipedia, eBay dhe ofruesi i captcha reCaptcha.

Nëse marrim parasysh në terma të përgjithshëm parimin e funksionimit të programit, ai është mjaft i thjeshtë. Captcha origjinale hyn në sistemin e para-përpunimit të imazhit, i cili pastron captcha-n nga çdo zhurmë dhe shtrembërim dhe transferon imazhin që rezulton përmes një transportuesi në sistemin OCR, i cili përpiqet të njohë tekstin në të. TesserCap ka një ndërfaqe grafike interaktive dhe ka vetitë e mëposhtme:

  1. Ka një sistem universal të para-përpunimit të imazhit që mund të konfigurohet për çdo captcha individuale.
  2. Përfshin motorin e njohjes Tesseract, i cili nxjerr tekst nga një imazh CAPTCHA i analizuar dhe përgatitur paraprakisht.
  3. Mbështet përdorimin e kodimeve të ndryshme në sistemin e njohjes.

Unë mendoj se kuptimi i përgjithshëm është i qartë, kështu që ju sugjeroj të shihni se si duket. Shkathtësia e mjetit nuk mund të çonte në ndërlikimin e ndërfaqes së tij, kështu që dritarja e programit mund të çojë në një hutim të lehtë. Pra, përpara se të kaloni drejtpërdrejt në njohjen e kapçave, ju sugjeroj të kuptoni ndërfaqen e tij dhe funksionalitetin e integruar.


Para-përpunimi dhe nxjerrja e imazhit
tekst nga captcha

Rreth

Nuk mund të mos thoshim të paktën disa fjalë për autorin e mjetit të mrekullueshëm TesserCap. Emri i tij është Gursev Singh Kalra. Ai është një konsulent kryesor për divizionin e shërbimeve profesionale të Foundstone, pjesë e McAfee. Gursev ka folur në konferenca të tilla si ToorCon, NullCon dhe ClubHack. Ai është autor i veglave TesserCap dhe SSLSmart. Përveç kësaj, ai zhvilloi disa mjete për nevojat e brendshme të kompanisë. Gjuhët e preferuara të programimit janë Ruby, Ruby on Rails dhe C#. Divizioni i shërbimeve profesionale të Foundstone®, ku ai punon, u ofron organizatave shërbime dhe trajnime të ekspertëve për të siguruar që asetet e tyre të mbrohen vazhdimisht dhe në mënyrë efektive nga kërcënimet më sfiduese. Ekipi i Shërbimeve Profesionale përbëhet nga ekspertë dhe zhvillues të njohur të sigurisë me përvojë të gjerë duke punuar me korporata ndërkombëtare dhe agjenci qeveritare.

Ndërfaqja. Skeda kryesore

Pas nisjes së programit, na paraqitet një dritare me tre skeda: Main, Options, Image Paraprocessing. Skeda kryesore përmban kontrolle që përdoren për të nisur dhe ndalur testin e imazhit CAPTCHA, për të gjeneruar statistika testimi (sa janë hamendësuar dhe sa jo), për të lundruar dhe për të zgjedhur një imazh për përpunim paraprak. Fusha e hyrjes së URL-së (kontrolli #1) duhet të përmbajë URL-në e saktë që aplikacioni i uebit përdor për të marrë captchas. URL-ja mund të merret duke klikuar në anën e djathtë të imazhit CAPTCHA, duke kopjuar ose parë kodin e faqes dhe duke nxjerrë URL-në nga atributi src i etiketës së imazhit ..site/common/rateit/captcha.asp?. Pranë rreshtit të adresës ka një element që specifikon numrin e kapçave që duhet të shkarkohen për testim. Meqenëse aplikacioni mund të shfaqë vetëm 12 imazhe në të njëjtën kohë, ai ofron kontrolle për shfletimin faqe për faqe të kapçave të shkarkuar. Kështu, gjatë testimit në shkallë të gjerë, ne do të jemi në gjendje të lëvizim nëpër kapça-të e shkarkuar dhe të shohim rezultatet e njohjes së tyre. Butonat Start dhe Stop fillojnë dhe ndalojnë testimin, përkatësisht. Pas testimit, duhet të vlerësoni rezultatet e njohjes së imazhit, duke e shënuar secilën prej tyre si të saktë ose të pasaktë. Epo, funksioni i fundit, më domethënës shërben për të transferuar çdo imazh në një sistem para-përpunimi, në të cilin vendoset një filtër që heq zhurmën dhe shtrembërimin nga imazhi. Për të dërguar një imazh në sistemin e parapërpunimit, klikoni me të djathtën mbi imazhin e dëshiruar dhe zgjidhni "Dërgo në paraprocesorin e imazhit" nga menyja e kontekstit.

Ndërfaqja. Skeda e opsioneve

Skeda Options përmban kontrolle të ndryshme për konfigurimin e TesserCap. Këtu mund të zgjidhni një sistem OCR, të vendosni parametrat e proxy në internet, të aktivizoni ridrejtimin dhe përpunimin paraprak të imazhit, të shtoni tituj të personalizuar HTTP dhe gjithashtu të specifikoni gamën e karaktereve për sistemin e njohjes: numra, shkronja të vogla, shkronja të mëdha, karaktere speciale.

Tani për secilin opsion në më shumë detaje. Para së gjithash, ju mund të zgjidhni një sistem OCR. Si parazgjedhje, vetëm një është i disponueshëm - Tesseract-ORC, kështu që nuk duhet të shqetësoheni me zgjedhjen këtu. Një tjetër veçori shumë interesante e programit është zgjedhja e një sërë personazhesh. Le të marrim, për shembull, një captcha nga faqja - është e qartë se nuk përmban një shkronjë të vetme, por përbëhet vetëm nga numra. Pra, pse na duhen karaktere shtesë që vetëm sa do të rrisin gjasat e njohjes së gabuar? Por, çka nëse zgjidhni shkronja të mëdha? A do të jetë në gjendje programi të njohë një captcha të përbërë nga shkronja të mëdha në ndonjë gjuhë? Jo, ai nuk mundet. Programi merr listën e karaktereve të përdorura për njohjen nga skedarët e konfigurimit të vendosur në \Program Files\Foundstone Free Tools\TesserCap 1.0\tessdata\configs. Më lejoni të shpjegoj me një shembull: nëse kemi zgjedhur opsionet Numerics dhe Lower Case, programi do të hyjë në skedarin numerik më të ulët, duke filluar me parametrin tessedit karakter listën e bardhë. Kjo pasohet nga një listë e karaktereve që do të përdoren për të zgjidhur captcha. Si parazgjedhje, skedarët përmbajnë vetëm shkronja të alfabetit latin, kështu që për të njohur alfabetin cirilik duhet të zëvendësoni ose plotësoni listën e karaktereve.

Tani pak rreth asaj se për çfarë nevojitet fusha Http Request Headers. Për shembull, në disa faqe interneti ju duhet të identifikoheni për të parë captcha. Në mënyrë që TesserCap të ketë akses në captcha, programi duhet të kalojë tituj të tillë si Accept, Cookie dhe Referrer, etj. në kërkesën HTTP. Duke përdorur një përfaqësues web (Fiddler, Burp, Charles, WebScarab, Paros, etj.), ju mund të përgjojë titujt e kërkesave që dërgohen dhe t'i fusë në fushën e hyrjes së titullit të kërkesës Http. Një tjetër opsion që patjetër do të jetë i dobishëm është Ndiqni Ridrejtimet. Gjë është se TesserCap nuk ndjek ridrejtimet si parazgjedhje. Nëse URL-ja e testimit duhet të ndjekë një ridrejtim për të marrë imazhin, duhet të zgjidhni këtë opsion.

Epo, ka mbetur një opsion i fundit, aktivizimi/çaktivizimi i mekanizmit të parapërpunimit të imazhit, të cilin do ta shqyrtojmë më tej. Si parazgjedhje, parapërpunimi i imazhit është i çaktivizuar. Përdoruesit fillimisht konfigurojnë filtrat e para-përpunimit të imazhit sipas imazheve CAPTCHA që testohen dhe më pas aktivizojnë këtë modul. Të gjitha imazhet CAPTCHA të ngarkuara pas aktivizimit të opsionit "Aktivizo parapërpunimin e imazhit" përpunohen paraprakisht dhe më pas dërgohen në sistemin Tesseract OCR për nxjerrjen e tekstit.

Ndërfaqja. Skeda e parapërpunimit të imazhit

Epo, kemi arritur në skedën më interesante. Pikërisht këtu konfigurohen filtrat për të hequr zhurmat dhe turbullimet e ndryshme nga captchas, të cilat përpiqen të komplikojnë sa më shumë detyrën e sistemit të njohjes. Procesi i vendosjes së një filtri universal është jashtëzakonisht i thjeshtë dhe përbëhet nga nëntë hapa. Në çdo fazë të përpunimit paraprak të imazhit, shfaqen ndryshimet në imazh. Përveç kësaj, faqja ka një komponent verifikimi që ju lejon të vlerësoni korrektësinë e njohjes së captcha kur aplikohet një filtër. Le të shohim në detaje çdo fazë.

Faza 1. Përmbysja e ngjyrës

Në këtë fazë, ngjyrat e pikselit për imazhet CAPTCHA janë të përmbysura. Kodi më poshtë tregon se si ndodh kjo:

Për (çdo piksel në CAPTCHA) (nëse (e kuqja e përmbysur është e vërtetë) e kuqe e re = 255 - e kuqe aktuale nëse (invertBlu është e vërtetë) blu e re = 255 - blu aktuale nëse (invertGreen është e vërtetë) jeshile e re = 255 - jeshile aktuale)

Përmbysja e një ose më shumë ngjyrave shpesh hap mundësi të reja për vërtetimin e imazhit CAPTCHA që po testohet.

Faza 2. Ndryshimi i ngjyrës

Në këtë hap, ju mund të ndryshoni përbërësit e ngjyrave për të gjithë pikselët në imazh. Çdo fushë numerike mund të përmbajë 257 (−1 deri në 255) vlera të mundshme. Për komponentët RGB të çdo piksel, në varësi të vlerës në fushë, kryhen veprimet e mëposhtme:

  1. Nëse vlera është -1, komponenti përkatës i ngjyrës nuk ndryshon.
  2. Nëse vlera nuk është -1, të gjithë përbërësit e gjetur të ngjyrës së specifikuar (e kuqe, jeshile ose blu) ndryshojnë sipas vlerës së futur në fusha. Një vlerë prej 0 heq komponentin, një vlerë prej 255 përcakton intensitetin e tij maksimal, etj.

Faza 3: Shkallët gri (Shkallëzimi i grisë)

Në hapin e tretë, të gjitha imazhet konvertohen në imazhe në shkallë gri. Ky është hapi i vetëm i detyrueshëm në konvertimin e imazhit që nuk mund të anashkalohet. Në varësi të butonit të zgjedhur, një nga veprimet e mëposhtme kryhet në lidhje me përbërësin e ngjyrave të çdo piksel:

  1. Mesatare -> (E kuqe + Jeshile + Blu)/3.
  2. Njeriu -> (0,21 * E kuqe + 0,71 * E gjelbër + 0,07 * Blu).
  3. Mesatarja e komponentëve minimale dhe maksimale të ngjyrave -> (Minimumi (E kuqe + Jeshile + Blu) + Maksimumi (E kuqe + Jeshile + Blu))/2.
  4. Minimumi -> Minimumi (E kuqe + Jeshile + Blu).
  5. Maksimumi -> Maksimumi (E kuqe + Jeshile + Blu).

Në varësi të intensitetit dhe shpërndarjes së përbërësit të ngjyrave të CAPTCHA, secili prej këtyre filtrave mund të përmirësojë imazhin e nxjerrë për përpunim të mëtejshëm.


Faza 4: Zbutja dhe mprehja

Për ta bërë më të vështirë nxjerrjen e tekstit nga imazhet CAPTCHA, atyre u shtohet zhurma në formën e pikave me një dhe shumë piksel, linja të jashtme dhe shtrembërime hapësinore. Kur një imazh zbutet, zhurma e rastësishme rritet, e cila më pas hiqet duke përdorur filtrat Bucket ose Cutoff. Në fushën numerike Passes, duhet të tregoni se sa herë duhet të aplikoni maskën përkatëse të imazhit përpara se të kaloni në hapin tjetër. Le të shikojmë përbërësit e filtrit kundër alifikimit dhe mprehjes. Dy lloje të maskave të imazhit janë në dispozicion:

  1. Maska fikse. Si parazgjedhje, TesserCap ka gjashtë nga maskat më të njohura të imazhit. Këto maska ​​mund të zbutin imazhin ose ta mprehin atë (transformimi i Laplace). Ndryshimet shfaqen menjëherë pas zgjedhjes së një maske duke përdorur butonat përkatës.
  2. Maska imazhi të personalizuara. Përdoruesi mund të konfigurojë gjithashtu maska ​​të personalizuara për përpunimin e imazhit duke futur vlera në fushat numerike dhe duke klikuar butonin Ruaj maskën. nëse shuma e koeficientëve në këto dritare është më e vogël se zero, krijohet një gabim dhe maska ​​nuk aplikohet. Nëse zgjidhni një maskë fikse, nuk keni nevojë të përdorni butonin Ruaj maskën.

Faza 5. Prezantimi i nuancave të grisë

Në këtë fazë të përpunimit të imazhit, pikselët e tij mund të ngjyrosen në një gamë të gjerë nuancash gri. Ky filtër shfaq shpërndarjen e shkallës gri prej 20 kova/varg. Përqindja e pikselëve të ngjyrosur në nuancat gri në rangun nga 0 deri në 12 është specifikuar në kovën 0, përqindja e pikselëve të ngjyrosur në nuancat gri në rangun nga 13 deri në 25 është specifikuar në kovën 1, etj. Përdoruesi mund të zgjedhë një nga sa vijon për çdo gamë vlerash në shkallë gri:

  1. Lëreni siç është.
  2. Zëvendësoni me të bardhë.
  3. Zëvendësoni me të zezë.

Me këto opsione, ju mund të kontrolloni vargje të ndryshme të shkallës gri dhe të zvogëloni/heqni zhurmën duke ndryshuar shkallën e grisë në të bardhë ose të zezë.

Faza 6. Vendosja e kufirit

Ky filtër paraqet varësinë e vlerës së nivelit gri nga frekuenca e shfaqjes dhe ju kërkon të zgjidhni një ndërprerje. Parimi i funksionimit të filtrit të ndërprerjes është paraqitur më poshtë në pseudokod:

Nëse (vlera e shkallës gri të pikselit<= Cutoff) pixel grayscale value = (0 OR 255) ->varësisht nga cili opsion është zgjedhur (<= или =>: Cakto çdo piksel me vlerë<=/=>Pragu deri në 0. Mbetet deri në 255)

Grafiku tregon shpërndarjen e detajuar të pikselëve CAPTCHA sipas ngjyrës dhe ndihmon në heqjen e zhurmës duke përdorur prerjen e nivelit gri.

Faza 7: Prerja

Pas aplikimit të zbutjes, prerjes, kovës dhe filtrave të tjerë, imazhet CAPTCHA mund të jenë ende të zhurmshme me pika me një ose shumë piksel, vija të humbura dhe objekte hapësinore. Parimi i filtrit të prerjes është si vijon: nëse numri i pikselëve ngjitur me ngjyrë në një nuancë të caktuar gri është më i vogël se vlera në fushën e numrave, filtri i prerjes u cakton atyre një vlerë prej 0 (e zezë) ose 255 (e bardhë) sipas zgjedhjes së përdoruesit. Në këtë rast, CAPTCHA analizohet si horizontalisht ashtu edhe vertikalisht.

Hapi 8: Ndryshimi i gjerësisë së kufirit

Sipas autorit të programit, gjatë kërkimit fillestar dhe zhvillimit të TesserCap, ai vuri në dukje vazhdimisht se kur imazhet CAPTCHA kanë një vijë të trashë kufiri dhe ngjyra e saj është e ndryshme nga sfondi kryesor CAPTCHA, disa sisteme OCR nuk mund ta njohin tekstin. Ky filtër është krijuar për të përpunuar linjat kufitare dhe për t'i ndryshuar ato. Vijat kufitare me gjerësi të specifikuar në fushën numerike janë me ngjyrë të zezë ose të bardhë sipas zgjedhjes së përdoruesit.

Hapi 9: Përmbysja gri

Ky filtër kalon nëpër çdo piksel dhe zëvendëson vlerën e tij të nivelit gri me një të re, siç tregohet në pseudokodin më poshtë. Përmbysja gri kryhet për të përshtatur imazhin në cilësimet e ngjyrave të sistemit OCR.

Për (çdo piksel në CAPTCHA) vlera e re e shkallës së gri = 255 - vlera aktuale e shkallës së grisë

Hapi 10: Kontrollimi i njohjes së captcha

Qëllimi i kësaj faze është transferimi i imazhit të para-përpunuar CAPTCHA në sistemin OCR për njohje. Butoni Zgjidh merr imazhin pas filtrit të përmbysjes së shkallës gri, e dërgon atë në sistemin OCR për të nxjerrë tekstin dhe shfaq tekstin e kthyer në GUI. Nëse teksti i njohur përputhet me tekstin në captcha, kjo do të thotë se ne kemi vendosur saktë filtrin për përpunim paraprak. Tani mund të shkoni te skeda e opsioneve dhe të aktivizoni opsionin Aktivizo Parapërpunimin e Imazhit për të përpunuar të gjitha kapçat e mëvonshme të shkarkuara.

Njihni captchas

Epo, mbase ne kemi shqyrtuar të gjitha opsionet e këtij mjeti, dhe tani do të ishte mirë të testonim disa captcha për forcë..


Rezultati i faqes së internetit të analizës captcha me paraprake
përpunimi i imazhit. Duke gjykuar nga rezultatet, filtri
nuk e gjente dot

Pra, le të hapim programin dhe të shkojmë në faqen e internetit të revistës. Ne shohim një listë të lajmeve më të fundit, shkojmë te i pari që hasim dhe lëvizim te vendi ku mund të lini komentin tuaj. Po, nuk është aq e lehtë të shtosh një koment (sigurisht, përndryshe ata do të kishin postuar çdo gjë shumë kohë më parë) - duhet të futësh një captcha. Epo, le të kontrollojmë nëse kjo mund të automatizohet. Kopjoni URL-në e figurës dhe ngjisni atë në shiritin e adresave TesserCap. Ne tregojmë se ju duhet të shkarkoni 12 captcha dhe klikoni Start. Programi ngarkoi me bindje 12 fotografi dhe u përpoq t'i njihte ato. Fatkeqësisht, të gjitha captch-at ose nuk u njohën, siç dëshmohet nga mbishkrimi -Dështoi- nën to, ose u njohën gabimisht. Në përgjithësi, kjo nuk është për t'u habitur, pasi zhurma dhe shtrembërimi i jashtëm nuk u hoqën. Kjo është ajo që ne do të bëjmë tani. Klikoni me të djathtën në një nga 12 imazhet e ngarkuara dhe dërgojeni atë në sistemin e para-përpunimit (Send To Image Preprocessor). Pasi kemi ekzaminuar me kujdes të 12 captch-at, shohim se ato përmbajnë vetëm numra, kështu që shkojmë në skedën e opsioneve dhe tregojmë se vetëm numrat duhet të njihen (Set i Karaktereve = Numerikë). Tani mund të shkoni te skeda Parapërpunimi i imazhit për të konfiguruar filtrat. Do të them menjëherë se pasi luajta me tre filtrat e parë ("Inversioni i ngjyrave", "Ndryshimi i ngjyrës", "Gradation gri") nuk pashë ndonjë efekt pozitiv, kështu që lashë gjithçka në parazgjedhje. Zgjodha Smooth Mask 2 dhe vendosa numrin e kalimeve në një. E anashkala filtrin e kovave në shkallë gri dhe shkova drejt e te cilësimet e prerjes. Zgjodha vlerën 154 dhe tregova se ato pikselë që janë më të vegjël duhet të vendosen në 0, dhe ato që janë më të mëdha duhet të vendosen në 255. Për të hequr qafe pikselët e mbetur, aktivizova prerjen dhe ndryshova gjerësinë e kufirit në 10. Aty Nuk kishte kuptim të aktivizoja filtrin e fundit, kështu që menjëherë klikova në Zgjidh.

Në captcha kisha numrin 714945, por programi e njohu si 711435. Kjo, siç mund ta shihni, është plotësisht e pasaktë. Në fund, sado që u përpoqa, nuk isha në gjendje ta njoha si duhet captcha-n. Më duhej të eksperimentoja me pastebin.com, të cilin munda ta njoh pa asnjë problem. Por nëse jeni më të zellshëm dhe të durueshëm dhe arrini të njiheni saktë nga faqja e kapçëve, atëherë shkoni menjëherë te skeda e opsioneve dhe aktivizoni "Aktivizo parapërpunimin e imazhit". Më pas shkoni te Main dhe, duke klikuar në Start, shkarkoni një grup të ri captchash, të cilat tani do të përpunohen paraprakisht nga filtri juaj. Pas ekzekutimit të programit, shënoni kapçat e njohura saktë/gabimisht (butonat Shënoni si të sakta/Shënoni si të pasakta). Tani e tutje, ju mund të shikoni statistikat përmbledhëse të njohjes duke përdorur Shfaq Statistikat. Në përgjithësi, ky është një lloj raporti për sigurinë e një CAPTCHA të veçantë. Nëse ka një pyetje në lidhje me zgjedhjen e një ose një zgjidhjeje tjetër, atëherë me ndihmën e TesserCap është mjaft e mundur të kryeni testimin tuaj.

Rezultati i kontrollit CAPTCHA në sajtet e njohura

Faqja e internetit dhe përqindja e kapçëve të njohur:

  • Wikipedia > 20–30%
  • Ebay > 20–30%
  • reddit.com > 20–30%
  • CNBC > 50%
  • foodnetwork.com > 80–90%
  • dailymail.co.uk > 30%
  • megaupload.com > 80%
  • pastebin.com > 70–80%
  • cavenue.com > 80%

konkluzioni

Imazhet CAPTCHA janë një nga mekanizmat më efektivë për mbrojtjen e aplikacioneve në ueb nga plotësimi i automatizuar i formularëve. Megjithatë, captch-at e dobëta do të jenë në gjendje të mbrojnë kundër robotëve të rastësishëm dhe nuk do t'i rezistojnë përpjekjeve të synuara për t'i zgjidhur ato. Ashtu si algoritmet kriptografike, imazhet CAPTCHA, të cilat janë testuar tërësisht dhe ofrojnë një nivel të lartë sigurie, janë mënyra më e mirë për të mbrojtur veten. Bazuar në statistikat e dhëna nga autori i programit, zgjodha reCaptcha për projektet e mia dhe do t'ua rekomandoj të gjithë miqve të mi - doli të ishte më rezistenti nga ata të testuar. Në çdo rast, mos harroni se ka shumë shërbime në internet që ofrojnë një zgjidhje gjysmë të automatizuar CAPTCHA. Nëpërmjet një API të veçantë, ju kaloni një imazh në shërbim dhe pas një kohe të shkurtër ai kthen një zgjidhje. Një person i vërtetë (për shembull, nga Kina) zgjidh captcha dhe paguhet një qindarkë goxha për të. Këtu nuk ka më asnjë mbrojtje. 🙂

Udhëzime për njohjen e saktë të captchas në shërbimin e faqes në internet

ReCaptcha V2 E re
Shumë popullor kohët e fundit, ai përbëhet nga 9 mini-fotografi, nga të cilat duhet të zgjidhni 2-4 fotografi të dhëna. Cilat fotografi ju duhet të zgjidhni tregohen ose nga një foto shembull ose me tekst. Në përgjigje të një kaptcha të tillë, duhet të futni numrat e fotografive që dëshironi të zgjidhni. Numrat futen pa hapësira ose presje. Nëse nuk ka numra në vetë fotot, atëherë ato numërohen nga e majta në të djathtë, nga lart poshtë. Si kjo:
1 2 3
4 5 6
7 8 9

captcha korrekte
përgjigje
përshkrim
13 në të djathtë është një mostër, lakër. Në fotot me numër 1 dhe 3 shohim lakër. Në përgjigje të captcha-s ne shkruajmë 13
58 Në të djathtë është një pjatë me spageti. Kjo foto korrespondon me fotot me numër 5 dhe 8. Në foton numër 3 ka të njëjtat makarona, por ravioli, jo spageti.
239 Nuk ka asnjë mostër, vetëm tekst që thotë se cilat fotografi duhet të zgjidhni. Vetë fotografitë nuk janë të numëruara, kështu që ne përdorim udhëzimet e mësipërme për të kuptuar se cila fotografi korrespondon me numrin e saktë
45 Fillimisht mund të mendoni se përgjigjja e saktë është 47. Por në foton 7 nuk ka një shenjë, por vetëm një shenjë. Dhe ka mbetur vetëm fotografia e katërt. Por duhet të ketë të paktën 2 imazhe të përshtatshme. Ne hedhim një vështrim më të afërt dhe shohim në imazhin e 5-të një shenjë të fotografuar nga ana e pasme. Përgjigja e saktë 45
159
456 Udhëzimet janë vetëm në anglisht, por ka një foto në të majtë që shpjegon se duhet të zgjidhni shenjat rrugore.
18 Shembulli i treguar tregon vezët. Ato janë të njëjta në fotot 1 dhe 8, megjithëse tashmë janë pastruar dhe prerë. Përgjigja e saktë është 18
25 Shembulli i treguar është një byrek. Në figurat 2 dhe 5 shohim byrekët dhe përgjigjen 25.
12 Uebmaster që dërgoi captcha-n numëroi imazhet sipas parimit të tij. Në këtë shembull, ne përdorim numërimin e tij dhe tregojmë se duhet të zgjidhni 1 dhe 2 imazhe
356 Ky webmaster numëron fotografitë në rendin e duhur, por ai filloi të numëronte jo nga një, por nga zero.

ReCaptcha v2 me shenja rrugore dhe shenja rrugore

Ne do t'i kushtojmë vëmendje të veçantë kapçave që përshkruajnë shenja rrugore ose shenja rrugore. Shenja e rrugës nuk është shenjë rrugore.

captcha korrekte
përgjigje
përshkrim
1239 Emri i rrugës = shenja rrugësh
Rrugët shkruhen gjithmonë me të bardhë në një sfond të gjelbër në një rresht. Imazhi 7 tregon një shenjë rrugore.
1348 Është e thjeshtë këtu
78

Shenjat e rrugës = shenja rrugore

Gjithçka është e thjeshtë në këtë captcha

278 Në imazhin #7, shenja nuk është në një shtyllë, si shenjat e zakonshme, por në një ndalesë përplasjeje. Sidoqoftë, kjo është një shenjë rrugore.
36 Një shenjë e stacionit të autobusit është gjithashtu një shenjë rrugore.
1248 Kini kujdes, kjo captcha na kërkon të tregojmë shenjat e rrugës.
2479 Imazhi #1 tregon një shenjë, jo një emër rruge.
1236 Imazhi #5 tregon një shenjë, jo një emër rruge. Në imazhin nr. 2, emri i rrugës nuk është i dukshëm, por mund ta merrni me mend se është aty.

SolveMedia
Kjo captcha përmban fraza standarde të vogla në anglisht, gjë që ju ndihmon t'i futni ato më shpejt dhe të mësoni anglisht.

captcha korrekte
përgjigje
përshkrim
video kasetë captcha e thjeshtë, e futur pa probleme
po nese? Ju lutemi vini re - duhet të futen edhe shenjat e pikësimit
Kur ku? Në përgjigje duhet të përfshihen edhe presja edhe pikëpyetja.

më pëlqejnë njerëzit Në fjalën LIKE, shkronja e parë është e vështirë për t'u dalluar, por nëse shikoni të gjithë frazën, është e lehtë të kuptoni se çfarë është shkronja.
Më pëlqejnë njerëzit - i dua njerëzit

çati Ju mund të mendoni se shkronja e parë në këtë captcha është P dhe dy shkopinj thjesht janë ngjitur në të. Por fjala POOFTOP nuk ekziston dhe ROOFTOP është diçka që instalohet në çati, në fund të fundit pak njerëz i dinë të gjitha këto fjalë, është shumë e lehtë të gabosh.

postimi i parë! Shkronja e parë është e fshehur, por duke parë të gjithë fjalën, mund të merrni me mend se çfarë është shkruar FIRST
Por ndonjëherë hasni në ato që nuk mund t'i dalloni fare. Në këtë rast, duhet të klikoni "Nuk mund ta dal"

    +1 Në shqyrtim

    Nëse formulari i kërkesës për mbështetje përmban një Google captcha dhe modaliteti i fshehur është aktivizuar në cilësimet e captcha në dyqan, formulari nuk funksionon (ai shkruan gabimin "Kjo fushë kërkohet", megjithëse të gjitha fushat janë plotësuar. Për të korrigjuar përkohësisht situata...

    Captcha nuk shfaqet

    Zbulova se kur përdor shtesën PHP ImageMagick, captcha në formularin e komenteve ($wa->block("site.send_email_form")) nuk funksionon. Sapo kalova në GD, captcha funksionoi. A ka dicka qe nuk shkon me mua apo eshte me mire...

    Ka një zgjidhje

    Ai thotë se captcha është futur gabimisht. Captcha standarde jep të njëjtën gjë. Unë u përpoqa të pastroj cache-in e shfletuesit dhe të fshij përmbajtjen e dosjes wa-cache, por nuk dha asnjë rezultat. http://fluxor.ru/ regjistrim/

    Kontaktoni zhvilluesin e temës suaj të dizajnit. Në kodin burimor të faqes, captcha kërkohet dy herë, herën e dytë duke përdorur butonin Feedback në fund të faqes. Nuk është e dukshme atje, por është në kodin burimor.

    Ka një zgjidhje

    Unë shtoj një captcha në formën e rrjedhës (moduli i mbështetjes), por ai nuk shfaqet në sit duke përdorur shabllonin e aksioneve..

    Ka një zgjidhje

    Mirëdita! Disa kohë më parë vura re se captcha në sit nuk po punonte si duhet. Pavarësisht se çfarë kodi futni në këtë fushë (kodi i saktë ose kod i pasaktë), captcha nuk e kalon testin… dhe...

    ($wa->storage(["captcha", $wa->app()], "")) pse vallëzime të tilla me dajre?)) thjesht nuk mund të futni ($wa->captcha()) në formë . problem mbase nëse po përpiqeni të përdorni disa captcha në një faqe - zgjidhja u gjet në forum... ndoshta një shtojcë... ose ndoshta një cache... mund të duhet shumë kohë për të marrë me mend :)

    Ka një zgjidhje

    Në lidhje me përditësimin më të fundit të versionit 1.8.4.225, i cili zgjidhi disa probleme me reCAPTCHA dhe përditësimin e shpejtë pasues në versionin 1.8.5.226, u shfaq problemi i mëposhtëm. Nëse e aktivizoni në dyqan te Settings -> Checkout, shfaq...

    Ndërkohë, ata nxorën një gjë të re. Shpresoj që asgjë e re të mos ketë prishur. Tani për tani do ta vendos në një pritje testuese. :)))

    +1 Korrigjuar

    Kur shtoni një rishikim me një captcha të personalizuar të padukshme nga Google, captcha kalon herën e parë që dorëzoni formularin, por nëse ka pasur gabime në formular (fushat nuk janë plotësuar), atëherë kur e dorëzoni formularin herën e dytë dhe në vijim , captcha nuk kalon...

    +1

    Dhe pa marrë parasysh se çfarë ndodh, futja e CDO kodi captcha është GJITHMONË e pasaktë.