Actividad 2 Grupal Auditoria de Código Estandar v2 Clean Sin

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 8

Asignatura Datos del alumno Fecha

Apellidos:
Seguridad en el Software
Nombre:

Caso grupal: Auditoría de código de una aplicación

Objetivos de la actividad

Con la presente actividad se pretende conseguir los siguientes objetivos:

 Analizar el código fuente de una aplicación para poder determinar el nivel de


riesgo de las vulnerabilidades encontradas.
 Conocer el tipo de defectos de seguridad que se pueden cometer en lenguajes
como C y Java.
 Prepararse para poder analizar el código en base al conocimiento de los defectos
de programación que se pueden cometer.
 Proporcionar información relevante sobre cuáles serían las recomendaciones de
solución más eficaces para mitigar los efectos de la vulnerabilidad encontrada
durante la auditoría del código fuente de una aplicación.

Descripción de la actividad y pautas de elaboración

Esta actividad profundiza en el estudio de la práctica de seguridad del software más


importante que implantar en un Ciclo de Vida de Desarrollo Seguro de un Software
(S-SDLC): revisión estática de código, mediante el uso y manejo de la aplicación de
análisis estático de código en un caso real.

Paradeello
© Universidad Internacional se (UNIR)
La Rioja va a analizar quince (15) hallazgos reportados por la herramienta de
análisis estático de código profesional “SCA FORTIFY” (de la empresa Micro Focus) al
escanear el código fuente de la aplicación ASTERISK (PBX de software libre). El
objetivo de buscar los errores de programación relativos a seguridad.

Actividades 1
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:

Las herramientas de análisis estático de código fuente son imprescindibles para la


realización de este tipo de análisis, pero puede presentar falsos positivos y
negativos. Básicamente, la labor del auditor es desechar los falsos y quedarse con
los positivos verdaderos, así como la detección de falsos negativos no detectados
por la herramienta. Tenedlo en cuenta a la hora de realizar el análisis de los códigos.

Para acceder a la citada herramienta hay que logarse y acceder al escritorio virtual
de la UNIR.

La aplicación FORTIFY está disponible, ya instalada, en el escritorio virtual de la


UNIR:
https://salainformaticaunir.u-cloudservices.com/

Al logarse en el escritorio virtual se accederá a la siguiente pantalla, donde


aparecen los diferentes escritorios. Se debe pulsar en el botón Conectar del
escritorio Ciberseguridad y Forense

Figura 1. Escritorio virtual de la UNIR

Al pinchar en conectar accedemos el escritorio virtual Ciberseguridad y forense.

© Universidad Internacional de La Rioja (UNIR)

Actividades 2
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:

Figura 2. Escritorio virtual Ciberseguridad y Forense

En este escritorio accedemos a la carpeta “Master en Ciberseguridad”.

© Universidad Internacional de La Rioja (UNIR)

Figura 3. Carpeta Máster Seguridad Informática.

Dentro de la carpeta anterior se debe acceder a otra carpeta interior a la misma


denominada “Desarrollo Seguro de Software y Auditoria” donde se encuentra un

Actividades 3
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:

fichero denominado “Asterisx limpio result”. En este fichero ya se encuentra el


código fuente de la herramienta y la auditoría resultado del escaneo ya realizado
por la herramienta.

Figura 4. Fichero “Asterisx limpio result”.

Al hacer doble click en el citado fichero automáticamente se ejecutará la


herramienta Audit Workbench de Fortify.

© Universidad Internacional de La Rioja (UNIR)


Figura 5. Aplicación Audit Workbench de Fortify

Una vez arrancada la herramienta presenta esta pantalla con diversos lo diversos
paneles de trabajo de la herramienta:

Actividades 4
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:

Figura 6. Panales de trabajo de Fortify.

En el panel de trazabilidad aparecen los hallazgos que ha detectado la herramienta


