Print

OWASP's Top 10 Most Common Web Application Security Risks (2010)

Based on the OWASP Risk Rating Methodology, this update made changes to the OWASP Top 10 focuses on identifying the most serious risks for Web applications. For each of these risks, they provide generic information about likelihood and technical impact using this simple ratings scheme. Although early versions of the Top 10 focused on identifying the most common vulnerabilities, they were also designed around risk, OWASP analyzes the risks based on the attack, the weakness, and its technical and business impact. OWASP chooses the name that is best known and will achieve the highest level of awareness.

The OWASP Top 10 is based on risk data from some large firms in application security industry including consulting companies and tool vendors.

# Security Risk Description
1
Injection Flaws Injection flaws, such as SQL, OS, and LDAP injection, occur when untrusted data is sent to an interpreter as part of a command or query. The attackers hostile data can trick the interpreter into executing unintended commands or accessing unauthorized data.
2
Cross Site Scripting (XSS) XSS flaws occur whenever an application takes untrusted data and sends it to a web browser without proper validation and escaping. XSS allows attackers to execute script in the victims browser which can hijack user sessions, deface web sites, or redirect the user to malicious sites.
3
Broken Authentication and Session Management Application functions related to authentication and session management are often not implemented correctly, allowing attackers to compromise passwords, keys, session tokens, or exploit implementation flaws to assume other users' identities.
4
Insecure Direct Object Reference A direct object reference occurs when a developer exposes a reference to an internal implementation object, such as a file, directory, or database key. Without an access control check or other protection, attackers can manipulate these references to access unauthorized data.
5
Cross Site Request Forgery (CSRF) A CSRF attack forces a logged-on victim's browser to send a forged HTTP request, including the victim's session cookie and any other authentication information, to a vulnerable web application. This allows the attacker to force the victim's browser to generate requests the vulnerable application thinks are legitimate requests from the victim.
6
Security Misconfiguration Security depends on having a secure configuration defined for the application, framework, web server, application server, and platform. All these settings should be defined, implemented, and maintained as many are not shipped with secure defaults.
7
Failure to Restrict URL Access Many web applications check URL access rights before rendering protected links and buttons. However, applications need to perform similar access control checks when these pages are accessed, or attackers will be able to forge URLs to access these hidden pages anyway.
8
Unvalidated Redirects and Forwards Web applications frequently redirect and forward users to other pages and websites, and use untrusted data to determine the destination pages. Without proper validation, attackers can redirect victims to phishing or malware sites, or use forwards to access unauthorized pages.
9
Insecure Cryptographic Storage Many web application do not properly protect sensitive data, such as credit cards, SSNs, and authentication credentials, with appropriate encryption or hashing. Attackers may use this weakly protected data to conduct identity theft, credit card fraud, or other crimes.
10
Insufficient Transport Layer Protection Applications frequently fail to encrypt network traffic when it is necessary to protect sensitive communications. When they do, they sometimes support weak algorithms, use expired or invalid certificates, or do not use them correctly.

Source: OWASP Microsoft PowerPoint

Changes

In this 2010 release, the OWASP made the following significant changes:

  1. They clarified that the Top 10 is about the Top 10 Risks, not the Top 10 most common weaknesses.
  2. They changed the ranking methodology to estimate risk, instead of relying solely on the frequency of the associated weakness.
  3. They added two items on the list with two new items:
    • Security Misconfiguration - This issue was the Insecure Configuration Management in Top 10 of 2004, but was dropped because it wasn't thought of as a software issue. OWASP now considers, from an organizational risk and prevalence perspective, it as clearly a candidate.
    • Unvalidated Redirects and Forwards: This issue is new in the Top 10.
  4. They also removed two items on the list:
    • Malicious File Execution. Although this issue is still a significant problem in many different environments, its prevalence in 2007 was inflated by large numbers of PHP applications with this problem. Today, PHP is now shipped with more default security, lowering the prevalence of this problem.
    • Information Leakage and Improper Error Handling. This issue is extremely prevalent, but the impact of disclosing stack trace and error message information is typically minimal.

Analyze the Risks

Attackers may search and use different paths through your application to attach Web applications.

OWASP Risk Model
Source: OWASP

Under the concept of risk management, each of these paths represents a risk that may or may not be serious enough to warrant attention. To determine the risk levels to an organization, the likelihood associated with the attack vector, weakness prevalende and detectability, and its technical impact needs to be analyzed (See OWASP Risk Rating Methodology).

OWASP Risk Rating
Source: OWASP