You are on page 1of 7

https://resources.infosecinstitute.

com/topic/owasp-2017-top-10-vs-2013-top-10/
APPLICATION SECURITY

OWASP 2017 top 10 vs. 2013 top 10


August 15, 2017 by Infosec
After a long interval of four years, OWASP in April 2017 released a draft of its latest list
of “Top 10 Web Application Security Vulnerabilities.” The OWASP Top 10 has served as
a benchmark for the world of application security for the last 14 years. It was designed
to allow developers to identify and avoid coding bugs and to provide some standard to
security teams for mitigating vulnerabilities on the basis of priority. Enterprises often rely
on it for developing their application security programs and it also lies at the root of
various product scoring mechanisms for vulnerability testing.
Some security leaders have welcomed the important changes in the list, specifically the
inclusion of application programming interfaces (APIs), which shows the acceptance of
shifts in the threat landscape. Others have noted that the list seems similar to its
previous manifestations in many ways.

Before we go into the detail of what has changed in OWASP Top 10 vulnerabilities of
2017, let us take a glance at the table below for a quick review.

The vulnerabilities A4 and A7 in the 2013 list have been merged in 2017 list as a single
vulnerability, A4 – Broken Access Control. The vulnerability A10 has been dropped in
the new list, whereas two new vulnerabilities have made it to the list of 2017.

These are A7 – Insufficient Attack Protection and A10 – Unprotected APIs.

Vulnerabilities that remain


We will now offer brief insights into vulnerabilities that have not changed in ranking and
stay at their position in the new list.
A1 – Injection
OS, SQL, and LDAP injection flaws take place as a result of sending untrusted data to
an interpreter as part of a query or command. This data can get the interpreter tricked
into executing commands that may not be intended.
A2 – Broken authentication and session management
When authentication and session management are incorrectly implemented, it enables
attackers to steal identities of other users or compromise keys and passwords.
A3 – Cross-site scripting
This vulnerability arises when untrusted data is included in a new web page by an
application, or when an existing web page is updated with data supplied by a user by
using a browser API with the ability to create JavaScript. This can allow an attacker to
inject and execute scripts in the browser, which in turn can deface a website or redirect
users to malicious websites.
A5 – Security misconfiguration
Default configurations are often insecure and can result in security breaches. Good
security comes with secure configuration of applications, framework, servers, platform,
etc.
A6 – Sensitive data exposure
Sensitive data such as financial or health records need to be fully protected. Data
exposed to attackers is a vulnerability and can be misused for identity theft, credit card
fraud, and various other crimes.
A8 – Cross-site request forgery (CSRF)
In a CSRF attack, the victim’s browser is forced to send a fake HTTP request to a
vulnerable web app. The vulnerable application considers these requests as legitimate
and answers them accordingly.
A9 – Using components with known vulnerabilities
Application components such as software modules or libraries that are vulnerable may
be exploited and facilitate serious loss of data.

New vulnerabilities
A4 – Broken access control
This vulnerability results when user access control is not properly authenticated. It
allows cyber-attackers to access other users’ accounts and data, view sensitive files,
modify access rights, etc.
This vulnerability, which now ranks fourth in the 2017 list, is actually a merger of two
vulnerabilities from the 2013 OWASP Top 10 list: insecure direct object references and
missing function level access control. Both these vulnerabilities arise as a result of
improper access control.
A7 – Insufficient attack protection
Many applications and APIs have insufficient ability to detect, avoid, and respond to
automated and manual attacks. Complete attack protection requires automatic
detection, logging, and response to attempts.
A10 – Unprotected APIs
Applications nowadays often come with APIs that may not always be protected, making
them vulnerable to attacks.

The vulnerability that ranked 10th in the 2013 list of vulnerabilities is not in the top 10
vulnerabilities of 2017. This means that unvalidated redirects and forwards are not as
common a vulnerability now as they were four years back.
Some thoughts on why the list has changed
The release of OWASP Top 10 is based upon the analysis of more than 2.3 million
vulnerabilities in 50,000 web applications. There are two major additions to this release,
i.e. insufficient attack protection and underprotected APIs. According to Jeff Williams,
OWASP Top 10 project creator and coauthor, insufficient attack protection has made it
to the list because of the large number of threats that applications nowadays face.
Keeping this in mind, all modern applications should be able to detect, prevent, and
respond to automated and manual attacks and block them.
The addition of the unprotected APIs category is a result of an explosion of API usage in
modern software. APIs use a variety of data formats and protocols, such as
REST/JSON, SOAP/XML, GWT, RPC, and others. These APIs are usually unprotected
and they hold many vulnerabilities and signify a “major blind spot” for organizational
security programs. OWASP is helping teams to refocus on this escalating problem.
“To me, T10-2017 reflects the move towards modern, high-speed software development
that we’ve seen explode across the industry since the last version of the T10 in 2013,”
said Williams. “While many of the vulnerabilities remain the same, the addition of APIs
and attack protection in this version is designed to focus organizations on the key
issues for modern software.”

