Whilst having a quick search through the Project Wonderful advertising inventory considering if I should re-invest my earnings through the program I came across one of the rapidly growing breed of web-based social games. In Transporter Tycoon you control a fleet of vans, lorries, trucks, trains and courier bikes and hire and assign drivers to collect/deliver certain goods to different locations in a virtual world. Kind of along the lines of Railroads.
Whilst setting up my first lorry, driver and load I encountered possibly the worst CAPTCHA system ever twice. CAPTCHAS certainly aren’t as bad as they were a few years ago thanks to a new breed of intelligent question (well basic maths suffices for most). Here are two CAPTCHAS from the Transporter Tycoon system which are used to prevent automated bots from playing the game – not sure why anyone would do this since as far as I can tell there is only the glory of saying you wasted more of your life on the game than anyone else if you are on the leaderboard.
If you want to generate your own CAPTCHA on Transporter Tycoon (oh, the joy) you can see them being created dynamically here.
As you can see they are incredibly basic. They all consist of two single digit numbers which you must add or multiply together. The numbers are always in the same font, the same position and there is no noise, image distortion, sideways lines or anything. Very easy to crack I thought so I decided to write a simple Java program to crack them.
There is lots of information online about projects to crack various CAPTCHA systems and many places where you can hire people the other side of the world to manually type them in for less than a cent a time.
The program loads a dynamically created CAPTCHA from the Transporter Tycoon server and cracks it instantly by taking a very basic look at the values of certain pixels in the image.
Haven’t seen any CAPTCHAS on the site since I wrote it though! Also no idea how I would go about extracting them from within a page that has already been served (as would be required to submit the forms successfully).