al escanear el código clasificados como críticos, altos, medios y bajos. De estos
hallazgos hay que auditar 15 indicando si es un falso positivo (el error no existe),
explotable o positivo verdadero (el error existe pero y es alcanzable por el atacante
desde una entrada del software) o mala práctica (el error existe pero no es
alcanzable por el atacante desde una entrada del software).

Para más información de como se utiliza la herramienta se asistir a la clase de


explicación de la actividad y consultar los manuales originales de las herramientas
disponibles en el escritorio virtual. También se puede ver algún video públicamente
disponible como:

© Universidad Internacional de La Rioja (UNIR)

Actividades 5
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:

Se pueden acceder a videos sobre el funcionamiento de la herramienta SCA


FORTIFY:
https://www.youtube.com/watch?v=z9vnunUu6Ac
https://www.youtube.com/watch?v=4hVReHXNyok
https://www.youtube.com/watch?
v=Fsi20Aa_Vlg&list=PLkBNdmbcM4MPs0XrGEptpuhVNWr1XFkJK

Deberéis entregar una memoria en la que se explique la auditoría de 15 hallazgos


de diferente categoría (criticas o altas), p. ej.: 1 del tipo XSS, 1 Buffer Overflow, etc.
del código detectados por la herramienta (remarco solo 15 de categoría crítica o
alta, pues la herramienta detecta más). Se debe incluir un estudio detallado de los
mismos (incluir esquemas, gráficos de llamadas, flujos del programa, porciones de
código explicadas, etc.) que explique la vulnerabilidad encontrada y se proponga
una posible solución.
Por cada uno de ellos hay que rellenar la siguiente tabla:
Número de código identificado por la herramienta
Vulnerabilidad detectada Buffer overflow, inyección de comandos, etc.
Valoración Falso positivo, positivo verdadero o mala práctica
Explicación del error Estudio detallado del código (incluir esquemas,
gráficos de llamadas, flujos del programa,
porciones de código explicadas, etc.) que
explique la vulnerabilidad encontrada.
Remediación Proponga una posible solución
Código CWE Vulnerabilidad referenciada por su código CWE
(Common Weakness Enumeration) acorde al
© Universidad Internacional de La Rioja (UNIR)
mismo.
Requisitos de seguridad Proponer uno o varios requisitos de seguridad
que remedien la vulnerabilidad

Tabla 1. Tabla por código a rellenar.

Actividades 6
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:

Así mismo incluirá en la explicación de cada uno de los 15 errores la vulnerabilidad


referenciada por su código CWE (Common Weakness Enumeration) acorde al
mismo.

En la memoria se debe incluir una tabla final que incluya los verdaderos positivos,
falsos positivos y malas prácticas presentados por la herramienta, así como una
conclusión acerca de su desempeño.
conclusión acerca de su desempeño.
Resumen valoración final de las vulnerabilidades
Vulnerabilidad 1 (código identificativo Explotable o positivo verdadero, falso
de Fortify) positivo o mala práctica.
Vulnerabilidad 2 (código identificativo Explotable o positivo verdadero, falso
de Fortify) positivo o mala práctica.

Tabla 1. Resumen valoración final de las vulnerabilidades

© Universidad Internacional de La Rioja (UNIR)

Actividades 7
Asignatura Datos del alumno Fecha
Apellidos:
Seguridad en el Software
Nombre:

Extensión

La extensión máxima de la actividad será de 20 páginas.

Rúbrica

Puntuación
Auditoría de código de Peso
Descripción máxima
una aplicación %
(puntos)
Resultado del análisis de cada una de
Criterio 1 las 15 vulnerabilidades detectadas por 0,5 x 15 = 7,5 75 %
la herramienta.
Identificación correcta del código CWE
Criterio 2 1,5 15 %
de las vulnerabilidades encontradas.
Criterio 3 Calidad de la memoria. 1 10 %
10 100 %

© Universidad Internacional de La Rioja (UNIR)

Actividades 8

También podría gustarte