2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

34
ANÁLISIS de SEGURIDAD AUTOMÁTICO en APLICACIONES WEB Análisis de herramientas disponibles para automatizar el análisis de la seguridad de una aplicación WEB durante el ciclo de vida de desarrollo de software (SDLC) [Fuente: informe VERACODE volumen 3] 15/06/2022 Juan Ramón Bermejo Higuera

Upload: emadrid-network

Post on 30-Jun-2015

849 views

Category:

Documents


1 download

DESCRIPTION

2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

TRANSCRIPT

Page 1: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD

AUTOMÁTICO en APLICACIONES WEB

Análisis de herramientas disponibles para automatizar el análisis de la seguridad de una aplicación WEB

durante el ciclo de vida de desarrollo de software (SDLC)

[Fuente: informe VERACODE volumen 3]

Page 2: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD

AUTOMÁTICO en APLICACIONES WEB

EVOLUCIÓN DE LOS VECTORES DE ATAQUE

1980,s - Physical 1990,s - Network 2000,s - E-mail, Application and

Wireless 2010 - Client-Side, Mobile and Social

Networking[Fuente: TRUST WAVE REPORT 2011]

Page 3: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD

AUTOMÁTICO en APLICACIONES WEB

[Fuente: TRUST WAVE REPORT 2011]

Page 4: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD

AUTOMÁTICO en APLICACIONES WEB

[Fuente: TRUST WAVE REPORT 2011]

Page 5: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD

AUTOMÁTICO en APLICACIONES WEB

[Fuente: IBM RISK AND TREND REPORT 1 MID 2012 ]

Page 6: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD

AUTOMÁTICO en APLICACIONES WEB

[Fuente: IBM RISK AND TREND REPORT 1 MID 2012 ]

Page 7: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: tecnologías web.

[FUENTE: informe VERACODE volumen 4 DATOS de 2011-2012]

Page 8: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: tecnologías web.

[FUENTE: informe VERACODE volumen 4 DATOS de 2011-2012]

Page 9: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: tecnologías web.

J2EE.netC/C++PHPColdFusionANDROID

[FUENTE: informe VERACODE volumen 4 DATOS de 2011-2012]

Page 10: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: OWASP TOP TEN.

A1: InjectionA2: Cross-

Site Scripting (XSS)

A3: Broken Authenticatio

n and Session

Management

A4: Insecure Direct Object References

A5: Cross Site Request

Forgery (CSRF)

A6: Security Misconfigurat

ion

A7: Failure to Restrict URL

Access

A8: Insecure Cryptographi

c Storage

A9: Insufficient Transport

Layer Protection

A10: Unvalidated

Redirects and Forwards

OWASP TOP TEN

http://www.owasp.org/index.php/Top_10

Page 11: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: vulnerabilidades

[FUENTE: informe VERACODE volumen 4 DATOS de 2011]

Page 12: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: XSS

Cross Site Scripting (XSS) se materializa cuando se dan estos dos pasos:

Los datos entran a la aplicación a través de entradas no validadas como una petición HTTP.

La aplicación incluye los datos en un contenedor dinámico que se envía al navegador Web del usuario sin la apropiada validación de contenido malicioso.

La variedad de ataques basados en XSS es casi ilimitada, pero comúnmente incluye transmisión de datos privados como cookies u otra información de sesión al atacante o redirigir la víctima a un contendor Web que el atacante controla

Page 13: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: Ataques

Los atacantes pueden modificar el comportamiento normal del navegador usando un cliente de ataque que permite modificar cualquier petición HTTP

Los atacantes buscan patrones en URLs, campos ocultos y valores de cookies, comentarios en una petición-respuesta HTML, manipulan parámetros URL o realizan ingeniería inversa de código JavaScript

Page 14: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: defensas

Los programadores, confían de forma equivoca, en los valores transmitidos en cookies, campos ocultos y cabeceras HTTP

Validación de los campos de entrada y salida. Tratar al cliente como si no existiera. No permitir que el cliente almacene secretos o que realice ningún tipo de validación, efectuando validación de entrada y salida en el lado del servidor.

Mantenimiento del estado de sesión. Crear fuertes identificadores de estado de sesión, limitar el tiempo de vida de la sesión

Usar marcos de trabajo que usen mecanismos de validación incorporados, pensando en la seguridad, como puedes ser Apache Struts.

Page 15: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: Tipos de herramientas

SAST – análisis estático código fuente ejecutable.

DAST – análisis dinámico.

RAST – análisis en tiempo real.

HÍBRIDAS ( sast – dasd / sast –rast / sast-dasd- rast)

Page 16: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: SAST

Page 17: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: SAST

Analizan todo el códigoFalsos negativos / falsos positivosGrados de usabilidad distintosRequieren auditoria posterior

Detecciones 41 - 81% Falsos positivos 21 – 78 %Correlación 2 tools 93 %

detecciones

Page 18: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: SAST

Fortify SCA.

