Web applications are rich targets for attackers. Available to anyone, from anywhere, these apps are designed for accessibility -- and are also often gateways to valuable data stored deep within an organization.
How can you make your applications and data available to a wide variety of employees, customers, and partners without also exposing your most sensitive database information? This conundrum is the subject of Dark Reading's newest Database Security Tech Center report, "Protecting Databases From Web Applications."
Clearly, enterprises need tools and strategies to help their Web app developers protect the integrity of back-end databases, while database developers must ensure their Web interfaces are as secure as possible.
The key is to remember that, in most cases, the Web application itself has little value to an attacker. Rather, they're using the app as a conduit to the plethora of data accessed by the Web application from a back-end database.
The first defensive step is to make sure it's not just the database administrator who understands where sensitive data is stored, how it is accessed, and the true risk of disclosure. We often see databases treated like black boxes, with some method of access exposed to those people and applications that need it. After the select, update, or insert operation is successful, people forget there is more magic happening. Teamwork is the key.
There is a wide variety of threats that could exploit vulnerabilities in the interface between the Web app and the database: SQL injection, authentication flaws, and privilege escalation are among the most significant.
The process of determining the threats is called threat modeling. Historically, threat modeling has been used in application security to determine the highest-risk portions of an application, thus allowing security staff to focus on those areas more than others. This concept is beginning to spread to other areas of security.
Threat modeling involves meeting with people who know the application and other related technology area experts to gain an understanding of the distinct parts of the application, its functionality, and the inherent threats. By spending time to fully grasp the application and its associated threats, protections and testing can be tailored to save time or to fit in the most possible threat mitigation into a tight time frame and budget.
There are a few security steps that should be standard procedure in all environments where Web apps touch back-end databases. First, you must ensure database connections are encrypted. Second, there must be strong authentication -- each application should use its own login credentials. Third, you should configure access rights as granularly as possible, giving each application only the privileges it requires.
To find out more about the specific tools and practices that can be used to protect a sensitive database from Web-facing threats, download the full report.
Have a comment on this story? Please click "Discuss" below. If you'd like to contact Dark Reading's editors directly, send us a message.