Insufficient Anti-automation


Project: WASC Threat Classification

Threat Type: Weakness

Reference ID: WASC-21

 

Insufficient Anti-automation

Insufficient Anti-automation occurs when a web application permits an attacker to automate a process that was originally designed to be performed only in a manual fashion, i.e. by a human web user.

 

Web application functionality that is often a target for automation attacks may include:

 

Example

A simple example of Insufficient Anti-automation, is an application that allows users to view their account details, by directly accessing a URL similar to the following:

 

http://www.some.site/app/accountDetails.aspx?UserID=XYZ

 

Where XYZ denotes an Account ID number.

If the application issues predictable (or enumerable) Account ID numbers, and also does not employ anti-automation mechanisms, an attacker could write an automated script, which would submit massive amounts of HTTP requests, each with a different Account ID number, and then harvest user account information from the response page.

 

In this example, the application suffered from several vulnerabilities, all of which contributed to the success of the attack -

 

CAPTCHA

A common practice for protecting against automation attacks is the implementation of CAPTCHA mechanisms in web applications. CAPTCHA stands for "Completely Automated Public Turing test to Tell Computers and Humans Apart".

 

Common CAPTCHA mechanisms may include:

 

It is worth noting, the some common CAPTCHA implementations have been proven to be insecure and/or breakable, for example:

 

References

CAPTCHA: Telling Humans and Computers Apart Automatically:

[1] http://www.captcha.net/

 

"Porn gets spammers past Hotmail, Yahoo barriers" (CNET news):

[2] http://news.cnet.com/2100-1023_3-5207290.html

 

"Next-Generation CAPTCHA Exploits the Semantic Gap":

[3] http://tech.slashdot.org/article.pl?sid=08/04/23/0044223

 

"Vorras Antibot":

[4] http://www.vorras.com/products/antibot/

 

"Inaccessibility of Visually-Oriented Anti-Robot Tests"

[5] http://www.w3.org/TR/2003/WD-turingtest-20031105/

 

"Breaking a Visual CAPTCHA":

[6] http://www.cs.sfu.ca/~mori/research/gimpy/

 

"Cracking CAPTCHAs for Fun and Profit":

[7] http://alwaysmovefast.com/2007/11/21/cracking-captchas-for-fun-and-profit/

 

"PWNtcha - CAPTCHA Decoder":

[8] http://caca.zoy.org/wiki/PWNtcha

 

"Computer scientists find audio CAPTCHAs easy to crack":

[9] http://arstechnica.com/news.ars/post/20081208-computer-scientists-find-audio-captchas-easy-to-crack.html

 

"PC stripper helps spam to spread":

[10] http://news.bbc.co.uk/2/hi/technology/7067962.stm

 

"Spam surges as Google's CAPTCHA falters":

[11] http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=9118884

 

Brute Force Attack

[12] http://projects.webappsec.org/Brute-Force