Captcha crack – poczta.gery.pl
Od pewnego czasu obiecuję artykuł na tematch captcha cracking. Co najmniej dwukrotnie zaczynalem pisać – ale dopiero teraz publikuję pierwszą część serii artykułów – dziś poczta.gery.pl.
Błędów popełnianych przez projektantow obrazków jest mnóstwo – będzie o tym osobny wpis. Dziś pokażę przykład podstawowych błędów – i sposob na odczytywanie obrazka bez zbędnego tracenia czasu.
Podstawową zaletą programistów jest to – że są leniwi. Nigdy nie poświęcają więcej czasu – niż jest to potrzebne do osiągnięcia zadowalających efektów. Dlatego dziś nie będzie OCRowania obrazkow, a jedynie czyszczenie – i sposób na prosty OCR.
Najpierw rzućcie okiem na https://poczta.gery.pl/rejestracja.php – tutaj jest przykład bardzo słabego obrazka. Podstawowe wady:
- jeden kolor napisu
- jeden roczaj czcionki w napisie
- równe ułożenie tekstu
Naszym celem jest zrobienie takiego przekształcenia:

Tak przekształcony obrazek możemy odczytać zwykłym ocrem:
[codesyntax lang="php"]
<?php exec( '/usr/bin/convert clean.jpg clean.ppm' ); exec( '/usr/bin/ocrad clean.ppm', $pString );
[/codesyntax]
Dodatkowo po odczytaniu zrobimy rzutowanie błędów – wszystkie litery na cyfry. Przejrzyjcie dokładniej read_captcha.php. Jeśli jesteście ciekawi – odkomentujcie ostatnią linijkę – pięknie wypisane zostaną wszystkie odczytane piksele.
Proces czyszczenia obrazka jest bardzo prosty. Rzutujemy obrazek na czarno biały – przy uzyciu prostego algorytmu, po czym usuwamy wszystko co jest pojedynczą linią zakłócającą obraz. Dalej ocrad, rzutowanie litery -> cyfry… i można robić automat do zakładania kont.
W następnym odcinku – szukam moich starych kodów – ktore mogą być przydatne. Miałem kilka ciekawych crackerów – i napisany własnoręcznie OCR dla drukowanych napisów. Jego pomysłowośc i skuteczność była conajmniej warta publikacji. Niestety w owym czasie nie miałem ochoty prowadzić bloga. Miejmy nadzieję, że kopie bezpieczeństwa nie okażą się stajnią Augiasza.
jachu 14:23 on 2010-05-30 Permalink
Dzięki bardzo przydatny tekst, liczę na kolejne ;)
Lista rzeczy nad którymi pracujesz wydaję się ciekawa, mało kto porusza tą tematykę w Polsce :)