Recaptcha automaattinen tunnistus. Captcha-tunnistuspalvelut. Haetaan kentän nimi

XRumer-ohjelman laajamittainen päivitys, jossa profiilien rekisteröintilogiikka eri alustoilla on kehittynyt merkittävästi, työ Bitrix-, Joomla-, WordPress Forum-, MyBB-, VBulletin-, XenForo-alustojen kanssa on parannettu, mekanismia on parannettu. lisätty lähetetyn tekstin muokkaamiseen vastaanottajasivuston aiheesta riippuen (uusi makro # teema), liitetyt tietokannat on päivitetty ja laajennettu - kokonaismäärä on ylittänyt 8 miljoonaa sivustoa, HTTPS:n ja Google ReCaptcha-2:n käyttöä on parannettu , ja paljon enemmän...

26. tammikuuta 2019

XRumer 16.0.18 + SocPlugin 4.0.63

Liitteenä olevat tietokannat on tarkistettu ja päivitetty, kokonaismäärä on kasvatettu 8 (!) miljoonaan tuettuun resurssiin - blogit, foorumit, vieraskirjat, taulut, BBS, CMS ja muut alustat. Tunnettujen teksti-catchojen tietokanta on kasvanut yli 2 000 uudella vastauksella robotin vastaisiin kysymyksiin, ja nyt se on 324 000 teksti captchaa. Toiminnan vakautta ja nopeutta on lisätty merkittävästi, resurssien kulutusta on optimoitu: katto ulottuu jopa 500 kierteeseen tai enemmän (käyttötavasta riippuen). Parannettu työ HTTPS:n kanssa. Ja tärkein, keskeinen parannus: henkilökohtaisten viestien lähettämisen tehokkuutta on parannettu huomattavasti - MassPM-tila. Lisäksi monia muita parannuksia ja korjauksia :)

14. syyskuuta 2018

XRumer 16.0.17

Tärkeä päivitys XRumerille, joka optimoi merkittävästi resurssien kulutusta. Lisääntynyt vakaus ja nopeus, lisääntynyt virtauskatto. Nyt useiden miljoonien dollarien tietokantojen läpikulku on mukavampaa! Myös parannettu työ HTTPS:n, JavaScriptin kanssa, parannettu työ Joomla K2 -alustan kanssa ja paljon muuta...

05. heinäkuuta 2018

JavaScript on oltava käytössä, jotta sivusto toimii oikein.

Captcha-tunnistus / automaattinen captcha-syöttö

Varmasti melkein jokainen on jo törmännyt kirjoitukseen rekisteröityessään mille tahansa sivustolle: "Syötä numero, jonka näet" ja vääristyneen kuvan. Tämä on captcha (CAPTCHA, pictocode, lippu) - graafinen suojaus, joka on suunniteltu erottamaan ihmiset ja ohjelmat.

Toimintansa aikana XRumer-ohjelma pystyy tunnistamaan captchat, lataamaan kuvan automaattisesti ja purkamaan sen salauksen. Kuten käytäntö on osoittanut, tällaisen captcha-salauksen purkaminen kestää enintään 1-1,5 sekuntia, ja yleensä jopa vähemmän tietokoneessa, jonka prosessori on 1 GHz:n toimintataajuus. Tämä vaatii hyvin vähän liikennettä, koska... Tällaiset kuvat "painoavat" enintään 3-5 kt.

Mutta ei siinä vielä kaikki! Uusi XRumer 18.0.1 Elite pystyy nyt tunnistamaan ja ohittamaan jopa sellaiset captcha-tyypit kuin ReCaptcha ja DLE! A Tunnistettujen tyyppien kokonaisluettelo on yli kaksinkertaistunut XRumer 5.0:aan verrattuna:

Ja nämä eivät ole kaikki tyyppejä; melko triviaaleja captcheja, joita käytettiin foorumien varhaisissa versioissa ja jotka ovat edelleen monilla niistä, ei näytetä tässä. XRumer tunnistaa automaattisesti captcha-tyypin ja käyttää tälle tyypille sopivaa algoritmia.