Reasons for the overhaul of the top 10 in 2017


The OWASP Top 10 2017 is important for more than one reason. Generally, this
overhaul was the need of the day, as it highlights and captures various key elements of
application security particularly relevant for present-day apps.
Let us look at the key changes in OWASP Top 10 2017 vs. OWASP Top 10 2013, and
try to understand why these changes were necessary.
Access control attacks are among the main methods that hackers use to compromise
applications and get hold of sensitive information. During the past two years, attacks
against access control are said to have increased, as compared to SQL injection
and cross-site scripting attacks. Particularly, SQL injections are now becoming rarer
mainly because all modern application frameworks are automated to carry out
parameterized SQL queries with the help of object-relational mapping (ORMs). As API
applications and single page applications are now more common, attacks against
authorization such as authentication attacks and insecure direct object reference
attacks are now becoming a larger threat. As developers implement their own rules of
access control, the OWASP Top 10 is right to classify all access control and
authorization vulnerabilities under one single category that they call the “broken access
control.” It is important to note here that the broken access control was ranked second
in the OWASP Top Ten list of 2004 and has been brought back to the 2017 list.
According to OWASP, it was split into “insecure direct object reference” and “missing
function level access control” categories in 2007 to concentrate on each half of the
access control. Now that it is not deemed necessary anymore, the two have been
remerged into the single category off “broken access control.”
Under-protected APIs as a new vulnerability
With the rise in distributed computing and client platforms, we are clearly moving toward
making APIs as against classic browser-focused web apps. APIs allow bringing multiple
platform applications to a specific set of web services, whether mobile apps or smart
TVs. These are more susceptible to attacks than typical web applications and are prone
to a large number of attack possibilities, such as standard injection attacks, token-based
information disclosure flaws, and access control flaws.
Insufficient attack protection as a new vulnerability
Though this vulnerability category lies outside the application context, it is a much
welcomed addition to the Top 10 list. The focus of this category is on detection,
response, and application attack blocking, thus making them hard to exploit. This is
important because, where application security programs focus too much on preventive
measures, little focus or effort is given to detective and corrective measures. Detective
measures include fundamental steps such as penetration testing, vulnerability
assessment, and deploying RASPs or WAF; whereas corrective measure include the
release of patches for discovered vulnerabilities to provide protection against attacks.
Removal of unvalidated redirects and forwards category
The category “A-10 Unvalidated Redirects and Forwards” in the OWASP Top 10 2013
has been removed from the Top 10 2017 because the statistical data of OWASP
indicated that the vulnerability is not highly prevalent anymore. This category is related
to URL redirection vulnerabilities stemming from the use of untrusted user input for
redirecting users to another page.
Though the reason for including this vulnerability in the Top 10 2013 was to indicate the
importance of why we should never blindly trust any user input, the truth is that most of
the time open URL redirects can be identified and pose little threat to organizations,
unless they involve a substantial amount of social engineering. In that case, an attacker
would have to develop their own phishing website for harvesting sensitive user
information. Still, there are several cases where an apparently harmless open URL
redirect has combined with other web vulnerabilities to cause serious damage to user
data.
The need for security awareness training
The OWASP Top 10 has reinforced the need for and importance of information security
awareness training to ensure that employees are well aware of the threats they face.
They need to know the consequences of disclosing information in a social engineering
attack, accessing sensitive information without authentication, and failing to report any
unusual observed activity. As today’s apps are released rapidly one after another and
undergo constant updates with new features, we need to ensure that they are tested
continuously for security vulnerabilities. Security awareness training stresses the
importance of discovering vulnerabilities earlier in the application development lifecycle,
rather than later because, once a security flaw makes its way into production, it can
cause serious disruption.
Comments on the 2017 Top 10 Release can be submitted until June 30 via email
to OWASP-TopTen@lists.owasp.org or dave.wichers@owasp.org (for private
comments). The final version of OWASP Top 10 will be released in July or August.
Posted: August 15, 2017

