Con la transformación digital muchas empresas están implantando aplicaciones web en su empresa. Por eso, es importante conocer las medidas de seguridad que se pueden implementar de cara a desarrollar una nueva aplicación o en una que esté ya en funcionamiento. Casi todas las vulnerabilidades pueden ser aplicadas sin importar el tamaño de la empresa.
El ‘Proyecto abierto de seguridad en aplicaciones web’ (Open Web Application Security Project, OWASP por su acrónimo) es una comunidad que a través de sus colaboradores, los cuales les ceden datos de más de 500 000 aplicaciones web, emite un documento llamado OWASP Top 10 que recopila las 10 vulnerabilidades web más comunes, en este caso de 2022.
A día de hoy, el software está presente en nuestras vidas y, como es lógico, a medida que este sea más complejo se volverá más crítico, es decir, cuanto más complejo más posibilidades habrá de que sea vulnerado por los ciberdelincuentes.
¿Cuáles son esas vulnerabilidades y cómo me pueden afectar?
1. Pérdida del control de acceso (Broken Access Control)
El control de acceso permite cumplir una política de permisos y roles, es decir, que un usuario pueda acceder a determinados lugares. Estas restricciones implican que los usuarios no puedan actuar fuera de los permisos y, además, llevar un control de quien accede a cada recurso. La vulnerabilidad Broken Access Control permite que un usuario sin privilegios pueda acceder a un recurso al que no tendría que acceder.
¿Qué impacto puede tener esto en mi empresa?
- Un ciberdelicuente podría actuar en el sistema con permisos de usuario o administrador.
- Acceso a registros, directorios o archivos confidenciales para su posterior posible divulgación.
2. Fallos criptográficos (Cryptographic Failures)
Hay ciertos datos que deben estar cifrados, como credenciales de acceso, datos bancarios, información confidencial de la empresa, etc., ya que aparte de que la ley lo exija, el que un ciberdelincuente se pueda hacer con ellos puede ser catastrófico para la empresa. En resumen, para que estos sean vistos únicamente por las personas autorizadas de la empresa hay que aplicarles un cifrado con algoritmos y protocolos estándares y robustos.
¿Qué impacto puede tener esto en mi empresa?
- Exposición de datos sensibles a un ciberdelincuente (datos personales, críticos o estratégicos para la empresa; credenciales…).
3. Inyección (Injection)
Esto sucede cuando un ciberdelincuente puede enviar datos dañinos a un intérprete. Como novedad este año, el Cross-site Scripting forma parte de esta categoría. Para ello, hay que tener API seguras y controles de verificación a la hora de introducir los datos.
¿Qué impacto puede tener esto en mi empresa?
- Exposición y posible modificación de datos sensibles por parte de un ciberdelincuente.
- Bajo ciertas circunstancias podría permitir al ciberdelincuente tomar el control del servidor.
4. Diseño inseguro (Insecure Desing)
A la hora de desarrollar una aplicación web es primordial incluir la seguridad de la aplicación desde la fase del diseño, ya que este año se ha incluido esta nueva categoría debido a la gran cantidad de aplicaciones que no la cumplen. Muchas aplicaciones cuentan con defectos en el diseño de las mismas.
¿Qué impacto puede tener esto en mi empresa?
- Exposición y posible modificación de datos por un ciberdelincuente.
- Acceso al servidor/aplicación por parte de un ciberdelincuente con permisos de administrador o usuario.
5. Configuración de seguridad defectuosa (Security Misconfiguration)
En nuestro entorno de la aplicación web los ciberdelincuentes intentarán acceder mediante cuentas por defecto, versiones obsoletas con vulnerabilidades sin actualizar, directorios desprotegidos, etc. Por ello, tiene que estar todo bien configurado y evitar usar credenciales por defecto, como puede ser en el caso de nuestro servidor, aplicaciones o dispositivos.
¿Qué impacto puede tener esto en mi empresa?
- Acceso no autorizado al sistema por parte del ciberdelincuente.
6. Componentes vulnerables y obsoletos (Vulnerable and Outdated Components)
Un ciberdelincuente podrá comprometer un sistema mediante vulnerabilidades ya conocidas en componentes comunes, como por ejemplo la versión del sistema operativo o aplicaciones instaladas en el servidor, entre otras.
¿Qué impacto puede tener esto en mi empresa?
- Algunas de estas vulnerabilidades pueden tener un impacto pequeño, pero las mayores brechas de seguridad se han producido mediante la explotación de este tipo de vulnerabilidades.
7. Fallos de identificación y autenticación (Identification and Authentication Failures)
Esto sucede cuando en las interfaces de acceso no se controla el número de intentos de autenticación, hay una baja complejidad de las contraseñas o no se implanta un sistema multifactor “2FA”. Esto podría permitir a un ciberdelicuente realizar ataques de fuerza bruta o diccionario para ingresar en él o cuando tu aplicación permite utilizar contraseñas débiles.
¿Qué impacto puede tener esto en mi empresa?
- Los ciberdelincuentes tendrán acceso a cuentas administrativas o de empleados en la aplicación.
8. Fallos en el software y en la integridad de los datos (Software and Data Integrity Failures)
Muchas aplicaciones se actualizan de manera automática. Cuando estas actualizaciones no son verificadas los ciberdelincuentes podrían modificarlas cargando sus propias actualizaciones y distribuyéndolas.
¿Qué impacto puede tener esto en mi empresa?
- Inclusión de código no deseado por un ciberdelincuente en mi aplicación.
9. Fallos en el registro y la supervisión de la seguridad (Security Logging and Monitoring Failures)
La falta de registros sobre eventos, los denominados logs, en la aplicación o en el sistema, como inicios de sesión (tanto válidos como fallidos). Por ejemplo, el que estos registros no se almacenen remotamente impide que se puedan detectar las infracciones.
¿Qué impacto puede tener esto en mi empresa?
- Desconocimiento sobre inicios de sesión no autorizados.
- Desconocimiento sobre los actos de un ciberdelincuente en nuestro sistema.
10. Falsificación de Solicitud del Lado del Servidor (Server-side Request Forguery o SSRF)
Cuando nuestra aplicación web obtiene un recurso externo y este no valida la URL un ciberdelincuente podría modificarla con fines malintencionados y realizar peticiones no autorizadas.
¿Qué impacto puede tener esto en mi empresa?
- Robo de datos sensibles de la empresa.
- Acceso a sistemas internos de la empresa.
Comentarios