Hay muchas webs que te ofrecen captchas, yo en mi caso utilizo el de Google, puedes encontrarlos aquí:
http://www.google.com/recaptcha
También si lo prefieres puedes crearlo tu, no es nada complicado. Creas unas cuantas imagenes con letras y número, a ser posibles un poco dificiles de leer, no los crees con una fuente normal sobre un fondo blanco porque hay robots que pueden leerlos.
Después subes esas imágenes a tu servidor y en una base de datos asocias las imágenes con la respuesta correcta. En el formulario pones que salga una de las imágenes que hayas subido aleatoriamente y un campo para introducir la respuesta y en el script PHP, haces primero la comparación de la imagen y la respuesta y si es erronea, lo rechazas.
No tienen porque ser imagenes, también puedes poner preguntas y respuestas u operaciones matemáticas sencillas.
Como ves hay muchas formas, desde los prediseñados hasta donde te dé tu imaginación.