---
Después de un largo intervalo de cuatro años, OWASP en abril de 2017 publicó
un borrador de su lista más reciente de las "10 principales vulnerabilidades de
seguridad de aplicaciones web". El OWASP Top 10 ha servido como punto de
referencia para el mundo de la seguridad de aplicaciones durante los últimos 14
años. Fue diseñado para permitir a los desarrolladores identificar y evitar errores
de codificación y para proporcionar algún estándar a los equipos de seguridad
para mitigar las vulnerabilidades en función de la prioridad. Las empresas a
menudo confían en él para desarrollar sus programas de seguridad de
aplicaciones y también se encuentra en la raíz de varios mecanismos de
puntuación de productos para las pruebas de vulnerabilidad.

Algunos líderes de seguridad han dado la bienvenida a los cambios importantes en la


lista, específicamente la inclusión de interfaces de programación de aplicaciones (API),
lo que muestra la aceptación de cambios en el panorama de amenazas. Otros han
notado que la lista parece similar a sus manifestaciones anteriores en muchos
aspectos.
Antes de entrar en los detalles de lo que ha cambiado en las 10 principales
vulnerabilidades de OWASP de 2017, echemos un vistazo a la tabla a continuación
para una revisión rápida.

Las vulnerabilidades A4 y A7 en la lista de 2013 se fusionaron en la lista de 2017 como


una sola vulnerabilidad, A4: control de acceso roto. La vulnerabilidad A10 se eliminó en
la nueva lista, mientras que dos nuevas vulnerabilidades llegaron a la lista de 2017.
Estas son A7: protección contra ataques insuficiente y A10: API desprotegidas.

Vulnerabilidades que quedan


Ahora ofreceremos una breve descripción de las vulnerabilidades que no han cambiado
en la clasificación y permanecen en su posición en la nueva lista.
A1 – Inyección
Las fallas de inyección de OS, SQL y LDAP se producen como resultado del envío de
datos no confiables a un intérprete como parte de una consulta o comando. Estos datos
pueden engañar al intérprete para que ejecute comandos que pueden no ser los
previstos.
A2 – Autenticación y gestión de sesiones rotas
Cuando la autenticación y la administración de sesiones se implementan
incorrectamente, los atacantes pueden robar las identidades de otros usuarios o
comprometer las claves y contraseñas.
A3: secuencias de comandos entre sitios
Esta vulnerabilidad surge cuando una aplicación incluye datos que no son de confianza
en una nueva página web, o cuando una página web existente se actualiza con datos
proporcionados por un usuario mediante una API de navegador con la capacidad de
crear JavaScript. Esto puede permitir que un atacante inyecte y ejecute scripts en el
navegador, lo que a su vez puede desfigurar un sitio web o redirigir a los usuarios a
sitios web maliciosos.
A5 – Configuración incorrecta de seguridad
Las configuraciones predeterminadas suelen ser inseguras y pueden dar lugar a
infracciones de seguridad. Una buena seguridad viene con una configuración segura
de aplicaciones, marco, servidores, plataforma, etc.
A6 – Exposición de datos confidenciales
Los datos confidenciales, como los registros financieros o de salud, deben protegerse
por completo. Los datos expuestos a los atacantes son una vulnerabilidad y se pueden
utilizar indebidamente para el robo de identidad, el fraude con tarjetas de crédito y
varios otros delitos.
A8: falsificación de solicitud entre sitios (CSRF)
En un ataque CSRF, el navegador de la víctima se ve obligado a enviar una solicitud
HTTP falsa a una aplicación web vulnerable. La aplicación vulnerable considera estas
solicitudes como legítimas y las responde en consecuencia.
A9 – Uso de componentes con vulnerabilidades conocidas
Los componentes de la aplicación, como los módulos de software o las bibliotecas que
son vulnerables, pueden explotarse y facilitar una pérdida grave de datos.