Luultavasti monet Internetin käyttäjät joutuivat ainakin joskus syöttämään captcha-koodin; tämä on tavallinen tapa automaattiselle ohjelmalle määrittää, oletko robotti vai henkilö. Joten käy niin, että sinun on määritettävä koko joukko kuvia, etkä halua tuhlata aikaa niiden syöttämiseen.

    • Kriteerit captcha-tunnistusohjelman valinnalle
    • Luettelo ilmaisista ohjelmista captchien ohittamiseen ja niiden eroihin

Jos kohtaat tällaisen ongelman, on olemassa ratkaisu - verkkopalvelut, joiden avulla et tuhlaa ylimääräistä aikaa captchien syöttämiseen. Ei ole mikään salaisuus, että kun käyttäjän tunnistusohjelmia parannetaan (määrittää, onko kyseessä henkilö vai robotti), myös ohjelmat, jotka voivat murtaa tietoturvan ja tunnistaa captchan automaattisesti, paranevat. On kalliita ohjelmia, kuten OCR, jotka tekevät erinomaista työtä. Mutta näethän, kuka haluaa käyttää paljon rahaa kuvien tunnistamiseen. Koska toivottomia tilanteita ei ole, on tähänkin tapaukseen ratkaisu - ilmainen verkkopalvelu, ja on syytä huomata, että se ei ole ainoa. Alla tarkastellaan lähemmin käytettävissä olevia vaihtoehtoja.

Kriteerit captcha-tunnistusohjelman valinnalle

Jos harjoitat toimintaa, joka vaatii jatkuvaa koodien tunnistamista, on järkevää ostaa kallis versio ohjelmasta; jos sinun ei tarvitse suorittaa kyseistä prosessia niin usein, sinun ei pitäisi heittää pois iso summa rahaa, sellaiseen tapaukseen on ilmainen palvelu, jonka käyttäminen ei ole vaikeaa.

Tällaisia ​​palveluita on kymmeniä, ja käyttäjällä on mahdollisuus käyttää mitä tahansa niistä, joten valinnanvaraa riittää.

Jotta voisit tehdä oikean valinnan sellaisista monista ohjelmista, on otettava huomioon seuraavat näkökohdat:

  • Ensinnäkin valitsemasi palvelun on oltava täysin ilmainen. Tämä kriteeri on tärkein, joten varmista, että tältä osin ei ole rajoituksia.
  • valitun palvelun on kyettävä "arvaamaan" teksti venäjäksi; ilman tätä kriteeriä et todennäköisesti pysty tekemään captchas-koodin syöttämistä automaattisesti;
  • automaattisesti määritettävissä olevien captchojen määrän pitäisi olla rajoittamaton.

Katso video - Captcha-tunnistuksen käyttöönotto antigaten, rucaptcha, captcha24, captchabotin kautta DelphiXE5:ssä

Luettelo ilmaisista ohjelmista captchien ohittamiseen ja niiden eroihin

Joten, aletaan tarkastella saatavilla olevia ilmaisia ​​​​vaihtoehtoja, seuraavaksi jonossa on Google Drive -verkkopalvelu. Kyseisen ohjelman käyttäminen edellyttää rekisteröitymistä, tämä tapahtumien kulku odottaa käyttäjää lähes kaikissa samantyyppisissä palveluissa. Siinä tapauksessa. Jos olet koskaan luonut. Esimerkiksi blogi blogspotissa, sinun ei tarvitse rekisteröityä tässä tapauksessa. Se on mahdollista täällä automaattinen syöttö tällainen captcha: PDF, JPG, PNG ja GIF. On huomattava, että tunnistettavien tiedostojen koko saa olla enintään 2-3 Mt.

Online-palvelu OCR Convert. Täällä käyttäjän ei tarvitse rekisteröityä. Tuetut captcha-muodot ovat: JPEG, GIF, BMP. On huomattava, että tallennetut tiedostot ovat URL-linkkien muodossa, joiden laajennus on TXT-muodossa. Täällä käyttäjä voi ladata samanaikaisesti 5-7 dokumenttia.

i2OCR-palvelu. Sinun on ensin rekisteröidyttävä, jotta voit tunnistaa captchat. Tiedostoja ja dokumentteja voi ladata kerralla enintään 10. Palvelun käyttö on kätevää ja helppoa. Sen tunnistamat muodot ovat: GIF, PBM, PGM, PPM.

Esittelen nämä tekniikat kokeellisella captchalla. Valitsin koekohteena tietyn Rafontesin captcha, johon törmäsin etsiessäni materiaalia edelliseen artikkeliin.

