CAPTCHA

31
iCAPTCHA What computers cannot do humans can do!! Presented by: ROHIT KUMAR 1DS08CS142

Transcript of CAPTCHA

Page 1: CAPTCHA

iCAPTCHAWhat computers cannot do humans can do!!

Presented by: ROHIT KUMAR1DS08CS142

Page 2: CAPTCHA

Agenda• Definition• History• Application of CAPTCHA• Vulnerabilities of Existing CAPTCHA Technologies

▫ Image processing technique▫Third party Human Attack

• Illustration• iCAPTCHA• Concept and Implementation• Attack Detection Algorithms• Study results and Observations• Limitations• Conclusion

Page 3: CAPTCHA

What is !!! • CAPTCHA (Completely Automated Public Turing Test To

Tell Computers and Humans Apart).

• T for “Turing Test to Tell” is because CAPTCHAs are like Turing Tests.

• CAPTCHA is a program that protects websites against bots by generating and grading tests that humans can pass but current computer programs cannot

Page 4: CAPTCHA

• A CAPTCHA is a type of challenge-response test used in computing as an attempt to ensure that the response is generated by a person

• For example, humans can read distorted text as the one shown below, but current computer programs can't.

Continues…

Page 5: CAPTCHA

History Behind CAPTCHA CAPTCHA was first used by “AltaVista” in 1997.

Reduced Spam by 95% for a small period of time.

Yahoo! Chat room problem. In September 2000, Udi Manber of Yahoo! described this

"chat room problem" to researchers at CMU:'bots' were joining on-line chat rooms and irritating the people there by pointing them to advertising sites. How could all 'bots' be refused entry to chat rooms?

CMU’s CAPTCHA research. The term CAPTCHA coined in 2000 by Luis von Ahn,

Manuel Blum, Nicholas Hopper and John Langford of Carnegie Mellon University.

Page 6: CAPTCHA

Application of CAPTCHA•Preventing Comment Spam in Blogs.•Protecting website registration.•Protecting email addresses from scrapers.•Online Polls.•Preventing dictionary attacks.

Page 7: CAPTCHA

Vulnerabilities of Existing CAPTCHA Technology

•There are two types of exploits that have been effective in attacking current CAPTCHA Technology:

1. Defeat CAPTCHA challenge via image recognition techniques.

2. Third party Human attack.

Page 8: CAPTCHA

Image recognition techniques.

METHOD:

•First, background noise and anomalies are removed from a CAPTCHA image .

•Next, the image is segmented and passed to character and shape recognition algorithms.

Page 9: CAPTCHA

Continues:

SOLUTION:•Modern CAPTCHA s which are made include

background noise, juxtaposition, and animation that are harder to recognize by computer software.

Page 10: CAPTCHA

THIRD PARTY ATTACK

• A guaranteed way to break!!

• This type of exploits is through 3rd party human attack.

• An ideal CAPTCHA would be easily solved by a human user, but completely unreadable to computer software . Therefore, using humans is the guaranteed way to break CAPTCHA.

• The malware industry has found a variety of ways to use free or cheap 3rd party human labour to break CAPTCHAs.

Page 11: CAPTCHA

• In India, a CAPTCHA solving economy has developed in which people work as human CAPTCHA solvers, earning roughly $2 for every thousand CAPTCHAs solved.(Interesting…!!!)

Page 12: CAPTCHA

How does this work!!!

Page 13: CAPTCHA

Illustration-IMCA Architecture• In current CAPTCHA implementations, timeout values for solving

CAPTCHA are utilized in hope of detecting a 3rd party human attack.

• The logic here is that the time between the initial display of a CAPTCHA image to the time a 3rd party human solution is delivered will exceed the timeout and therefore be detected.

• This is where Instant Messengers come in. Instant Messenger (IM) allows real-time communication between two or more participants over a network.

• IMCA’s use of IM technology allows CAPTCHA images to be delivered to 3rd party human solvers at speeds which defy detection by CAPTCHA timeout values.

Page 14: CAPTCHA

IMCA Architecture

Page 15: CAPTCHA

For our example, A human joins the club by providing name, email, and a response to the CAPTCHA text.

The “Attack Script” scraped the CAPTCHA image from the page and then utilized the “IM Connector”

The 3rd party human solver received a link to the delivered image, viewed the image, and responded with the CAPTCHA text.

Page 16: CAPTCHA

Continues:The “Attack Script” receives the reply along with randomly

generated form data.

This whole process delivered to 3rd party human solvers so efficiently, it renders the timeout values of existing CAPTCHA implementations useless.

Page 17: CAPTCHA

This whole process delivered to 3rd party human solvers so efficiently, it renders the timeout values of existing CAPTCHA implementations useless.