Nuevas vulnerabilidades
A4 – Control de acceso roto
Esta vulnerabilidad se produce cuando el control de acceso de los usuarios no se
autentica correctamente. Permite a los ciberatacantes acceder a las cuentas y datos de
otros usuarios, visualizar archivos sensibles, modificar derechos de acceso, etc.
Esta vulnerabilidad, que ahora ocupa el cuarto lugar en la lista de 2017, es en realidad
una fusión de dos vulnerabilidades de la lista OWASP Top 10 de 2013: referencias
inseguras a objetos directos y falta de control de acceso a nivel de función. Ambas
vulnerabilidades surgen como resultado de un control de acceso inadecuado.
A7 – Protección contra ataques insuficiente
Muchas aplicaciones y API tienen una capacidad insuficiente para detectar, evitar y
responder a ataques automáticos y manuales. La protección completa contra ataques
requiere detección automática, registro y respuesta a los intentos.
A10 – API desprotegidas
Hoy en día, las aplicaciones a menudo vienen con API que no siempre están
protegidas, lo que las hace vulnerables a los ataques.
La vulnerabilidad que ocupó el puesto 10 en la lista de vulnerabilidades de 2013 no se
encuentra entre las 10 principales vulnerabilidades de 2017. Esto significa que los
redireccionamientos y reenvíos no validados no son una vulnerabilidad tan común
ahora como lo fueron hace cuatro años.

Algunas reflexiones sobre por qué la lista ha cambiado


El lanzamiento de OWASP Top 10 se basa en el análisis de más de 2,3 millones de
vulnerabilidades en 50.000 aplicaciones web. Hay dos adiciones principales a esta
versión, es decir, protección contra ataques insuficiente y APIs sin protección. Según
Jeff Williams, creador y coautor del proyecto OWASP Top 10, la protección contra
ataques insuficiente ha llegado a la lista debido a la gran cantidad de amenazas que
enfrentan las aplicaciones hoy en día. Teniendo esto en cuenta, todas las aplicaciones
modernas deberían poder detectar, prevenir y responder a ataques automáticos y
manuales y bloquearlos.
La adición de la categoría de API sin protección es el resultado de una explosión en el
uso de API en el software moderno. Las API utilizan una variedad de formatos y
protocolos de datos, como REST/JSON, SOAP/XML, GWT, RPC y otros. Estas API
generalmente no están protegidas y tienen muchas vulnerabilidades y significan un
"punto ciego importante" para los programas de seguridad organizacional. OWASP
está ayudando a los equipos a reenfocarse en este problema creciente.
“Para mí, T10-2017 refleja el movimiento hacia el desarrollo de software moderno y de
alta velocidad que hemos visto explotar en toda la industria desde la última versión de
T10 en 2013”, dijo Williams. “Si bien muchas de las vulnerabilidades siguen siendo las
mismas, la adición de API y protección contra ataques en esta versión está diseñada
para enfocar a las organizaciones en los problemas clave del software moderno”.

RAZONES PARA LA REVISIÓN DEL TOP 10 EN 2017


El OWASP Top 10 2017 es importante por más de una razón. En general, esta revisión
era la necesidad del momento, ya que destaca y captura varios elementos clave de la
seguridad de las aplicaciones, particularmente relevantes para las aplicaciones
actuales.
Veamos los cambios clave en OWASP Top 10 2017 vs. OWASP Top 10 2013, y
tratemos de entender por qué estos cambios fueron necesarios.
Los ataques de control de acceso se encuentran entre los principales métodos que
utilizan los piratas informáticos para comprometer aplicaciones y obtener información
confidencial. Durante los últimos dos años, se dice que han aumentado los ataques
contra el control de acceso, en comparación con los ataques de inyección SQL y cross-
site scripting. 

En particular, las inyecciones de SQL ahora se están volviendo más raras,


principalmente porque todos los marcos de aplicaciones modernos están
automatizados para realizar consultas SQL parametrizadas con la ayuda del mapeo
relacional de objetos (ORM). Dado que las aplicaciones API y las aplicaciones de una
sola página ahora son más comunes, los ataques contra la autorización, como los
ataques de autenticación y los ataques de referencia de objetos directos inseguros, se
están convirtiendo en una amenaza mayor. 

A medida que los desarrolladores implementan sus propias reglas de control de


