\
The End is Nigh Generic Solving of Text-based Elie Bursztein, - - PowerPoint PPT Presentation
The End is Nigh Generic Solving of Text-based Elie Bursztein, - - PowerPoint PPT Presentation
The End is Nigh Generic Solving of Text-based Elie Bursztein, Jonathan Aigrain, Angelika Mosciki, John Mitchell \ https://www.elie.net/tag/captcha Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Real world Captchas
Baidu (2011) Baidu (2013) eBay ReCaptcha (2011) ReCaptcha (2013) Wikipedia Yahoo CNN
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Outline
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Outline
Old approach: segment then recognize
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Outline
Old approach: segment then recognize Our new approach: single machine learning step
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Outline
Old approach: segment then recognize Our new approach: single machine learning step Evaluation: efficiency on real world captchas
\
Segment then recognize
How to break captchas the old way
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Think lego
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Slashdot captcha
The segment then recognize approach
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Preprocessing
The segment then recognize approach
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Preprocessing
The segment then recognize approach
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Preprocessing Segmentation
The segment then recognize approach
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Preprocessing Segmentation
The segment then recognize approach
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Preprocessing Segmentation Post- segmentation
The segment then recognize approach
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Preprocessing Segmentation Post- segmentation
The segment then recognize approach
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Preprocessing Segmentation Post- segmentation Recognition
The segment then recognize approach
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Preprocessing Segmentation Post- segmentation Recognition
f a e t e s t
The segment then recognize approach
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Preprocessing Segmentation Post- segmentation Recognition
f a e t e s t
Post-recognition
The segment then recognize approach
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Preprocessing Segmentation Post- segmentation Recognition
f a e t e s t f a s t e s t
Post-recognition
The segment then recognize approach
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
How about collapsing?
Baidu (2011) Baidu (2013) eBay ReCaptcha (2011) ReCaptcha (2013) Wikipedia Yahoo CNN
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
ad hoc/complicated heuristics
Figure 7. Detecting characters with a cross shape (the Figure 8. S Vertical Histogram. Identification o
” shape. Figure 13(b) shows a segmentation result. (a) (b)
The Robustness of Google CAPTCHAs
Ahmad S El Ahmad, Jeff Yan, Mohamad Tayara
Elie Bursztein Captcha (in)security Confidential
I don’t know how to do it (in the general case)
\
Captcha breaking reloaded
When AI over-come human limitations
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
What is wrong with the previous approach?
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
What is wrong with the previous approach?
Segmentation requires to find an invariant to exploit color, cluster size, number of characters, shape ...
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
What is wrong with the previous approach?
Segmentation requires to find an invariant to exploit color, cluster size, number of characters, shape ...
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
What is wrong with the previous approach?
Segmentation requires to find an invariant to exploit color, cluster size, number of characters, shape ... Captcha breaking is more exploit writing than machine learning
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Classifiers are extremely accuracy (e.g KNN/SVM)
% success
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
Trainning set size
10 20 50 100 200 500
09 AZ09 azAZ09 Distortion 3 fonts 5 fonts Angles
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
If classifiers are that good, why are we doing pre-processing ?
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
There is no segmentation
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Approach overview
Cut-points detection
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Approach overview
Cut-points detection Slicer
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Approach overview
Cut-points detection Slicer Scorer
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Approach overview
Cut-points detection Slicer Scorer Arbiter
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
New approach
Captcha
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
New approach
Captcha Slicer
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
New approach
Captcha Slicer
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Scorer
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Scorer
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Scorer
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Scorer
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Scorer
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Scorer
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Arbiter
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Arbiter
ilebe
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Arbiter
ilebe kinedi
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Arbiter
ilebe kinedi ilebe
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Arbiter
ilebe kinedi ilebe ilebe
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Improving accuracy using reinforcement learning
ilebe ikebe ilabe
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Improving accuracy using reinforcement learning
ilebe ikebe ilabe The classifier guide the learning process and tell humans when it need help
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Reinforcement illustrated
Bad segmentation Bad recognition
4 1 t 4
- 7
: : : : : :
A K E
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Reinforcement illustrated
Bad segmentation Bad recognition
4 1 t 4
- 7
: : : : : :
A K E
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Reinforcement illustrated
Bad segmentation Bad recognition
4 1 t 4
- 7
: : : : : :
A K E
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Reducing complexity
Algorithm complexity is extremely high up to 9h on a single captcha
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Reducing complexity
Algorithm complexity is extremely high up to 9h on a single captcha
Solutions
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Reducing complexity
Algorithm complexity is extremely high up to 9h on a single captcha Reduce the number of possible cuts inflection points, smart elimination
Solutions
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Reducing complexity
Algorithm complexity is extremely high up to 9h on a single captcha Reduce the number of possible cuts inflection points, smart elimination
Solutions
Faster and less accurate recognition sequential recognition, left to right
\
Evaluation on real world captchas
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Yahoo
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Yahoo
Inflection points
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Yahoo
Potential cuts Inflection points
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Yahoo
Removing bad cuts Potential cuts Inflection points
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Yahoo
Removing bad cuts Potential cuts Compatible cuts with start Inflection points
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Yahoo
Removing bad cuts Potential cuts Compatible cuts with start Iterative 4cz8jyaz Inflection points
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Recaptcha example
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Recaptcha example
Inflection points
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Recaptcha example
Inflection points Potential cuts
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Recaptcha example
Inflection points Potential cuts
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Recaptcha example
Inflection points Potential cuts
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Recaptcha example
Inflection points Potential cuts Removing bad cuts
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Recaptcha example
Inflection points Potential cuts Removing bad cuts Compatible cuts with start
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Recaptcha example
Inflection points Potential cuts Removing bad cuts Compatible cuts with start Iterative adaclv
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Recaptcha example
Inflection points Potential cuts Removing bad cuts Compatible cuts with start full graph adachi Iterative adaclv
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
How about lines ?
Realize that lines are known shape Train classifier to recognize them as empty character
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Baidu example
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Baidu example
Inflection points
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Baidu example
Inflection points Potential cuts
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Baidu example
Inflection points Removing bad cuts Potential cuts
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Baidu example
Inflection points Removing bad cuts Potential cuts
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Baidu example
Inflection points Removing bad cuts Potential cuts
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Baidu example
Inflection points Removing bad cuts Compatible cuts with start Potential cuts
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Baidu example
Inflection points Removing bad cuts Compatible cuts with start Potential cuts Iterative a6yk--
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Baidu example
Inflection points Removing bad cuts Compatible cuts with start Potential cuts Iterative a6yk-- full graph a6yk--
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Overall results
Reinforcement learning Simple learning Previous Work Full L-R L-R Time Seq. Full L-R Seq Accuracy Delta Ref. Baidu (2011) 38.68% 33.42% 3.94 s 36.58% 17.27% 16.55% 16.69% 5% +33.6% [10] Baidu (2013) 55.22% 54.38% 1.9 s 54.38%
- 51%
+4.22% [21] CNN
- 51.09%
4.9 s 48.54%
- 46.40%
45.96% 16% +35.09% [10] eBay 51.39% 47.92% 2.31 s 48.61% 39.43% 40.14% 36.29% 43% +11.4% [10] ReCaptcha (2011) 22.67% 21.74% 7.16 s 19.25% 19.86% 18.25% 17.10% 40.4%
- 17.73%
[15] ReCaptcha (2013) 22.34% 19.22% 4.59 s 19.74% 20% 14.61% 12.77% Wikipedia
- 28.29%
- 26.36%
- 27.02%
26.24% 25% +3.3% [10] Yahoo
- 3.67%
7.95 s 5.33%
- 2.72%
2.29%
Generic approach: Succeed where the old approach fail and most often beat it where it worked
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Human vs computers
Human accuracy Breaker accuracy (left-right) Accuracy 0% 20% 40% 60% 80% 100% Spacing between letters 0px
- 1px
- 2px
- 3px
- 4px
- 5px
- 6px
- 7px
The gap between Human and computer recognition is now too narrow to be considered secure
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
The end of an era, the dawn of a new one
Elie Bursztein The End is Nigh: Generic Solving of Text-based CAPTCHAs https://www.elie.net/tag/captcha
Summary New generation
Deprecated Segment and Recognize attacks Risk analysis defense Purely based AI Attack Text distortions defense
Elie Bursztein, Matthieu Martin, John C. Mitchell Text-based CAPTCHAS strenghts and weaknesses http://ly.tl/p22