SQL injection really bugs me. It is almost always the application developer's fault. Once you notice that a site's registration form breaks on apostrophes (maybe your last name is Irish) it's often a sign that you'll be able to throw in some SQL with that last name.
Penetration testing experts use a tool like Havij: An Advanced SQL Injection Tool. It's a nice friendly GUI designed to make it easy to "own" an application. Point, click, and compromise. Well, even though the project itself has nothing to do with evil, Cybercriminals are having a love affair with Havij.
My advice: download this tool and get to know it. Start your own love affair with Havij before the bad guys start throwing errant quotes into your form fields. Also don't think that enterprise languages like Java or .NET are invulnerable to SQL injection attacks. To avoid these attacks, here's some quick advice:
Note: This post references our Security Feed. We maintain a feed of security stories relevant to developers which is isolated from our main blog feed. If you are interested in getting the full feed, read it here.