Esimerkki luodusta captchasta:

Minun piti käyttää eri taustaa, koska kirjoittaja ei julkaissut alkuperäistä (tai en löytänyt sitä), mutta tämä ei vaikuta tulokseen.

Esikäsittely

Tämän toiminnon seurauksena saamme mahdollisimman rajatun osan yksivärisestä kuvasta, jossa on tekstiä.

Ensinnäkin tarvitsemme erillinen tausta tekstistä. Analysoimme kuvan ja kuvan generointikoodin. Ensimmäiset virheet ovat ilmeisiä:

  • Käyttää yhtä väriä koko kooditestissä
  • Tekstin väri luodaan alueella rand(0, 200), 0, rand(0, 200), vastaavasti R G B:lle (riittää valita värit vain tällä alueella)
  • Tausta, jossa on paljon eri värejä (ei vaikuta useimmin käytetyn värin tilastoihin)

Nyt näiden tosiasioiden perusteella analysoimme koko kuvan kunkin pikselin värin ja valitsemme useimmin käytetyn. Se osoittautui 8C0074(heksa-muodossa). Asetimme siitä pienen virheen ja valitsimme tämän värin ja sitä hieman samankaltaiset virheen huomioon ottaen. Maalaamme kaikki valitut mustalla, loput valkoisella. Tästä kuvasta selviää:

Kuten näette, saimme tekstin käytännössä ilman vääristymiä. Totta, jäljellä on vain yksi rivi, mutta meillä on hankala trimmausalgoritmi (lisätietoja alla), johon tämä rivi ei voi vaikuttaa.

Nyt valitse alue koodilla.
Koska tekstimme on pimein kohta, yritämme löytää tämän kohdan algoritmisesti. Ensin määritämme vaakasuuntaiset rajat:

Nyt määritämme pystysuuntaiset rajat:

Viiva jää tähän, koska toiminto näkee alueen edelleen hyvin tummana alueena. Mutta nyt, näiden rajojen perusteella, tarkennamme niitä toisella ympyrällä, vaakasuunnassa:

Miksi tämä rivi on nyt poistettu, kysyt? Koska nyt analysoitiin vähemmän "pikselisarakkeita" ja algoritmilla analysoituna paljastui, että tällä alueella on liian monta saraketta, joissa on yksi musta pikseliä, ja siksi tämä on kohinaa. Selvennetään nyt pystysuuntaista reunaa:

Koska määrittelyalue on pienentynyt, nyt siitä kohinaviivasta on tullut riittämättömän tumma kohta ja se on poistettu kokonaan. Joten meillä on tekstiä sisältävä osio. Tietenkin tämä algoritmi ei joskus valitse oikein haluttua aluetta. Mutta testini mukaan virheellisten määritelmien määrä ei ylitä 5%, mikä voidaan itse asiassa jättää huomiotta.

Segmentointi

Nyt tehtävämme on jakaa tuloksena oleva kuva erillisiin osiin symboleilla.

Tietysti voit laskea, etsiä merkkirajoja jne. Mutta jos analysoit sukupolvikoodin uudelleen, voit löytää toisen virheen.

  • Jokaisen merkin väli on aina 15 pikseliä

Tietenkin joskus symbolien koosta johtuen ne ylittävät viisitoista pikseliä, jolloin sinun on purettava toinen tai kaksi pikseliä viereisestä symbolista. Mutta tämä ei ole kriittinen. Yleisesti, hajotetaan kuva:

Nyt, kuten näemme, joidenkin symbolien ympärillä on tyhjä alue. Mutta tarvitsemme silti itse symbolin. Käytämme rajaustoimintoa jokaiselle merkille ja sovitamme saadut kuvat suorakulmioihin, joiden mitat ovat 17x27:

Nämä kuvat lähetetään yksittäin tunnustusta varten.

Tunnustus

Suoritamme tunnistuksen ILMAN uusia hermoverkkoja. Miksi? Ratkaiseva rooli oli sillä, että Windowsille ei ole yhtä arvokasta kirjastoa. Käytämme tavanomaista merkkimaskin tunnistusta.