Hence the need for a new design iCAPTCHA, the next generation CAPTCHA implementation, which will be introduced next.

Page 18: CAPTCHA

iCAPTCHA to the rescue….!!

Page 19: CAPTCHA

iCAPTCHA – interactive CAPTCHA•Facing with the growing threat of 3rd

party human attacks on existing CAPTCHA technologies, the industry is in need of a reliable defence technique.

•This section describes our proposed iCAPTCHA as the first and initial step towards defending against this type of attack.

Page 20: CAPTCHA

First, a normal CAPTCHA image is dynamically generated and displayed.

Upon clicking on the CAPTCHA image, several buttons with confused characters appear below the CAPTCHA image.

User clicks on the button corresponding to char-acter the first character in the CAPTCHA image.

Upon each click, a new set of buttons is generated, until one click has been performed for each char-acter of the CAPTCHA image.

On the server side, session information is stored, and the correct index sequence is then compared with the user clicked index sequence.

If match , the CAPTCHA has been correctly decoded by the user.

Concept and Implementation

Page 21: CAPTCHA

iCAPTCHA Security Features:Allows the timeout value for iCAPTCHA for each character input.

iCAPTCHA allows users to take as much time as needed to decode the image first before starting the multi-step response sequence.

The per-character-response time for a legitimate user interaction with iCAPTCHA is calculated as:

Ru = t1 + t2 + U

• Ru: the total response time for a single character in the legitimate user scenario.

• t1: network time to download and view the CAPTCHA.

• t2: network time to submit HTML post to the web server

•U: time for user to decode and click on the corresponding character

Page 22: CAPTCHA

Figure depicts the process of forwarding iCAPTCHA to a 3rd party human solver.

In the first iteration, the attack script notifies the human solver of the iCAPTCHA location, which is served on an attacker’s web server.

For subsequent iterations, the Attacker-Bot proxies the response inputs back and forth with the target website.

In step 5, the human solver has to respond to the iCAPTCHA by clicking on the corresponding character button. this point, the attacker’s web server has the response information, but it cannot immediately deliver it to the attacker bot, and has to poll for the result.

Depending on the polling interval and resource available, step 6 adds additional delay time to the process.

Page 23: CAPTCHA

The total per-character-response time for an attacker can be expressed as follow:Ra = t1 + t2 + t4 + t5 + t6 + t7 + U

• Ra: the total response time for a single character in the 3rd party human attacker user scenario.• t1: network time to download and scrape the CAPTCHA. • t2: network time to upload or ftp CAPTCHA image attacker’s web server.• t4: delay to download and view the CAPTCHA and obfuscated characters.• t5: network time to submit HTML post to the web server.• t6: the polling time for response.• t7: network time to submit HTML post to the web server.• U: time for human user to decode and click on the corresponding character.

3rd party human solver attack adds 4 additional time delays in solving a single CAPTCHA character .

Allows iCAPTCHA to be effective in detecting and stopping 3rd party human attacks.

Page 24: CAPTCHA

iCAPTCHA Attack Detection Algorithms

Algorithm 1 – Single Slow Response Detection Algorithm: Rejects any CAPTCHA test responses that have one or more per character response times greater than a predefined threshold D.

Algorithm 2 – Two Consecutive Slow Responses Detection: Only reject an iCAPTCHA test if it has 2 consecutive per-character response times above the threshold D.

• Significantly reduces the false positive rate.

Dynamic Detection Threshold Algorithm: Detect the Round- Trip Time (RTT) on the ongoing HTTP connection, and then set the detection threshold D for this client as:

D = RTT + Uavg

• Uavg is the average baseline time for a human user to decode and click on the corresponding character. The value of Uavg can be obtained based on observation of past client responses.

Page 25: CAPTCHA

Continues:

• RTT is the round trip time between the server and a remote user.

Page 26: CAPTCHA

Performance Results and Observations

•Following shows the result of the study carried out on iCaptcha:

Page 27: CAPTCHA

Comparison of Two detection algorithms

Page 28: CAPTCHA

Limitations1. Users with impaired vision or motor skills.

2. iCaptcha is slower on computers with a low speed network connection.

Page 29: CAPTCHA

Conclusion• Captcha plays an important role in protecting Internet

resources from attacks by automated scripts.

• Captchas are vulnerable to 3rd party human attacks; iCaptcha is useful to counter against these kind of attacks.

Page 30: CAPTCHA

References• iCAPTCHA: The Next Generation of CAPTCHA Designed to

Defend Against 3rd Party Human Attacks, IEEE 2011.

• Sam Hocevar, “PWNtcha – a Captcha Decoder Website”,http://caca.zoy.org/wiki/PWNtcha

• Wikipedia: http://www.wikipedia.com

Page 31: CAPTCHA