4. Introducción a los ataques existentes
Clasificación de amenazas WEB
Abuso de la funcionalidad: el abuso de funcionalidad es una técnica
de ataque que utiliza las propias características y funciones de un
sitio web para consumir, defraudar o eludir los mecanismos de
control de acceso.
Fuerza bruta: una ataque de fuerza bruta es un proceso
automatizado de prueba y error que se utiliza para adivinar el
nombre de usuario, la contraseña, el número de tarjeta de crédito o
la clave criptográfica de una persona.
Desbordamiento de almacenamiento intermedio: los exploits de
desbordamiento de almacenamiento intermedio son ataques que
alteran el flujo de una aplicación sobrescribiendo partes de la
memoria.
Usurpación de contenido: la usurpación de contenido es una
técnica de ataque que se utiliza para hacer creer a un usuario que
determinado contenido que aparece en un sitio web es legítimo y
no procede de un origen externo.
5. Introducción a los ataques existentes
Clasificación de amenazas WEB
Predicción de sesión/credenciales: la predicción de
sesión/credenciales es un método de apropiación de identidad o
suplantación de un usuario de sitio web. Deducir o adivinar el valor
único que identifica la sesión o el usuario concreto que efectúa el
ataque.
Script entre sitios: el script entre sitios (XSS) es una técnica de
ataque que obliga a un sitio web a duplicar el código ejecutable
proporcionado por el atacante, que se carga en el navegador de un
usuario. Un usuario de un script entre sitios puede verse expropiado
de su cuenta (robo de cookies), su navegador puede ser redirigido a
otra ubicación, o se le puede mostrar contenido fraudulento en el
sitio web que esté visitando.
Denegación de servicio: la denegación de servicio (DoS) es una
técnica de ataque cuyo objetivo es impedir que un sitio web ofrezca
una actividad normal a los usuarios.
6. Introducción a los ataques existentes
Clasificación de amenazas WEB
Indexación de directorios: el listado/indexación automática de
directorios es una función de servidor que lista todos los archivos en
un directorio solicitado si el archivo básico normal
(index.html/home.html/default.htm) no está presente.
Ataque de serie de formato: los ataques de serie de formato
alteran el flujo de una aplicación utilizando características de la
biblioteca de formatos de series para acceder a otro espacio de la
memoria.
Filtrado de información: el filtraje de información se produce
cuando un sitio web revela datos confidenciales, por ejemplo
comentarios de un desarrollador o mensajes de error, que pueden
ayudar a un atacante a aprovecharse del sistema.
Anti automatización insuficiente: la anti automatización
insuficiente se produce cuando un sitio web permite a un atacante
automatizar un proceso que sólo debe realizarse manualmente.
7. Introducción a los ataques existentes
Clasificación de amenazas WEB
Autenticación insuficiente: la autenticación insuficiente se produce
cuando un sitio web permite a un atacante acceder a contenido o
funciones confidenciales sin autenticar correctamente sus permisos
de acceso.
Autorización insuficiente: la autorización insuficiente se produce
cuando un sitio web permite el acceso a contenido o funciones
confidenciales que deben requerir un incremento de las
restricciones de control de acceso.
Validación de proceso insuficiente: la validación de proceso
insuficiente se produce cuando un sitio web permite a un atacante
eludir el control de flujo previsto de una aplicación.
Caducidad de sesión insuficiente: la caducidad de sesión
insuficiente se produce cuando un sitio web permite a un atacante
reutilizar credenciales de sesión o ID de sesión antiguos para llevar a
cabo la autorización. La caducidad de sesión insuficiente aumenta la
exposición de un sitio web a los ataques que roban o suplantan a
otros usuarios.
8. Introducción a los ataques existentes
Clasificación de amenazas WEB
Inyección LDAP: la inyección LDAP es una técnica de ataque
utilizada para aprovecharse de los sitios web que crean sentencias
LDAP (Lightweight Directory Access Protocol) a partir de entradas
proporcionadas por los usuarios.
Envío de mandatos del SO: el envío de mandatos del SO es una
técnica de ataque utilizada para aprovecharse de los sitios web
mediante la ejecución de mandatos del sistema operativo a través
de la manipulación de la entrada de la aplicación.
Cruce de vía de acceso: la técnica de ataque de cruce de vía de
acceso fuerza el acceso a archivos, directorios y mandatos que
pueden estar ubicados potencialmente fuera del directorio raíz de
documentos. Un atacante podría manipular un URL de forma que el
sitio web ejecutará o revelará el contenido de archivos arbitrarios
en cualquier parte del servidor web.
9. Introducción a los ataques existentes
Clasificación de amenazas WEB
Ubicación de recursos predecible: la ubicación de recursos
predecible es una técnica de ataque utilizada para descubrir
contenido y funciones ocultas de un sitio web. El ataque, que se vale
de considerar la información de la que dispone, es una búsqueda de
fuerza bruta en busca de contenido que no está pensado para
mostrarse públicamente. Archivos temporales, archivos de copia de
seguridad, archivos de configuración y archivos de ejemplo son
todos ejemplos de archivos potencialmente sobrantes.
Fijación de sesión: la fijación de sesión es una técnica de ataque que
fuerza un ID de sesión de usuario a un valor explícito.
Inyección SQL: la inyección SQL es una técnica de ataque utilizada
para aprovecharse de los sitios web que crean sentencias SQL a
partir de entradas proporcionadas por los usuarios.
Inyección SSI: la inyección SSI (inclusión del lado del servidor) es una
técnica de aprovechamiento del lado del servidor que permite a un
atacante enviar código en una aplicación, que posteriormente el
servidor web ejecutará localmente.
10. Introducción a los ataques existentes
Clasificación de amenazas WEB
Validación de recuperación de contraseña débil: la validación de
recuperación de contraseña débil se produce cuando un sitio web
permite a un atacante obtener, cambiar o recuperar ilegalmente la
contraseña de otro usuario.
Inyección XPath: la inyección XPath es una técnica de ataque
utilizada para aprovecharse de los sitios web que crean consultas
XPath a partir de entradas proporcionadas por los usuarios.
11. Introducción a los ataques existentes
=¿$?
Consecuencias derivadas de los ataques
26. Introducción a los ataques existentes
El objetivo principal del TOP 10 OWASP es dar a conocer a los desarrolladores,
diseñadores, arquitectos, gerentes, y organizaciones sobre las consecuencias
de las vulnerabilidades de seguridad más importantes en aplicaciones web.
El TOP 10 provee de técnicas básicas sobre como protegerse en estas áreas de
alto riesgo y también provee orientación sobre los pasos a seguir.
Que se hable de top 10 no significa que no existan más vulnerabilidades!!
Simplemente son las más comunes.
64. He sido atacado. ¿Ahora que
hago?
El procedimiento varía dependiendo de múltiples variables pero podría ser algo
así:
1.- Poner el sitio web atacado offline.
2.- Guardar logs, hacer backup de la base de datos y de los archivos. Aplicar
FUEGO PURIFICADOR o contratar servicios de desinfección.
3.- Revisar todas las posibles extensiones vulnerables o framework e intentar
determinar el punto de entrada.
4.- Reinstalar framework, plugins, plantillas, bbdd, SO, … desde un backup que se
sepa que está limpio. Parchear el posible punto de entrada.
5.-Cambiar todas las contraseñas
6.- Si se ha sido intermediario de un ataque de watering hole o se cree que se
han podido ver comprometidos datos de importancia, notificar a posibles
usuarios afectados el incidente de seguridad.
65. He sido atacado. ¿Ahora que
hago?
Denunciar si hemos sido victimas de un ataque
Contratar servicios especializados de análisis forense para que en caso
de que se quiera llevar a juicio el ataque, se disponga de pruebas válidas
con las que afrontar la denuncia.
66. WAF. Web Application Firewall
Herramientas y servicios con los que
protegernos
Nos protege de:
>Vulnerabilidades de sistema operativo
>Vulnerabilidades de aplicación
SQLi
XSS
LFI
RFI
DT
…
Nos tiene que quedar claro que las aplicaciones y sistemas
operativos siguen siendo vulnerables. Parcheo Virtual
67. WAF. Web Application Firewall
Herramientas y servicios con los que
protegernos
De todos los colores y sabores:
>Software (Open Source, Propietarios…)
>Virtuales
>Hardware
>As a Service (En la nube)
74. Herramientas y servicios con los que
protegernos
Herramientas de hardening de frameworks especificos, buenas
prácticas,…
Guía básica seguridad Wordpress Inteco
http://www.inteco.es/file/WbpsPPREE7nfCgs9ZBYoAQ
Guía básica seguridad Joomla Inteco
http://www.inteco.es/file/WbpsPPREE7naXKiMJlkT_g
80. Algunos consejos útiles
Contar con profesionales del desarrollo web SEGURO
Cuando se contrate el servicio de presencia web hablar de que ocurre en caso
de que surjan vulnerabilidades, se sea victima de un ataque, tiempos de parcheo,
Plan de contingencia…)
Antes de poner una web online comprobar su seguridad (Revisión código,
Auditoría WEB)
Realizar asiduamente backups tanto de la base de datos como de la aplicación
y sus ficheros asociados.
81. Preparar un Plan de Recuperación ante incidentes. Entrenarse, ponerlo a
prueba.
No utilizar la misma contraseña para todas las cuentas
Cifrar la documentación/datos online importantes
Cambia de contraseñas cada cierto tiempo
Usuarios y contraseñas personales e intransferibles
Tener especial cuidado cuando se manejan datos sensibles (LOPD)
Algunos consejos útiles
82. Utilizar mecanismos de autenticación de múltiples factore.
Llevar un control sobre los CMS instalados y los diferentes plugins
(seguros)instalados
Actualizar y parchear tanto sistemas como aplicaciones
Integración de sistemas Captchas para evitar herramientas automatizadas.
Contratar hostings, housings con servicios de seguridad adicionales (WAF,
ADDoS)
Algunos consejos útiles