Captcha Breaking Experiment in PHP
Few days back I saw a really nice post of Nadim Jahangir about breaking captcha [Breaking CAPTCHA: Getting Naughty With Computer Vision Based Human Interaction Simulator Bot]. After, reading his post, I’d decided to create something similar with PHP. And I’ve already done it. I also use somewhereindhaka.net captcha for my experiment but didn’t create any bot to post in their site
.

Steps are very simple -
- Create horizontal & vertical histogram of captcha using PHP GD.
- Recognize each character by comparing values from histogram.
- I didn’t use any Template Recognition Algorithm. Rather, I use simple Edit Distance Algorithm (Levenshtein Distance). And it works
See it live – http://tr.im/35au
Tags: algorithm, captcha, experiment, histogram, php, security
January 8th, 2009 at 8:14 am
Nice job
January 8th, 2009 at 8:59 am
LOL good good!
January 9th, 2009 at 7:14 pm
Good job mate!
January 10th, 2009 at 7:07 pm
nice job bro.
nice attempt though
keep doing naughty jobs
it’s fun, isn’t it ? for such naughty guyz like u n I, some more advanced captcha schemes have already been developed like Video Captcha, have u heard of it ?
u used Edit Distance and it works for such simple captcha. but did u try with complex ones ? lower fault tolerance of edit distance fails to cope with complex ones
January 10th, 2009 at 7:25 pm
@Nadim Jahangir
Thanks bro, Ya I know
. First of all, Edit Distance is not a appropriate approach you know
I wanted to use Neural Networking. But then think I should use something simple to break this simple captcha [Mosha marte kaman keno???]
, Even it can be broken with distribution formulas [sounds funny though]
. Here for this simple captcha Edit Distance has some tolerance, but it is ignorable. No one mind if 1 is fault among 10000
. So, for complex captchas it will be like 9000 faults in 10000. lolz
Hmm, After their bad experience with Audio Captcha they are now dealing with Video. Actually, Audio captcha is easier to break than Visual capthca. And, Ya its really fun doing this.
BTW, Keep doing your great jobs. Your projects are really awesome.
January 10th, 2009 at 11:42 pm
thanx,
u seem an interesting guy. keep in touch. would love to have chat with u later on
January 11th, 2009 at 1:26 am
@Nadim: You mentioned the Video CAPTCHA…that was my thesis topic
. Here’s more info about it and a link to a demo: http://www.kloover.com/video-captchas/
@VistaArc: I tested a few different classification methods for breaking the PayPal CAPTCHA (including vertical and horizontal projections as you have done). The writeup and full MATLAB source code are up on my site: http://www.kloover.com/projects/paypalhip/
January 24th, 2009 at 12:30 pm
I read about the Nadim’s blog and now this one. Got fan of u both
. I think I will try to do some experiment soon.
January 24th, 2009 at 1:20 pm
very interesting indeed. good work
have a look at http://www.cs.sfu.ca/~mori/research/gimpy/ – here is another interesting project to break captcha. see the variations they have done, just amazing.
January 24th, 2009 at 3:24 pm
@Sabuj Kundu aka manchumahara – Certainly
@hasin Thanks, I went through this link before.
February 8th, 2009 at 3:00 am
That’s an excellent font you used there. For a while, I thought you had a graphics tablet and an excellent handwriting.