acceso, OWASP Top 10 tiene razón al clasificar todas las vulnerabilidades de
autorización y control de acceso en una sola categoría que denominan "control de
acceso roto". Es importante señalar aquí que el control de acceso roto ocupó el
segundo lugar en la lista OWASP Top Ten de 2004 y ha vuelto a la lista de
2017. Según OWASP, se dividió en categorías de "referencia de objeto directo
inseguro" y "control de acceso de nivel de función faltante" en 2007 para concentrarse
en cada mitad del control de acceso. Ahora que ya no se considera necesario, los dos
se han vuelto a fusionar en la categoría única de "control de acceso roto".

APIs desprotegidas como nueva vulnerabilidad


Con el auge de la computación distribuida y las plataformas de clientes, claramente nos
estamos moviendo hacia la creación de API en lugar de las aplicaciones web clásicas
centradas en el navegador. Las API permiten llevar aplicaciones de múltiples
plataformas a un conjunto específico de servicios web, ya sean aplicaciones móviles o
televisores inteligentes. Estos son más susceptibles a los ataques que las aplicaciones
web típicas y son propensos a una gran cantidad de posibilidades de ataque, como
ataques de inyección estándar, fallas de divulgación de información basadas en tokens
y fallas de control de acceso.

Protección insuficiente contra ataques como nueva vulnerabilidad


Aunque esta categoría de vulnerabilidad se encuentra fuera del contexto de la
aplicación, es una adición muy bienvenida a la lista de las 10 principales.  El enfoque de
esta categoría está en la detección, respuesta y bloqueo de ataques de aplicaciones, lo
que los hace difíciles de explotar. Esto es importante porque, cuando los programas de
seguridad de las aplicaciones se centran demasiado en las medidas preventivas, se
presta poca atención o esfuerzo a las medidas de detección y corrección. Las medidas
de detección incluyen pasos fundamentales como pruebas de penetración, evaluación
de vulnerabilidades y despliegue de RASP o WAF; mientras que las medidas
correctivas incluyen el lanzamiento de parches para vulnerabilidades descubiertas para
brindar protección contra ataques.

Eliminación de la categoría de redireccionamientos y reenvíos no validados


La categoría "A-10 Redireccionamientos y reenvíos no validados" en OWASP Top 10
2013 se eliminó del Top 10 2017 porque los datos estadísticos de OWASP indicaron
que la vulnerabilidad ya no es muy frecuente. Esta categoría está relacionada con las
vulnerabilidades de redirección de URL derivadas del uso de entradas de usuarios que
no son de confianza para redirigir a los usuarios a otra página.

Aunque la razón para incluir esta vulnerabilidad en el Top 10 2013 fue para indicar la
importancia de por qué nunca debemos confiar ciegamente en la entrada de ningún
usuario, la verdad es que la mayoría de las veces, los redireccionamientos de URL
abiertos pueden identificarse y representan una amenaza mínima para las
organizaciones, a menos que implican una cantidad sustancial de ingeniería social. En
ese caso, un atacante tendría que desarrollar su propio sitio web de phishing para
recopilar información confidencial del usuario. Aun así, hay varios casos en los que una
redirección de URL abierta aparentemente inofensiva se ha combinado con otras
vulnerabilidades web para causar daños graves a los datos del usuario.

LA NECESIDAD DE FORMACIÓN EN CONCIENCIA DE SEGURIDAD


El OWASP Top 10 ha reforzado la necesidad y la importancia de la capacitación en
concientización sobre la seguridad de la información para garantizar que los empleados
sean conscientes de las amenazas que enfrentan. Necesitan conocer las
consecuencias de divulgar información en un ataque de ingeniería social, acceder a
información confidencial sin autenticación y no informar ninguna actividad inusual
observada. Dado que las aplicaciones de hoy en día se lanzan rápidamente una tras
otra y se actualizan constantemente con nuevas funciones, debemos asegurarnos de
que se prueben continuamente para detectar vulnerabilidades de seguridad. La
capacitación en concientización sobre seguridad enfatiza la importancia de descubrir
vulnerabilidades antes en el ciclo de vida del desarrollo de la aplicación, en lugar de
hacerlo más tarde porque, una vez que una falla de seguridad llega a la producción,
puede causar una interrupción grave.

Los comentarios sobre el lanzamiento de los 10 principales de 2017 se pueden enviar


hasta el 30 de junio por correo electrónico a  OWASP-
TopTen@lists.owasp.org o  dave.wichers@owasp.org  (para comentarios privados). La
versión final de OWASP Top 10 se lanzará en julio o agosto.

---

You might also like