Tätä varten luomme lähdekoodeihin pääsyn avulla joukon mustavalkoisia kuvia jokaiselle merkille, joilla on erilaiset kiertokulmat (kahdesta neljään astetta) ja eri fonttikoot (20 pt - 30 pt). Jokainen tuloksena oleva kuva, kuten arvasit, sopii suorakulmioon, jonka mitat ovat 17x27. Jokaista tuloksena olevaa kuvaa kutsutaan maskiksi.

Jokaista kirjainta kohden loin 10-15 maskia. Periaatteessa tämä riittää, mutta jos lisäät maskien määrää, voit lisätä tunnistusprosenttia.

Yleensä kaikkia syötteeseen lähetettyjä kuvia verrataan maskeihin, ja algoritmi määrittää, mikä maski sopii parhaiten kuvaamme, ja tekee tämän perusteella johtopäätöksen siitä, mikä hahmo kuvaan on kirjoitettu.

tuloksia

Testiä varten sain 200 kohinaa luomalla kuvan ja jakamalla sen symboleiksi. Ja tein testin ohjelmallisesti. Ja huomio!
Tulos: Onnistumisia: 172 Virheitä: 28 Prosenttiosuus: 86 %
Eli jokainen captcha-merkki tunnistetaan onnistuneesti todennäköisyydellä 86% !

Vähän matematiikkaa. Lasketaan onnistuneen captcha-tunnistuksen todennäköisyysprosentti:
4-merkkiset captchat: 0,86^4= 54%
5-merkkiset captchat: 0,86^5= 47%

Keskiverto joka sekunti Captcha tunnistetaan onnistuneesti.

Ottaen huomioon, että jokainen captcha kestää noin 1 sekunnin, ja keskimäärin 2 sekuntia tarvitaan onnistuneeseen tunnistamiseen. Tämä on erittäin hyvä tulos.

Lähteet

Skripti luo ja tunnistaa itse captcha-koodin. Esimerkki kuvan käsikirjoituksesta, jonka captcha-kirjoittaja on antanut esimerkkinä:

(Kuva on klikattavissa)

Aiemmissa videoissa opimme luomaan . Samanaikaisesti captcha syötettiin manuaalisesti. Nyt näytämme sinulle, kuinka captcha-käsittelyprosessi automatisoidaan Antigate-palvelun avulla.

Antigate on palvelu automaattiseen captcha-tunnistukseen. Jos yhdistämme sen skriptiin, niin kun captcha löytyy, Datacol ei anna sitä käyttäjälle syötettäväksi, vaan lähettää sen palveluun tunnistettavaksi. Yleensä Antigate käsittelee kuvan 7–15 sekuntia, minkä jälkeen se palauttaa käsittelytuloksen.

Etkö halua syöttää captchaa manuaalisesti joka kerta? Kun olet katsonut tämän videoohjeen, voit automatisoida captcha-käsittelyprosessin ja nopeuttaa jäsennysnopeutta merkittävästi.


Muistutetaan, että Datacolista löydät myös valmiita jäsentimiä:

    Verkkokaupoille:

    Muutetaan aiemmin luotu skripti yhdistääksesi Antigate siihen. Valitse captcha-käsittelytoiminto. Aseta Antigate-tunnistusmenetelmä. Nyt on erittäin tärkeää asettaa nykyisen captchan ominaisuudet. Tämän ansiosta automaattinen tunnistusprosessi on selvästi nopeampi ja mikä tärkeintä, oikeampi. Captchamme on venäläinen. Lisäksi captcha on isojen ja pienten kirjainten välinen ero.

    Nyt jäljellä on vain syöttää antigate-palvelun API-avain. Se asetetaan antigate_key-komentosarjaparametrissa. Muistutetaan, että tämä parametri luotiin automaattisesti lisättäessä vakio captcha-käsittelylohko. Palvelun avaimen saa palvelun käyttäjäpaneelista.

    Suosittelen nostamaan korkeimman hintatarjousasetuksen vähintään 10 dollariin 1000 tunnistusta kohden. Voit lukea lisää tästä ja muista palveluasetuksista käyttäjäpaneelista. No, älä unohda täydentää saldosi.

    Jäljelle jää vain luodun skriptin testaaminen. Haluan muistuttaa, että kestää jonkin aikaa, ennen kuin palvelu tunnistaa captchan. Kaikki toimi täydellisesti! Huomaa, että joissakin tapauksissa palvelu ei ehkä tunnista captchaa oikein. Skriptissä asettamiemme toistoehtojen ansiosta tunnistus voidaan kuitenkin suorittaa jopa 3 kertaa jokaisella sivulla.

    Tallennetaan käsikirjoitus. Aloitetaan kampanja. Näemme, että captcha käsiteltiin automaattisesti ja saimme tarvittavat tiedot. Huomaa, että useimmilla sivustoilla oikea captcha-koodin syöttämisen jälkeen se ei näy pitkään aikaan.

