SQL Injection

Introduction

SQL Injection caused some major problems a few years back. However, now most applications block against it. Even though this subject is not so applicable as a hacking technique any more, it can still demonstrate an issue that must be taken into consideration whenever two different protocols are interlaced.

SQL Injection is a process that takes advantage of the junction between two languages, specifically the junction between a language and SQL (the language of most databases). It relies on a specific set of user inputs, usually to online forms, to trick the database into doing something that was unintended. Through the use of SQL injection, a smart hacker could gain sensitive information, steal a user's password, open up a more serious security hole, or even delete your entire database. Once this tactic has been accomplished, there is nothing in that database that is truly safe.

Fortunately, SQL injection is extremely easy to protect against. There are a few tricks one can perform to minimize the chance of this being a security threat. Even if you are just looking to implement these, I would still encourage you to read the rest of this article. The general idea behind SQL injection extends beyond this specific instance. It is a possibility whenever two programs meet in such a way that requires one to parse commands for another. Similarly, when programming, this is one of the most difficult "bugs" to catch because nothing is actually performing incorrectly. Therefore, some knowledge about the cause will help to prevent issues caused by parsing from occurring.