It looks like if you have a paid CloudFlare account it helps protect against these types of attacks using a web application firewall:
http://www.cloudflare.com/

I second a couple of comments recommending Clef. It allows you to login using your phone like a barcode scanner, syncing with a Clef "Wave." I like that you can control your session length via phone.