Kävellessäni Internetissä törmäsin paljon vieraillulle muinaiselle RuNet-sivustolle. Jotta voit ladata tiedoston tältä sivustolta, sinun on arvattava seuraava captcha:

Jälleen kerran nähdessäni kuvan, jossa on numeroita, tein päätökseni. Ajatukset ovat pyörineet päässäni jo pitkään, että voisin rikkoa jonkinlaisen captchan :)

Asetin itselleni tehtävän: Kirjoita skripti, joka tulkitsee näytetyn captchan ja sylkee arvokkaita numeroita.

En mainitse erikseen sivuston nimeä - voitte arvata itse :)

Mennään siis!

Analysoi kuvaa

Ensin sinun on tutkittava mahdollisimman monta näistä captchoista, jotta voit tunnistaa yhtäläisyydet/erot ja jotkin mallit. Latasin näitä tarkoituksia varten noin 50 captchaa. Niistä voit valita tärkeimmät, jotka sisältävät suurimmat erot:

Itse asiassa rakastan sitä vertailla numeroissa, koska aikoinaan omistin paljon aikaa matematiikan opiskeluun :)

Otamme huomioon ja ymmärrämme:

  • mustavalkoinen kuva, gif-muodossa
  • kuvan koko voi muuttua, mutta numerot ovat aina keskellä (vaikka ne eivät ole pystysuorassa kohdistettu kovin keskelle)
  • käytetty kaltevuus, sen suunta voi muuttua kahteen suuntaan
  • kaltevuuden lisäksi on " kulmagradientti" (niin kutsuin häntä, älä potki häntä :)), joka tulee kulmasta 45 asteen kulmassa ( älä potki minua enää :)) tämä on mielestäni vain vinoviiva
  • Kaikkiaan tunnistin 6 eri kirjoitusfonttia (3 tarkalleen ottaen, muut 3 ovat niiden vinoversioita)
  • kaikkien numeroiden pikselit eivät ole tummempia kuin väri #606060, mutta eivät samanvärisiä
  • numerot 3-5 captchassa, korkeintaan 14 kuvapistettä

Etsitään ratkaisua

Vaihtoehdot ovat pyörineet päässäni puoli tuntia, mutta yksi asia on selvä: On suositeltavaa rajata kuvaa, ja koska käytetään samoja fontteja eivätkä ne muutu millään tavalla, voit käyttää " tulostaa" . Tällä termillä tarkoitan, että meillä on jo numerot jossain tietokannassa, ja meidän on tarkistettava ne kuvasta.

Päädyin tähän päätökseen:

  • aloita taulukko merkillä sormenjäljet
  • rajaa kuva kaikilta puolilta, heitä ylimääräinen pois
  • tarpeettomien värien poistaminen on kaltevuus Ja kulmagradientti
  • käymme kaikki pikselit läpi vasemmalta oikealle, ylhäältä alas ja jos pikselin väri vastaa numeron väriä (>= #606060), niin tarkistamme sen sormenjäljillä, kaikki järjestyksessä

Toteutus

tuloksia

Testaus

Latasin testausta varten 200 tällaista captchaa, kotitietokoneellani skripti jäsensi ne ~ 19 sekuntia.
Se on suunnilleen 10 captchaa sekunnissa.

Näistä 200:sta ei ei ainuttakaan virhettä, käsikirjoitus toimi loistavasti :)

Tulokset

Kirjoitin CapCrack-luokan, joka jäsentää captchat.

Jos haluat ymmärtää algoritmia tarkemmin tai testata sitä tietokoneellasi, voit katsoa koodia: cap_crack.zip

En pysähtynyt tähän menestykseen ja päätin yrittää kirjoittaa skriptin tiedostojen lataamiseksi sivustolta automaattisesti, mutta se on täysin eri tarina :) erillisen artikkelin arvoinen...



Samanlaisia ​​artikkeleita