Ecommerce Developer

Top Five Application-Security Risks for 2010

 

It wouldn't be the new year without a "best of" or a "top ten" list.

For my list, I’ve chosen to expand upon OWASP's (Open Web Application Security Project) recap of the top application security threats to look out for next year.

So here they are, the top five application-security risks for 2010.

1. Injection Attack

All web applications that collect and transmit data (using forms, for example) are susceptible to injection attacks. By sending specific commands through your application's forms, hackers can modify various elements of the code. In extreme cases, injection attacks could allow attackers to penetrate a firewalled environment, such as a network or database.

SQL injections like the ones that compromised Symantec and NASA this year dominate this attack category, but there are many additional varieties to which you could fall prey.

Some of the best protective measures for injection attacks include:

2. Cross-site Attack

Cross-site scripting (XSS) attacks steal private information like cookies or session tokens that unsuspecting users have associated with a particular website. XSS exploits can also redirect victims to familiar-looking web content that has been devised by the attacker to steal personally identifiable information or install malware.

Hackers deliver the malicious XSS-laden content that makes these exploits possible in the form of JavaScript, HTML, Flash or any executable code format for that matter. Any web application that compiles user-generated content without validating or encoding it first could fall prey to an XSS exploit. Social media hubs and blogs that allow users to post un-moderated comments are extremely susceptible to malicious XSS exploits (as was the case with Reddit's stored XSS attack earlier this year). This can include customer reviews and comments.

Reflected XSS exploits can be combined with phishing techniques to invade private information systems like email. Lance James and his team of experts reveal how easily they exploited an XSS vulnerability to win Strong Webmail's $10,000 challenge in a quick two weeks.

Developers can help prevent XSS Attacks by deploying code that:

3. Cross-site Request Forgery

Cross-site request forgery (CSRF) exploits force unknowing users to carry out any number of malicious activities as long as the action is allowable within their permission set during an authenticated user session. If a web application administrator's credentials are compromised for example, CSRF could overtake the entire website.

Here's a short list of some common (and catastrophic) CSRF capabilities:

CSRF capabilities are so powerful, you can understand why banks, financial brokers, bill pay services, and basically any institution that ties user credentials to money would need to approach each day with extreme caution and oversight. In a blog post this year, SECCOM Labs demonstrated how easily a CSRF banking scheme could be carried out.

Prohibiting users from submitting HTML code is one way help prevent CSRF. In many cases; however, that's not feasible because sites containing blogs, product reviews, and social media rely heavily on user-generated content. If your application has social web components like product reviews or comments, be aware that extremely effective, proprietary tools capable of disarming security features of even the most popular social vehicles like Twitter and Facebook do exist.

Protect applications from CSRF vulnerabilities by:

4. Insecure Direct Object References

Insecure direct object reference flaws allow attackers access to private directories, for example, by manipulating the URL to gain access. The primary risks with insecure direct object references include data leakage and identity theft. Adobe Flash Player fell victim to this type of flaw last year, and the company has since addressed and patched the vulnerability.

Developers with expertise in securing applications can help prevent insecure direct object references by:

5. Broken Authentication and Session Management

Because all web applications have (at least) an administrator account, every website is susceptible to authentication and session management flaws. All too often, fingers point toward typical website functions like logout, forgotten password retrieval, and account update procedures when problems with authentication and session management arise.

Custom applications have increased risk. In fact, many instances of authentication and session management flaws occur when the code includes custom methods for validating user names and passwords and/or homegrown techniques for handling cookies or session tokens. Session hijacking is a good example of the trouble that can crop up when authentication and session management flaws reside within your application.

Using widely accepted mechanisms for user authentication and session management is a good, preventative start. Additionally, you can take these steps to protect your application from these vulnerabilities.

Related Articles

This article is filed under PCI Compliance & Security and has the following keyword tags: secure, hacking, SQL, security risk.

0 Comments

 

Inside Ecommerce Developer