There are a couple of options for this.
To get profile fields the most common solution is the profile module included in Drupal core. Go to
Administer > Site building > Modules and enable it under core-optional. Then you can configure the Profile module at
Administer > User settings > Profile and in the settings you can say whether the fields will show during registration or not.
To get a captcha during registration you will need one of a couple of modules:
I prefer Mollom because it works very well without being annoying, but it sends your content to an external site to do some verification.
There is also Captcha which is less reliable than Mollom but which keeps the content inside your site.