Checkmarx Cx.

Klocwork inshight.

Veracode (SaaS).

Lapse+. (lab. Evalues . U.Carlos III)

Findbugs. (open source) *[Fuente: Gartner magic cuadrant]

Page 19: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: DASD

Tipo de caja negra test de penetración

Problemas para testear toda la aplicación

Limitadas a un subconjunto de

vulnerabilidades:

Problemas con: SESSION HIJACKING or INFORMATION LEAKAGE

Falsos positivos auditoría posterior

Aprendizaje y prueba de vulnerabilidades en

runtime

Page 20: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: DASD

Page 21: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: DASD

XSS. SQLI. PATH TRANSVERSAL. COMMAND INJECTION. DEFECTOS DE CONFIGURACIÓN. PROBLEMAS RELACIONADOS CON

JAVASCRIPT. FILE INCLUSION. XPATH INJECTION. HTTP RESPONSE SPLITING.

Page 22: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: DASD

Hp

Webinspect

IBM Appscan

Acunetix

Whitehat

Ntospider

Cenciz

Parasoft

*[Fuente: Gartner magic cuadrant]

Page 23: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: RAST

Tipo de caja BLANCA. Actúan directamente

sobre el código ejecutable, observando el

entorno de ejecución de los procesos

peticiones y respuestas a la aplicación.

No tienen falsos positivos.

Pueden incidir en el rendimiento de la

aplicación.

Page 24: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: RAST

El análisis dinámico RAST es preciso, no necesita

hacer abstracciones y puede ser tan rápido como

la propia ejecución del programa excepción hecha

de las comprobaciones adicionales que tiene que

realizar.

Las comprobaciones se pueden optimizar en gran

medida mediante el background de SAST para

proteger una aplicación web en tiempo real

desplegada en producción.

Page 25: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: RAST

Generar un informe, después de la detección sin más. SECURITYSCOPE de Fortify es un ejemplo de este tipo. También ACUSENSOR, como funcionalidad añadida a ACUNETIX

Bloquear el intento de ataque, como hace RTA de Fortify. RTA

presenta muchas similitudes en cuanto a arquitectura. Difieren en el concepto de lo que se hace cuanto se detecta una vulnerabilidad: bloqueo o informar.

Sanear la petición maligna a la aplicación web, corrigiendo los

valores de entrada a la aplicación. SANER es un ejemplo de este tipo [Balzarotti et Co. 2008].

Page 26: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: herramientas híbridas

Page 27: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: RAST

SecurityScope (HP FORTIFY) informa

RTA ( HP FORTIFY) bloquea

Glassbox (IBM) (java solo) informa

Securfly (livishs) bloquea, informa o “sanea” la entrada

Quotium Technologies test cases para java .net y PHP

Page 28: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: herramientas híbridas

SAST – DAST (Veracode SaaS)

SAST – RAST ( jnuke – securfly - amnesia ) (java)

DAST – RAST (Acunetix + Acusensor) (php, .net)

SAST- DAST - RAST (Fortify 360) (IBM Appscan)

Page 29: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: herramientas híbridas

TOOL PRECISIÓN

TP/TP+FP

RECALL

TP/TOTAL

VUL.

FP F-MEASURE

2xPRECISIONxRECALL

/ PRECISION+RECALL

FORTIFY SCA 0,346 0,740 0,653 0,471

LAPSE + 0,326 0,805 0,788 0,464

KLOCWORK 0,362 0,545 0,450 0,435

CHECKMARX 0,321 0,653 0,575 0,430

VERACODE 0,460 0,400 0,195 0,427

FINDBUGS 0,410 0,105 0,067 0,167

Page 30: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: herramientas híbridas

CORRELACIÓN DE RESULTADOS ENTRE PAREJAS DE HERRAMIENTAS,

154 CASOS DE TEST

CHECKMARX – LAPSE+ 142

LAPSE+ – KLOCWORK 139

FORTIFY SCA - LAPSE+ 133

FORTIFY SCA - KLOCWORK 130

FORTIFY SCA - CHECKMARX 127

CHECKMARX – KLOCWORK 123

Page 31: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: conclusiones

GRUPO I.

% VP (Detecciones Correctas) > 80 %

% FP (Detecciones Incorrectas) 4 herramientas > 50 % auditoría

obligatoria.

Combinación 2 herramientas 92%.

Combinación de 4 herramientas 95 %

GRUPO II. No se detectan 30 vulnerabilidades de 62 posibles.

16 de 32 categorías no cubiertas por 5 de las herramientas evaluadas.

Page 32: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: herramientas híbridas

Page 33: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: herramientas híbridas

Fuente:Veracode report, volumen 4

Page 34: 2012 10 19 (uned) emadrid jrbermejo md analisis automatico seguridad aplicaciones web

14/04/2023 Juan Ramón Bermejo Higuera

ANÁLISIS de SEGURIDAD AUTOMÁTICO en

APLICACIONES WEB: SDLC