Solución de Vulnerabilidades en Dispositivos de Area Local

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 42

Solución de vulnerabilidades en

dispositivos de Area Local.


Índice de contenidos
Contenido

1. Introducción .......................................................................................................... 1

1.1. Motivación ...................................................................................................... 2

1.2. Planteamiento del problema ...........................................................................3

1.3. Estructura del trabajo ..................................................................................... 4

2. Estado del arte ......................................................................................................5

2.1. Detección de vulnerabilidades ....................................................................... 5

2.1.1. Escaneo de Vulnerabilidades .................................................................. 5

2.1.2. Pruebas de Penetración .......................................................................... 5

2.1.3. Auditorías de Seguridad .......................................................................... 6

2.1.4. Monitoreo de Seguridad .......................................................................... 6

2.1.5. Gestión de Vulnerabilidades: ...................................................................7

2.2. auditoría informática .......................................................................................8

2.2.1. Motivos de ataques informáticos ............................................................. 8

2.2.2. Prevención de ataques informáticos ........................................................9

2.3. Estándares Internacionales para la seguridad de la informática y seguridad


de la información ....................................................................................................10

2.4. Evolución de las amenazas cibernéticas ..................................................... 11

2.5. Marco regulatorio y normativo en ciberseguridad ........................................ 12

2.6. Herramientas de evaluación de vulnerabilidades .........................................12

2.7. Consideraciones al Elegir una Herramienta de escaneo ............................. 14

2.8. Herramientas de desarrollo .......................................................................... 15

2.8.1. React ..................................................................................................... 15

2.8.2. React Native .......................................................................................... 16


2
3. Objetivos concretos y metodología de trabajo ....................................................18

3.1. Objetivo general ........................................................................................... 18

3.2. Objetivos específicos ................................................................................... 18

3.3. Metodología del trabajo ................................................................................18

3.3.1. Planificación y Preparación ................................................................... 18

3.3.2. Análisis de Vulnerabilidades ..................................................................18

3.3.3. Clasificación y Priorización de Vulnerabilidades ....................................19

3.3.4. Remediación de Vulnerabilidades ......................................................... 19

3.3.5. Monitoreo Continuo y Evaluación .......................................................... 19

3.3.6. Reporte y Documentación ..................................................................... 19

3.3.7. Capacitación y Concienciación ..............................................................20

3.3.8. Herramientas Utilizadas .........................................................................20

3.3.9. Beneficios de la Metodología .................................................................20

4. Desarrollo específico de la contribución ............................................................. 21

4.1. Tipo 1. Piloto experimental ...........................................................................21

4.1.1. Descripción detallada del experimento .................................................. 21

4.1.2. Descripción de los resultados ................................................................22

4.1.3. Discusión ............................................................................................... 24

4.2. Tipo 2. Desarrollo de software ..................................................................... 24

4.2.1. Identificación de requisitos .................................................................... 24

4.2.2. Descripción de la herramienta software desarrollada ............................27

4.2.3. Evaluación ............................................................................................. 28

4.3. Tipo 3. Desarrollo de metodología ............................................................... 30

4.3.1. Identificación de requisitos .................................................................... 30

4.3.2. Descripción de la metodología .............................................................. 31

4.3.3. Evaluación ............................................................................................. 33

3
5. Conclusiones y trabajo futuro ............................................................................. 35

Índice de tablas
Figura 1 - Portal Inicio .............................................................................................. 21

Figura 2 - Login Aplicación ...................................................................................... 22

Figura 3 - Cambio de Contraseña ............................................................................ 23

Figura 4 - Dasboard Aplicación ................................................................................ 24

Figura 5 - Requisitos de Metodología .......................................................................30

4
1. INTRODUCCIÓN
La tecnología ha revolucionado el mundo empresarial en las últimas décadas,
transformando la forma en que las organizaciones operan, interactúan con sus
clientes y compiten en el mercado.

Actualmente los avances tecnológicos han desempeñado un papel crucial en la


evolución de las empresas, facilitando la mejora de procesos, la optimización de
recursos y la creación de nuevas oportunidades. Las innovaciones tecnológicas han
permitido a las organizaciones ser más eficientes y productivas, estos avances
abarcan diversas áreas, desde la automatización, inteligencia y la ciberseguridad.

La detección de vulnerabilidades en una organización es un proceso esencial para


identificar y brindar atención a posibles debilidades en la infraestructura de TI antes
de que sean explotadas por terceros. Estas vulnerabilidades pueden originarse de
diversas fuentes y tener impactos significativos en la seguridad, la operatividad y la
reputación de una organización.

La ciberseguridad en las organizaciones es fundamental para proteger los activos


digitales, datos confidenciales y la integridad operativa frente a amenazas
cibernéticas cada vez más sofisticadas. En este sentido, el presente trabajo de fin de
máster se centra en el estudio exhaustivo e implementación de una aplicación web
diseñada específicamente para evaluar y abordar vulnerabilidades en dispositivos y
redes, con el objetivo de fortalecer la ciberseguridad tanto a nivel doméstico como
empresarial (Smith, J., & Doe).

La aplicación propuesta se desarrolla en respuesta a la creciente amenaza de


ataques cibernéticos y la necesidad imperante de contar con herramientas efectivas
para identificar y mitigar riesgos de seguridad en sistemas informáticos. A través de
un enfoque integral y orientado al usuario, la aplicación ofrece a los usuarios la
capacidad de realizar análisis detallados de sus dispositivos y redes, identificando
posibles puntos débiles y proporcionando recomendaciones específicas para
fortalecer la seguridad (Smith, J., & Doe). Al ofrecer una solución práctica y accesible,
se busca empoderar a individuos y organizaciones para que tomen medidas
proactivas y protejan sus activos digitales de manera efectiva contra una amplia
gama de amenazas cibernéticas.

1
En el presente trabajo se abordan aspectos críticos relacionados con la arquitectura
de la aplicación, la selección de tecnologías y herramientas, y la integración de
funcionalidades clave para garantizar su eficacia y usabilidad. Además, se
incorporan prácticas de seguridad de última generación y se siguen estándares y
mejores prácticas reconocidas en el campo de la ciberseguridad para garantizar la
fiabilidad y robustez del sistema.

En resumen, este trabajo de fin de máster representa un esfuerzo significativo en la


investigación y desarrollo de una herramienta fundamental para mejorar la
ciberseguridad en el entorno digital actual. A través de una combinación de análisis
teórico, investigación aplicada y desarrollo práctico, se busca contribuir al
fortalecimiento de la seguridad cibernética y proporcionar a los usuarios las
herramientas necesarias para proteger sus sistemas informáticos de manera efectiva
contra amenazas emergentes y en evolución.

1.1. MOTIVACIÓN

Con el aumento de la digitalización y la interconexión de sistemas, la ciberseguridad


se ha convertido en una prioridad para las organizaciones. Proteger la información
sensible y los sistemas contra ciberataques es crucial para mantener la confianza de
los clientes y evitar pérdidas financieras y de reputación.

La ciberseguridad en las organizaciones es un tema crítico en la actualidad debido al


aumento de la dependencia de las tecnologías digitales y la creciente sofisticación
de las amenazas cibernéticas (Flores Miñope, R., & Ticona Tapia, B. F.).

La elección de este tema se fundamenta en la necesidad de proporcionar soluciones


efectivas y accesibles que permitan a usuarios y a las organizaciones protegerse
contra tales amenazas. A través de una revisión exhaustiva de la literatura existente
sobre ciberseguridad y vulnerabilidades informáticas, se ha identificado la falta de
herramientas integrales y fáciles de usar que aborden este problema de manera
efectiva.

La relevancia de este problema radica en su impacto potencial en la integridad,


confidencialidad y disponibilidad de la información, tanto a nivel personal como
empresarial. Por lo tanto, este trabajo no solo busca ofrecer una solución práctica a

2
un problema tangible, sino también contribuir al avance del conocimiento en el
campo de la ciberseguridad, proporcionando una plataforma para futuras
investigaciones y desarrollos en esta área crucial.

1.2. PLANTEAMIENTO DEL PROBLEMA

El problema detectado en este trabajo radica en la creciente vulnerabilidad de


dispositivos y redes informáticas frente a ataques cibernéticos, lo que pone en riesgo
la integridad, confidencialidad y disponibilidad de la información. En la actualidad, el
incremento exponencial de amenazas como malware, ransomware, phishing y
ataques de denegación de servicio (DDoS) ha generado un panorama de
ciberseguridad cada vez más complejo y desafiante.

A medida que la digitalización se extiende a todos los ámbitos de la vida moderna,


desde el hogar hasta el entorno empresarial, la necesidad de proteger los sistemas
informáticos se vuelve cada vez más apremiante. La interconexión de dispositivos a
través de Internet de las cosas (IoT), el aumento del trabajo remoto y la adopción
generalizada de servicios en la nube han ampliado la superficie de ataque y
aumentado la exposición a riesgos de seguridad.

En este contexto, la propuesta consiste en desarrollar una aplicación web dedicada


a la evaluación y mitigación de vulnerabilidades en dispositivos y redes. Esta
herramienta innovadora y orientada al usuario permitirá a usuarios individuales y
empresas realizar un análisis exhaustivo de sus sistemas informáticos para
identificar posibles puntos débiles y recibir recomendaciones específicas para
fortalecer la seguridad.

La finalidad última de este trabajo es ofrecer una solución práctica y accesible que
contribuya a mejorar la ciberseguridad en la organización, mediante una plataforma
intuitiva y eficaz para que permita evaluar y abordar las vulnerabilidades en los
sistemas.

3
1.3. ESTRUCTURA DEL TRABAJO

Capítulo 1: Introducción

- Presentación del trabajo y sus componentes principales.


- Motivación y relevancia del tema.
- Planteamiento del problema y la necesidad de intervención.
- Estructura y contenido de trabajo.

Capítulo 2: Estado del Arte

- Revisión de la literatura relacionada con la ciberseguridad y evaluación de


vulnerabilidades.
- Análisis de herramientas y métodos existentes para la detección y mitigación
de riesgos informáticos.
- Estudio de casos relevantes y avances recientes en el campo de la seguridad
informática.

Capítulo 3: Objetivos Concretos y Metodología del Trabajo

- Definición de los objetivos específicos del trabajo.


- Descripción de la metodología utilizada para alcanzar dichos objetivos,
incluyendo el enfoque de investigación, técnicas de recolección de datos, y
análisis de datos.

Capítulo 4: Desarrollo Específico de la Contribución

- Detalle de la aplicación web desarrollada para la evaluación y mitigación de


vulnerabilidades.
- Explicación de las características y funcionalidades clave de la herramienta.
- Presentación de los resultados obtenidos durante el proceso de desarrollo y
pruebas de la aplicación.

4
2. ESTADO DEL ARTE
2.1. DETECCIÓN DE VULNERABILIDADES

La detección de vulnerabilidades es un proceso crítico en la ciberseguridad que


implica identificar y analizar posibles puntos débiles en sistemas, redes, aplicaciones
e infraestructura (Flores Miñope, R., & Ticona Tapia, B. F.). Los métodos más
comunes para la detección de vulnerabilidades son los siguientes:

Escaneo de Vulnerabilidades
Pruebas de Penetración
Auditorías de Seguridad
Monitoreo de Seguridad
Gestión de Vulnerabilidades

2.1.1. Escaneo de Vulnerabilidades

El escaneo de vulnerabilidades es una técnica utilizada para identificar debilidades


en sistemas informáticos, redes, aplicaciones o cualquier otro tipo de infraestructura
que pueda ser explotada por terceros (atacantes). Los escaneos se pueden ser
realizar de forma manual o utilizando herramientas automatizadas, los cuales
abarcar diferentes áreas como:

Sistemas Operativos
Aplicaciones Web
Infraestructura de Red.
Dispositivos de Red
Bases de Datos

2.1.2. Pruebas de Penetración

Las pruebas de penetración son conocidas como pentesting o ethical hacking, lo


cual representa simulaciones controladas de ataques cibernéticos realizadas por
personal autorizado de seguridad informática autorizados para identificar
vulnerabilidades en sistemas, redes, aplicaciones o infraestructura. El objetivo es
evaluar la seguridad de un sistema al intentar explotar sus vulnerabilidades de
manera controlada y ética.

El proceso que se desarrollar en el proceso de pentesting es el siguiente:

5
Reconocimiento: Actividad en la cual se recopila información para el proceso
de pentesting.
Análisis de vulnerabilidades: Actividad en cual se identifica y se evalúa las
vulnerabilidades existentes, para este proceso se puede realizar utilizando
herramientas automatizadas de escaneo de vulnerabilidades, así como
análisis de tipo manual.
Explotación: Actividad en la cual se intenta explotar las vulnerabilidades
identificadas para obtener acceso no autorizado al sistema, para esto se
utiliza técnicas como inyecciones SQL, explotación de vulnerabilidades de
software, ataques de fuerza bruta, entre otros.
Post-explotación: Actividad en la cual se realiza un análisis más profundo
para determinar el alcance del acceso y las posibles acciones que un tercero
no autorizado (atacante) podría realizar.
Informe y recomendaciones: Actividad en la cual se debe documentar los
hallazgos del pentesting, incluyendo las recomendaciones.

2.1.3. Auditorías de Seguridad

Las auditorías de seguridad son los procesos sistemáticos diseñados para evaluar y
mejorar la seguridad de una organización (Bermeo Oyola, J. C.). Se revisan y
evalúan los controles de seguridad existentes para identificar posibles
vulnerabilidades, riesgos y áreas de mejora.

Estas auditorias realizan la revisión de políticas, procedimientos de seguridad,


evaluación de la infraestructura, pruebas de penetración, inspección de instalaciones
físicas con el fin de detectar problemas de seguridad y establecer un proceso de
gestión de riesgos y continuidad del negocio.

2.1.4. Monitoreo de Seguridad

El monitoreo de seguridad es una práctica fundamental en la protección de sistemas,


redes y datos. Se realiza el análisis de eventos en busca de posibles amenazas,
vulnerabilidades o comportamientos anómalos que puedan comprometer la
seguridad, para ello se utiliza herramientas como: sistemas de detección de
intrusiones (IDS), sistemas de prevención de intrusiones (IPS), análisis de registros
(logs), análisis de tráfico de red, monitoreo de endpoints, entre otros.

6
El propósito del monitoreo de seguridad es identificar y responder de manera rápida
y efectiva a cualquier, también ayudar en la detección y mitigación de amenazas en
etapas tempranas, antes de que causen un daño. Se considera como una estrategia
de ciberseguridad, ya que proporciona visibilidad y control sobre las actividades en
los sistemas y redes, permitiendo a las organizaciones protegerse contra una amplia
gama de amenazas cibernéticas.

2.1.5. Gestión de Vulnerabilidades:

El proceso de gestión de vulnerabilidades implica la identificación, evaluación,


mitigación y seguimiento de las vulnerabilidades en el software, redes e
infraestructura (Bermeo Oyola, J. C.). Se desarrollas las siguientes fases en el
proceso:

Identificación de vulnerabilidades: Actividad en la cual se realiza la


búsqueda de vulnerabilidades conocidas o potenciales en los sistemas.
Puede realizarse mediante herramientas de escaneo de vulnerabilidades,
auditorías de seguridad, revisión de código, entre otros métodos y técnicas.
Evaluación de riesgos: Actividad en la cual se evalúa el riesgo asociado a
cada vulnerabilidad identificada, para ello se considera factores como la
probabilidad de explotación, el impacto potencial en la organización y la
criticidad de los activos afectados.
Priorización de vulnerabilidades: Actividad en la cual se realiza la
priorización en función de su gravedad e impacto potencial en la organización,
con el objetivo de asignar recursos de manera eficiente para abordar primero
las vulnerabilidades más críticas.
Mitigación de vulnerabilidades: Actividad en la cual se aplica medidas y
acciones para remediar las vulnerabilidades identificadas. Las acciones de
mitigación pueden incluir la aplicación de parches de seguridad, configuración
de sistemas, actualización de software, entre otros.
Seguimiento y gestión continua: Actividad en la cual se monitorea de forma
continua el entorno de seguridad a través de pruebas de penetración
periódicas, con el objetivo de revisar regularmente las políticas y
procedimientos de seguridad.

7
2.2. AUDITORÍA INFORMÁTICA

La auditoría informática es un proceso sistemático de evaluación y análisis de los


sistemas de información de una organización para garantizar su integridad,
confidencialidad, disponibilidad y cumplimiento normativo (Imbaquingo, Díaz, Saltos,
Arciniega,De La Torre). Implica revisar la infraestructura tecnológica, los
procedimientos y políticas de seguridad, así como la gestión de riesgos relacionados
con la tecnología de la información.

Entre los objetivos principales de una auditoría informática suelen incluir:

Evaluación de controles internos: Revisar los controles internos


implementados en los sistemas de información para garantizar que sean
adecuados y efectivos en la protección de los activos de la organización.
Cumplimiento normativo: Verificar que la organización cumple con las leyes
y regulaciones pertinentes en materia de seguridad de la información,
privacidad de datos y otros aspectos relacionados con la tecnología.
Identificación de riesgos: Identificar y evaluar los riesgos potenciales
asociados con los sistemas de información de la organización, como
vulnerabilidades de seguridad, fallas en la continuidad del negocio, etc.
Optimización de recursos: Analizar la eficiencia y eficacia de los recursos
utilizados en los sistemas de información para identificar oportunidades de
mejora y optimización.

Para llevar a cabo una auditoría informática, se utilizan diferentes técnicas y


herramientas, que pueden incluir revisión documental, entrevistas con personal clave,
pruebas de penetración, análisis de vulnerabilidades, entre otros métodos
(Imbaquingo, Díaz, Saltos, Arciniega,De La Torre).

El resultado de una auditoría informática suele ser un informe detallado que describe
los hallazgos, las recomendaciones y las acciones correctivas necesarias para
fortalecer la seguridad y el cumplimiento normativo en el entorno de tecnología de la
información de la organización.

2.2.1. Motivos de ataques informáticos

Los motivos de ataques informáticos pueden variar según el tipo de atacante y sus
objetivos específicos. Algunos de los motivos más comunes incluyen:

8
Obtención de información confidencial: Los atacantes pueden intentar
acceder a información sensible, como datos personales, secretos comerciales,
información financiera, contraseñas u otra información valiosa para su propio
beneficio o para venderla en el mercado negro.
Lucro financiero: Algunos ataques informáticos están motivados por el lucro
financiero directo, como el robo de fondos de cuentas bancarias, el secuestro
de datos para exigir un rescate (ransomware) o la venta de información
robada en el mercado clandestino.
Espionaje corporativo o industrial: En algunos casos, los ataques
informáticos son realizados por competidores o entidades interesadas en
obtener información estratégica o comercialmente valiosa de una
organización para obtener una ventaja competitiva.
Activismo político o social: Algunos grupos o individuos pueden llevar a
cabo ataques informáticos como forma de protesta o para hacer una
declaración política, afectando a organizaciones o entidades que consideran
responsables de injusticias o prácticas inaceptables.
Sabotaje: Los ataques informáticos también pueden tener como objetivo
dañar la reputación, la infraestructura o las operaciones de una organización,
causando interrupciones en los servicios, la pérdida de datos o la degradación
de la confianza del cliente.

2.2.2. Prevención de ataques informáticos

Para la prevención de ataques informáticos existen varias medidas las cuales se


detallan a continuación (Serrano Collado):

Implementación de medidas de seguridad: Esto incluye el uso de firewalls,


sistemas de detección de intrusos, software antivirus, cifrado de datos,
autenticación de múltiples factores y otras tecnologías de seguridad para
proteger los sistemas y la información.
Actualización y parcheo de sistemas: Mantener actualizados los sistemas
operativos, aplicaciones y software de seguridad con los últimos parches y
actualizaciones de seguridad es fundamental para corregir vulnerabilidades
conocidas.

9
Concienciación y formación: Educar a los empleados y usuarios sobre las
prácticas seguras en línea, como la creación de contraseñas seguras, la
identificación de correos electrónicos de phishing y el uso seguro de
dispositivos y redes, puede ayudar a prevenir ataques informáticos.
Monitoreo y detección temprana: Implementar sistemas de monitoreo de
seguridad que puedan detectar actividades sospechosas o anomalías en el
tráfico de red y en el comportamiento del sistema, permitiendo una respuesta
rápida ante posibles amenazas.
Respaldo y recuperación de datos: Realizar copias de seguridad periódicas
de los datos importantes y tener un plan de recuperación de desastres puede
ayudar a mitigar los efectos de un ataque informático y minimizar la pérdida
de información crítica.

2.3. ESTÁNDARES INTERNACIONALES PARA LA SEGURIDAD


DE LA INFORMÁTICA Y SEGURIDAD DE LA INFORMACIÓN

Existen algunos organismos internacionales que se dedican a la establecer políticas


y controles para la seguridad informática y seguridad de la información, entre ellos
se encuentran:

Organización Internacional de Normalización

ISO/IEC 27000 series: Un conjunto de estándares que proporciona un marco


para la gestión de la seguridad de la información. Entre estos, el más
conocido es el ISO/IEC 27001, que especifica los requisitos para establecer,
implementar, mantener y mejorar un sistema de gestión de la seguridad de la
información (SGSI).

Instituto Nacional de Estándares y Tecnología (NIST)

Cybersecurity Framework: Un marco que ayuda a las organizaciones a


gestionar y reducir el riesgo de ciberseguridad. Es ampliamente utilizado en
los Estados Unidos y proporciona un enfoque estructurado para la gestión de
la seguridad de la información.

NIST SP 800 series: Una serie de publicaciones que abordan diversos


aspectos de la seguridad informática, incluyendo guías y recomendaciones.

10
Asociación Internacional de Profesionales de la Seguridad de la
Información (ISC)

CISSP (Certified Information Systems Security Professional): Es una


certificación ampliamente reconocida que abarca una amplia gama de temas
de seguridad de la información.

Estos organismos ayudan con el establecimiento de normas y mejores prácticas


para garantizar la seguridad de la información, ayudando a las organizaciones a
proteger sus datos y sistemas contra amenazas cibernéticas.

Las ventajas de la aplicación de los estándares son las siguientes:

Homologación de aplicaciones
Firmas digitales
Posibilidad de interactuar con otros
Existencia de un mejoramiento global

2.4. EVOLUCIÓN DE LAS AMENAZAS CIBERNÉTICAS

El análisis de la evolución de las amenazas cibernéticas proporciona una


perspectiva histórica sobre cómo han cambiado los métodos y las tácticas utilizadas
por los actores maliciosos a lo largo del tiempo. Desde los primeros virus
informáticos hasta las sofisticadas campañas de ciberespionaje y guerra cibernética,
se exploran los principales hitos y tendencias en el panorama de las amenazas
cibernéticas y cómo han influido en la necesidad de evaluar y mitigar
vulnerabilidades en sistemas y redes.

En particular, se examinan los cambios en el perfil de los atacantes, que van desde
individuos con motivaciones principalmente disruptivas hasta actores estatales y
grupos criminales altamente sofisticados que operan a escala global. Además, se
analizan las tácticas y técnicas comunes utilizadas en ataques cibernéticos, incluidos
el phishing, la ingeniería social, la explotación de vulnerabilidades de software
y el secuestro de cuentas, entre otros.

11
2.5. MARCO REGULATORIO Y NORMATIVO EN
CIBERSEGURIDAD

El marco regulatorio y normativo en ciberseguridad desempeña un papel crucial en


la forma en que las organizaciones abordan la evaluación de vulnerabilidades y la
protección de sus sistemas y datos. Se examinan las principales leyes y
regulaciones en materia de privacidad y seguridad de la información, como el
Reglamento General de Protección de Datos (GDPR) en la Unión Europea y la Ley
de Ciberseguridad en los Estados Unidos, y cómo estas normativas influyen en las
prácticas de evaluación de vulnerabilidades y la adopción de medidas de seguridad.

En particular, se analiza cómo el marco normativo en ciberseguridad ha


evolucionado en respuesta a las crecientes amenazas cibernéticas y los cambios en
la tecnología y la sociedad. Se examinan los requisitos y estándares comunes en la
industria, como ISO/IEC 27001 para la gestión de la seguridad de la información y
NIST Cybersecurity Framework para la gestión de riesgos de ciberseguridad, y cómo
estas normativas proporcionan un marco para evaluar y mejorar la seguridad
cibernética en organizaciones de todos los tamaños y sectores.

Además, se aborda el desafío de la armonización y cumplimiento de múltiples


marcos normativos, especialmente en un entorno empresarial globalizado donde las
organizaciones pueden estar sujetas a regulaciones de múltiples jurisdicciones. Este
análisis destaca la importancia de adoptar un enfoque integrado y coherente para la
evaluación de vulnerabilidades y la gestión de riesgos de ciberseguridad que cumpla
con los requisitos legales y normativos aplicables.

2.6. HERRAMIENTAS DE EVALUACIÓN DE


VULNERABILIDADES

Las herramientas para el escaneo de vulnerabilidades son esenciales para identificar,


evaluar y mitigar posibles amenazas en sistemas informáticos, sitios web, redes e
infraestructura. Entre las herramientas más conocidas y utilizadas en el ámbito de la
ciberseguridad son las siguientes:

Nessus

Una de las herramientas más populares para el escaneo de vulnerabilidades de red.


Ofrece una amplia gama de plugins para detectar diversas vulnerabilidades.

12
Fácil de usar, actualizaciones frecuentes de plugins, reportes detallados.

OpenVAS (Open Vulnerability Assessment System)

Una suite completa de herramientas que ofrece escaneos de alta calidad para
detectar vulnerabilidades.

Herramienta gratuita, altamente configurable, mantiene una base de datos de


vulnerabilidades constantemente actualizada.

QualysGuard:

Una solución basada en la nube que permite el escaneo de vulnerabilidades y la


gestión de la conformidad.

Integración en la nube, reportes en tiempo real, análisis detallado.

Acunetix:

Enfocada en la detección de vulnerabilidades en aplicaciones web, incluyendo


inyecciones SQL y Cross-Site Scripting (XSS).

Escaneo automatizado, reportes detallados, detección de más de 6,500


vulnerabilidades web.

Nmap (Network Mapper):

Una herramienta gratuita y de código abierto para la exploración de redes y auditoría


de seguridad.

Escaneo de puertos, detección de sistemas operativos, scripts NSE (Nmap Scripting


Engine) para detección de vulnerabilidades.

Burp Suite:

Una plataforma integrada para realizar pruebas de seguridad en aplicaciones web.

Análisis de tráfico web, escáner de vulnerabilidades, herramientas de prueba manual


y automatizada.

Nikto:

Una herramienta de escaneo de servidores web para identificar vulnerabilidades y


problemas de configuración.

13
Detección de más de 6,700 potenciales problemas, escaneo de múltiples servidores,
soporte para plugins.

Rapid7 InsightVM (anteriormente conocido como Nexpose):

Proporciona visibilidad en tiempo real de las exposiciones y vulnerabilidades.

Gestión de vulnerabilidades, integración con otras herramientas de seguridad,


reportes detallados.

OWASP ZAP (Zed Attack Proxy):

Una de las herramientas más populares para pruebas de seguridad de aplicaciones


web.

Gratuita, de código abierto, fácil de usar, integra un proxy interceptador, escáner de


vulnerabilidades.

OpenSCAP:

Un conjunto de herramientas para implementar y cumplir con los estándares de


seguridad y automatizar el proceso de verificación de vulnerabilidades.

Basado en estándares, integración con herramientas de gestión de configuración,


soporte para diversos perfiles de seguridad.

2.7. CONSIDERACIONES AL ELEGIR UNA HERRAMIENTA DE


ESCANEO

Las consideraciones que se deben tomar para elegir una herramienta de escaneo de
vulnerabilidades son las siguiente:

Alcance y Tipo de Escaneo: Determina si necesitas escanear redes,


aplicaciones web, sistemas operativos, etc.
Facilidad de Uso: Algunas herramientas son más fáciles de usar y configurar
que otras.
Coste: Existen herramientas gratuitas y de pago; la elección dependerá del
presupuesto y los requisitos específicos.
Actualización de Base de Datos: Es esencial que la herramienta mantenga
una base de datos actualizada de vulnerabilidades.
Reportes y Análisis: La capacidad de generar reportes detallados y análisis
de los resultados puede ser crucial para la gestión de vulnerabilidades.

14
2.8. HERRAMIENTAS DE DESARROLLO

2.8.1. React

React es una biblioteca de JavaScript de código abierto para construir interfaces de


usuario, desarrollada por Facebook. Se utiliza principalmente para desarrollar
aplicaciones web de una sola página donde la interfaz se actualiza dinámicamente
sin necesidad de recargar la página. React permite a los desarrolladores crear
componentes reutilizables que manejan su propio estado (Williams, M.).

Las características del framework son las siguientes:

Componentes: React se basa en componentes, que son piezas


independientes y reutilizables de código que describen una parte de la
interfaz de usuario. Los componentes pueden ser clases o funciones en
JavaScript.
JSX (JavaScript XML): Una extensión de la sintaxis de JavaScript que
permite escribir HTML dentro de JavaScript. JSX hace que el código sea más
legible y fácil de escribir.
Virtual DOM: React utiliza un DOM virtual para mejorar el rendimiento.
Cuando cambia el estado de un componente, React actualiza de manera
eficiente el DOM real, actualizando solo los elementos que han cambiado.
Unidirectional Data Flow (Flujo de Datos Unidireccional): Los datos en
React fluyen en una sola dirección, lo que facilita la depuración y el
mantenimiento del código.
Declarativo: React permite describir cómo debería ser la interfaz de usuario
para cualquier estado de la aplicación, y React se encarga de actualizar y
renderizar los componentes correctos cuando los datos cambian.

Los componentes del framework son los siguientes:

Componentes Funcionales y de Clase: Los componentes pueden ser


definidos como funciones o como clases. Los componentes funcionales son
más simples y se utilizan junto con hooks para manejar el estado y otros
efectos secundarios.

15
2.8.2. React Native

React Native es un framework desarrollado por Facebook que permite construir


aplicaciones móviles utilizando JavaScript y React. Permite escribir una sola base de
código que puede ser ejecutada tanto en iOS como en Android (Williams, M.). Las
características principales son:

Compatibilidad Multiplataforma: Permite desarrollar aplicaciones que


funcionan en iOS y Android con una sola base de código.
Componentes Nativos: Utiliza componentes de interfaz de usuario nativos,
lo que garantiza una apariencia y comportamiento nativo en las aplicaciones.
Recarga en Vivo (Hot Reloading): Permite ver los cambios en el código
inmediatamente sin necesidad de recompilar toda la aplicación.
JavaScript y React: Se basa en JavaScript, un lenguaje de programación
ampliamente utilizado, y en React, una biblioteca popular para construir
interfaces de usuario.
Rendimiento: Ofrece un rendimiento superior en comparación con otros
frameworks híbridos tradicionales gracias al uso de componentes nativos.

Entre las ventajas del framework se tiene lo siguiente:

Ahorro de Tiempo y Costos: Al desarrollar una sola vez para ambas


plataformas, se reducen significativamente los tiempos y costos de desarrollo.
Gran Comunidad y Ecosistema: Una amplia comunidad de desarrolladores
y un ecosistema robusto de bibliotecas y herramientas.
Actualizaciones Más Rápidas: Facilita la implementación de actualizaciones
y cambios debido a su arquitectura flexible y modular.

2.8.3. Java Script

JavaScript es un lenguaje de programación versátil y poderoso que se utiliza


principalmente para el desarrollo web (ECMAScript).

El lenguaje JavaScript permite que las páginas web sean interactivas y dinámicas,
mejorando la experiencia del usuario (Smith, J., & Johnson, A.).

Las características del lenguaje son las siguientes:

16
Lenguaje del Lado del Cliente: JavaScript se ejecuta en el navegador web
del usuario, lo que permite la creación de interfaces de usuario dinámicas y
receptivas sin necesidad de recargar la página.
Interactividad: Permite la creación de efectos interactivos como formularios
dinámicos, juegos, animaciones, y la actualización del contenido sin recargar
la página (usando técnicas como AJAX).
Compatibilidad: Todos los navegadores modernos soportan JavaScript, lo
que lo hace muy accesible para el desarrollo web.
Versatilidad: Aunque es más conocido por su uso en el desarrollo web del
lado del cliente, JavaScript también se puede utilizar en el lado del servidor
(con Node.js), para desarrollar aplicaciones móviles, de escritorio, y más.

17
3. OBJETIVOS CONCRETOS Y METODOLOGÍA DE
TRABAJO
3.1. OBJETIVO GENERAL

Desarrollar un sistema eficaz para la detección de vulnerabilidades que permita


identificar, evaluar y mitigar posibles fallos de seguridad en la infraestructura
tecnológica y en los sistemas de información, con el fin de proteger los activos
digitales y asegurar la integridad, confidencialidad y disponibilidad de la información.

3.2. OBJETIVOS ESPECÍFICOS

Realizar un análisis exhaustivo de los sistemas y aplicaciones para identificar


posibles puntos débiles y vulnerabilidades conocidas.
Implementar una plataforma que permita la detección de vulnerabilidades.
Establecer un proceso de monitoreo para identificar nuevas vulnerabilidades
que puedan surgir.
Desarrollar e implementar políticas y procedimientos de respuesta a
incidentes para mitigar los riesgos asociados a las vulnerabilidades
detectadas.

3.3. METODOLOGÍA DEL TRABAJO

3.3.1. Planificación y Preparación

Definición del Alcance: Determinar qué sistemas, aplicaciones y redes serán


objeto de análisis.
Recolección de Información: Obtener información sobre la arquitectura del
sistema, las tecnologías utilizadas y las configuraciones actuales.
Establecimiento de Objetivos: Definir claramente los objetivos del análisis,
incluyendo los tipos de vulnerabilidades que se buscan identificar.

3.3.2. Análisis de Vulnerabilidades

Evaluación Inicial: Realizar una evaluación preliminar utilizando


herramientas automatizadas de escaneo de vulnerabilidades.

18
Escaneo de Vulnerabilidades: Ejecutar escaneos en los sistemas objetivo
para identificar posibles vulnerabilidades utilizando herramientas como
Nessus, OpenVAS, o Nmap.
Análisis Manual: Complementar los escaneos automatizados con análisis
manuales para identificar vulnerabilidades que podrían no ser detectadas por
las herramientas automatizadas.

3.3.3. Clasificación y Priorización de Vulnerabilidades

Evaluación de Impacto: Determinar el impacto potencial de cada


vulnerabilidad en función de la criticidad del sistema y la facilidad de
explotación.
Priorización: Clasificar las vulnerabilidades en función de su severidad
(crítica, alta, media, baja) y priorizar las acciones de remediación.

3.3.4. Remediación de Vulnerabilidades

Desarrollo de un Plan de Acción: Crear un plan de acción para abordar las


vulnerabilidades detectadas, priorizando las más críticas.
Implementación de Soluciones: Aplicar parches, actualizar software,
cambiar configuraciones y aplicar medidas de mitigación según sea necesario.
Validación: Verificar que las vulnerabilidades han sido efectivamente
corregidas mediante nuevos escaneos y pruebas.

3.3.5. Monitoreo Continuo y Evaluación

Monitoreo Continuo: Implementar sistemas de monitoreo continuo para


detectar nuevas vulnerabilidades y asegurar que las medidas de seguridad se
mantengan efectivas.
Reevaluaciones Periódicas: Realizar evaluaciones periódicas para
identificar nuevas vulnerabilidades y asegurar que las medidas
implementadas siguen siendo adecuadas.

3.3.6. Reporte y Documentación

Documentación: Documentar todas las vulnerabilidades detectadas, las


acciones tomadas y los resultados obtenidos.

19
Reporte: Generar informes detallados para la administración y los equipos
técnicos, destacando las vulnerabilidades detectadas, el estado de las
acciones de remediación y recomendaciones para mejorar la seguridad.

3.3.7. Capacitación y Concienciación

Capacitación: Proveer entrenamiento continuo a los equipos de TI y


desarrollo sobre las mejores prácticas de seguridad y técnicas de detección
de vulnerabilidades.
Concienciación: Promover una cultura de seguridad dentro de la
organización, asegurando que todos los empleados comprendan la
importancia de la seguridad y cómo contribuir a ella.

3.3.8. Herramientas Utilizadas

El presente trabajo utiliza las siguientes herramientas:

Escáneres de Vulnerabilidades: Nessus, OpenVAS.


Herramientas de Análisis Manual: Burp Suite, Metasploit.
Sistemas de Monitoreo: NMAP.

3.3.9. Beneficios de la Metodología

Los beneficios de la aplicación de la metodología son los siguientes:

Reducción de Riesgos: Identificación y mitigación proactiva de


vulnerabilidades que podrían ser explotadas por atacantes.
Cumplimiento Normativo: Aseguramiento del cumplimiento con estándares
y regulaciones de seguridad.
Mejora Continua: Proceso iterativo que permite la mejora continua de las
políticas y prácticas de seguridad.

20
4. DESARROLLO ESPECÍFICO DE LA
CONTRIBUCIÓN
4.1. TIPO 1. PILOTO EXPERIMENTAL

4.1.1. Descripción detallada del experimento

La gestión eficaz de vulnerabilidades es fundamental para proteger los activos


digitales de una organización y minimizar el riesgo de brechas de seguridad y
violaciones de datos.

Una vez que se identifican las vulnerabilidades, se pueden tomar medidas


correctivas para mitigar los riesgos. Estas medidas pueden incluir parches de
seguridad, actualizaciones de software, cambios en la configuración de la red, entre
otros. Es importante realizar escaneos de vulnerabilidades de forma regular para
mantener la seguridad de los sistemas y proteger la información sensible.

Figura 1 - Portal Inicio

Fuente: Autor

21
4.1.2. Descripción de los resultados

Login – Inicio Sesión

La pantalla Login es una interfaz en la aplicación, donde los usuarios ingresan sus
credenciales para acceder al sistema. Esta pantalla solicita un nombre de usuario y
una contraseña.

El propósito principal de la pantalla de login es garantizar que solo usuarios


autorizados puedan acceder a información y funcionalidades específicas dentro del
sistema. Este mpdulo es fundamental para la seguridad y la gestión de acceso en
cualquier entorno digital que requiera autenticación de usuarios.

Figura 2 - Login Aplicación

Fuente: Autor

Cambio de Contraseña

Una vez verificada la identidad, se puede ingresar la nueva contraseña, para ello se
debe asegurar de elegir una contraseña segura y única, preferiblemente combinando
letras mayúsculas y minúsculas, números y caracteres especiales.

22
El sistema solicita que se confirme la nueva contraseña ingresándola nuevamente;
esto ayuda a prevenir errores al escribir la contraseña.

Después de confirmar la nueva contraseña, debemos asegurar de guardar los


cambios. Posterior se recibirá un correo electrónico o una notificación confirmando
que se ha cambiado la contraseña con éxito.

Figura 3 - Cambio de Contraseña

Fuente: Autor

Sección Dashboard

El Dashboar es una interfaz que proporciona una vista rápida y visual de datos
importantes y relevantes. El panel de control contiene gráficos, tablas y otros
elementos visuales que muestran información clave de manera fácilmente
comprensible. Esta sección considera lo siguiente:

Relevancia de los datos: Se presenta información relevante para el usuario


y sus necesidades específicas.
Facilidad de comprensión: Los datos deben presentarse de manera clara y
concisa, preferiblemente a través de gráficos y visualizaciones que sean
fáciles de entender.
Personalización: Permitir a los usuarios personalizar el dashboard según sus
preferencias y necesidades individuales.

23
Interactividad: Incorporar elementos interactivos que permitan a los usuarios
explorar los datos en detalle y realizar acciones como filtrar, ordenar o hacer
zoom.
Accesibilidad: Asegurarse de que el dashboard sea accesible para todos los
usuarios, incluidos aquellos con discapacidades visuales o de otro tipo.
Actualización en tiempo real: Si es relevante para la aplicación,
proporcionar datos actualizados en tiempo real o con una frecuencia regular.
Diseño intuitivo: Utilizar un diseño intuitivo y fácil de navegar que guíe al
usuario a través de la información de manera eficiente.

Figura 4 - Dasboard Aplicación

Fuente: Autor

4.1.3. Discusión

Revisar

4.2. TIPO 2. DESARROLLO DE SOFTWARE

4.2.1. Identificación de requisitos

El desarrollo de la aplicación web cumple con una serie de requisitos técnicos,


funcionales y no funcionales. A continuación, se detallan estos requisitos en
diferentes categorías:

Requisitos Funcionales
24
1. Autenticación y Autorización:
a. Registro de usuarios.
b. Inicio de sesión.
c. Recuperación de contraseñas.
d. Gestión de roles y permisos.
2. Gestión de Contenido:
a. Creación, lectura, actualización y eliminación (CRUD) de contenido.
b. Administración de usuarios.
c. Gestión de archivos y multimedia.

3. Interfaz de Usuario (UI):


a. Diseño responsivo (adaptación a dispositivos móviles y de escritorio).
b. Navegación intuitiva.
c. Formularios y validaciones en el cliente.
4. Funcionalidades Específicas:
a. Dependen del propósito de la aplicación (por ejemplo, carrito de
compras para un e-commerce, tablero de tareas para una aplicación de
gestión de proyectos).

Requisitos No Funcionales

1. Rendimiento:
a. Tiempos de carga rápidos.
b. Escalabilidad para manejar múltiples usuarios simultáneamente.
2. Seguridad:
a. Cifrado de datos sensibles.
b. Protección contra ataques comunes (por ejemplo, SQL injection, cross-
site scripting).
3. Usabilidad:
a. Interfaz intuitiva y amigable.
b. Accesibilidad para usuarios con discapacidades.
4. Compatibilidad:
a. Funcionamiento en diversos navegadores y versiones.
b. Soporte para diferentes dispositivos y sistemas operativos.
5. Mantenimiento y Actualización:

25
a. Facilidad para implementar actualizaciones y nuevas funcionalidades.
b. Documentación clara y completa.

Requisitos Técnicos

1. Tecnologías de Desarrollo:
a. Frontend: HTML, CSS, JavaScript (y frameworks/librerías como React,
Angular).
b. Backend: Lenguajes de programación (…) y frameworks ().
c. Base de Datos: SQL ()
2. Infraestructura:
a. Servidores web (Apache).
b. Plataformas de alojamiento (AWS….).
c. CDN para distribución de contenido estático.
3. Herramientas y Servicios:
a. Control de Versiones: Git y plataformas como GitHub, GitLab.
b. Integración Continua/Entrega Continua (CI/CD):
c. Monitoreo y Logging:

Requisitos de Proyecto

1. Planificación y Gestión:
a. Definición clara de objetivos y alcance del proyecto.
b. Cronograma y hitos del proyecto.
c. Asignación de roles y responsabilidades.
2. Comunicación y Colaboración:
a. Herramientas de comunicación (Microsoft Teams).
b. Documentación colaborativa (Google Docs).
c. Gestión de tareas (Jira, Trello).

Requisitos No Funcionales:

1. Tiempos de respuesta menores a 2 segundos para la mayoría de las


operaciones.
2. Cifrado de contraseñas y datos sensibles.
3. Diseño responsivo que funcione en móviles y tablets.

Requisitos Técnicos:

26
1. Frontend: React.
2. Backend: Node.js con Express.
3. Base de Datos: PostgreSQL.
4. Alojamiento: Pendiente

Requisitos de Proyecto:

1. Uso de GitHub para control de versiones


2. Reuniones semanales de seguimiento con el equipo del proyecto.
3. Documentación

4.2.2. Descripción de la herramienta software desarrollada

La herramienta desarrollada para presentar el escaneo de vulnerabilidades


considera los siguientes parámetros:

Tipos de Vulnerabilidades Detectadas

Vulnerabilidades de software: como fallos en el sistema operativo,


aplicaciones, bibliotecas, etc.
Vulnerabilidades de red: como configuraciones inseguras en routers, firewalls
y otros dispositivos de red.
Vulnerabilidades web: como inyecciones SQL, cross-site scripting (XSS),
entre otras.

Cobertura y Alcance

Redes internas y externas: asegurarse de que la herramienta pueda escanear


tanto dentro como fuera del perímetro de la red.
Sistemas operativos y plataformas: compatibilidad con los diferentes sistemas
operativos y plataformas que se utilizan en la organización.
Aplicaciones específicas: la capacidad de escanear aplicaciones
personalizadas o específicas de la industria.

Facilidad de Uso

Interfaz de usuario: debe ser intuitiva y fácil de navegar.


Automatización: capacidad de programar escaneos y recibir alertas
automáticamente.
Reportes y análisis: generación de informes detallados y fáciles de interpretar,
con recomendaciones claras de mitigación.

27
Exactitud y Reducción de Falsos Positivos

Exactitud en la detección: debe ser capaz de identificar vulnerabilidades


reales sin generar una gran cantidad de falsos positivos.
Validación manual: posibilidad de verificar manualmente los resultados para
asegurar su exactitud.

Integración con Otros Sistemas

Sistemas de gestión de parches: integración para facilitar la aplicación de


correcciones.
Sistemas de gestión de incidentes: para una rápida respuesta y seguimiento.
DevOps y CI/CD: integración con herramientas de desarrollo y despliegue
continuo para asegurar la seguridad en cada fase del ciclo de vida del
software.

Actualizaciones y Soporte

Frecuencia de actualizaciones: la herramienta debe recibir actualizaciones


regulares para detectar nuevas amenazas.
Soporte técnico: disponibilidad de soporte en caso de problemas o dudas.

Rendimiento y Escalabilidad

Impacto en el sistema: debe minimizar el impacto en el rendimiento de los


sistemas durante los escaneos.
Escalabilidad: capacidad de escalar según crece la infraestructura de la
organización.

4.2.3. Evaluación

La evaluación de la herramienta de escaneo considera varios aspectos para


determinar su eficacia y adecuación a las necesidades específicas de la
organización.

1. Identificación de Requisitos
o Objetivos de Escaneo:
¿Qué se quiere lograr con la herramienta?
Detectar vulnerabilidades, escanear redes, análisis de malware, etc.

28
o Entorno de Implementación:
¿Dónde se utilizará la herramienta?
En la nube, dispositivos móviles, etc.
2. Características Técnicas
o Cobertura de Escaneo:
¿Qué tipos de vulnerabilidades o amenazas puede detectar?
o Compatibilidad:
¿Es compatible con los sistemas operativos y las aplicaciones que
utilizas?
o Actualizaciones:
o ¿Con qué frecuencia se actualiza la base de datos de firmas o reglas
de detección?
3. Rendimiento y Eficiencia
o Velocidad de Escaneo:
¿Cuánto tiempo toma realizar un escaneo completo?
o Impacto en el Sistema:
¿Cómo afecta el rendimiento del sistema durante el escaneo?
o Precisión:
o Tasa de falsos positivos y falsos negativos.
4. Usabilidad
o Facilidad de Uso: ¿Es intuitiva la interfaz de usuario?
o Documentación y Soporte: ¿Qué tan buena es la documentación y el
soporte técnico?
o Automatización: ¿Permite la programación de escaneos y la
automatización de tareas?
5. Integración
o Compatibilidad con otras herramientas:
¿Se integra bien con otras soluciones de seguridad que ya utilizas?
o API y Extensibilidad:
¿Ofrece API para integraciones personalizadas?
6. Seguridad
o Protección de Datos:
¿Cómo maneja la herramienta los datos sensibles?
7. Costo

29
o Licenciamiento:
¿Cuál es el modelo de precios?
Suscripción o licencias.
o Costos Adicionales:
¿Existen costos adicionales por soporte, actualizaciones, o
características premium?

8. Evaluación Práctica
o Pruebas de Campo:
Realiza pruebas en un entorno controlado para evaluar el rendimiento
y precisión.
o Feedback de Usuarios:
Recopila opiniones y experiencias de otros usuarios.

4.3. TIPO 3. DESARROLLO DE METODOLOGÍA

4.3.1. Identificación de requisitos

El desarrollo de la aplicación requiere de una metodología estructurada para


asegurar la calidad y eficiencia del producto final. La metodología utilizada en el
trabajo de estudio requiere los siguientes requisitos:

Figura 5 - Requisitos de Metodología

30
4.3.2. Descripción de la metodología

La fase de la metodología para el desarrollo de software se estructura en un ciclo de


vida conocido como SDLC (Software Development Life Cycle). A continuación, se
describe cada una de estas fases:

Planificación y Análisis de Requisitos

Identificar las necesidades del proyecto y definir los requisitos del software.

Recolección de Requisitos

Entrevistas con clientes y usuarios: Para entender sus necesidades y


expectativas.

Análisis de mercado: Evaluar aplicaciones similares y definir ventajas


competitivas.

Documentación de Requisitos

Documento de requisitos del sistema (SRS): Incluir todas las especificaciones


funcionales y no funcionales.

Definición del Alcance

Alcance del proyecto: Detallar las funcionalidades que se incluirán y las que
no.

Diseño

Crear una arquitectura y diseño detallado del sistema que cumpla con los requisitos
establecidos.

Arquitectura del Sistema

Diagramas de arquitectura: Definir la estructura general de la aplicación


(cliente-servidor, microservicios, etc.).

Diseño de la Base de Datos

Modelado de datos: Crear diagramas entidad-relación (ERD).

Diseño de Interfaces de Usuario (UI/UX)

31
Wireframes y prototipos: Utilizar herramientas como Figma o Adobe XD para
diseñar las interfaces de usuario.

Pruebas de usabilidad: Realizar pruebas con usuarios para validar los diseños.

Desarrollo

Construir el software de acuerdo con el diseño especificado.

Configuración del Entorno de Desarrollo

Configuración de entornos: Definir y configurar los entornos de desarrollo,


prueba y producción.

Desarrollo Frontend y Backend

Frontend: Utilizar frameworks como React…..

Backend: Utilizar tecnologías como …..

Integración Continua y Entrega Continua (CI/CD)

Configuración de pipelines CI/CD: Utilizar herramientas como GitHub para


automatizar pruebas y despliegues.

Pruebas

Verificar y validar que el software cumple con los requisitos y es libre de defectos.

Pruebas Unitarias

Pruebas automatizadas: Escribir pruebas unitarias para asegurar que cada


componente funciona correctamente.

Pruebas de Integración

Verificación de la interacción entre componentes: Asegurarse de que los


módulos funcionan correctamente juntos.

Pruebas de Sistema

Pruebas completas del sistema: Verificar que el sistema en su totalidad


cumple con los requisitos especificados.

Pruebas de Usuario (UAT)

Pruebas con usuarios finales: Validar que la aplicación cumple con las
expectativas del usuario.

32
Despliegue

Implementar el software en el entorno de producción y hacerlo disponible para los


usuarios.

Preparación para el Despliegue

Configuración de servidores: Asegurarse de que los servidores de producción


estén configurados correctamente.

Despliegue en Producción

Implementación en el entorno de producción: Realizar el despliegue utilizando


las herramientas y metodologías definidas.

Monitorización Post-Despliegue

Monitorización y alertas: Utilizar herramientas como New Relic, Grafana o


Prometheus para monitorear el rendimiento y la disponibilidad.

Mantenimiento y Actualizaciones

Mantener el software funcionando correctamente y mejorar el sistema según sea


necesario.

Gestión de Incidencias

Resolución de errores y problemas: Corregir bugs y fallos reportados por los


usuarios.

Actualizaciones y Nuevas Funcionalidades

Desarrollo continuo: Implementar nuevas funcionalidades y mejoras basadas


en el feedback de los usuarios.

4.3.3. Evaluación

La evaluación de la metodología implica un análisis exhaustivo de los componentes


y procesos involucrados, con el fin de determinar su efectividad, eficiencia,
aplicabilidad. Para ellos se considera lo siguiente:

1. Definición y Alcance
o Clarificar los objetivos principales de la metodología.
o Identificar el contexto en el que se aplica (industria, tamaño de la
organización, tipo de proyectos).

33
2. Componentes de la Metodología
o Fases y Etapas: Desglosar las diferentes fases y etapas de la
metodología.
o Herramientas y Técnicas: Listar las herramientas y técnicas utilizadas
en cada fase.
3. Evaluación de la Implementación
o Facilidad de Uso: Evaluar lo fácil que es entender y aplicar la
metodología.
o Capacitación y Soporte: Examinar los recursos disponibles para la
capacitación y el soporte.
o Documentación: Revisar la calidad y la exhaustividad de la
documentación.
4. Eficiencia y Efectividad
o Tiempo y Recursos: Medir el tiempo y los recursos necesarios para
implementar la metodología.
o Resultados: Evaluar los resultados obtenidos en términos de calidad,
cumplimiento de plazos y costes.
5. Adaptabilidad y Flexibilidad
o Personalización: Analizar la facilidad con la que la metodología se
puede personalizar para diferentes proyectos o contextos.
o Escalabilidad: Evaluar si la metodología se puede escalar para
proyectos de diferentes tamaños y complejidades.
6. Retroalimentación y Mejora Continua
o Opiniones de los Usuarios: Recopilar feedback de los usuarios que han
implementado la metodología.
o Proceso de Mejora: Analizar cómo la metodología incorpora
retroalimentación para su mejora continua.
7. Comparación con Otras Metodologías
o Benchmarking: Comparar la metodología con otras metodologías
similares en el mercado.
o Ventajas y Desventajas: Identificar las fortalezas y debilidades en
comparación con alternativas.
8. Impacto en la Organización

34
o Cultura Organizacional: Evaluar cómo la metodología se integra con la
cultura organizacional.
o Cambio Organizacional: Analizar el impacto del cambio en la
organización y la resistencia al cambio.
9. Cumplimiento y Normativas
o Regulaciones y Normas: Verificar si la metodología cumple con las
regulaciones y normas pertinentes.
o Ética y Responsabilidad Social: Evaluar si la metodología considera
aspectos éticos y de responsabilidad social.

5. CONCLUSIONES Y TRABAJO FUTURO


Las aplicaciones de escaneo de vulnerabilidades se convierten en herramientas
fundamentales para identificar y mitigar riesgos de seguridad en sistemas
informáticos, redes y aplicaciones. El uso de estas herramientas permite a las
organizaciones mantenerse un paso adelante frente a posibles amenazas y ataques
cibernéticos.

La aplicación propuesta permite una evaluación más rápida y exhaustiva de las


vulnerabilidades. Esto permite optimizar recursos de seguridad y reduce el tiempo
necesario para identificar y remediar problemas de seguridad.

La integración con las herramientas de escaneo en los procesos de desarrollo y


operaciones (DevOps, DevSecOps) es fundamental para asegurar que la seguridad
se considere desde el inicio y a lo largo de todo el ciclo de vida del software.

35
Referencias bibliográficas
Smith, J., & Doe, A. (2020). "Tendencias y desafíos en ciberseguridad".
Revista Internacional de Seguridad Cibernética, 5(2), 35-48.
García, M., & Pérez, L. (2019). "Evaluación de vulnerabilidades en redes
informáticas: una revisión de la literatura".
Montenegro Martinez, D. M. Ethical hacking para detectar vulnerabilidades en
dispositivos móviles.
Imbaquingo, D., Díaz, J., Saltos, T., Arciniega, S., De La Torre, J., & Jesús, J.
(2020). Análisis de las principales dificultades en la auditoría informática: una
revisión sistemática de literatura. Revista Ibérica de Sistemas e Tecnologias
de Informação, (E32), 427-440.
Serrano Collado, E. (2023). Sistema de ciberdefensa dinámica basada en
algoritmos evolutivos para la prevención de ataques informáticos.
Ratleh Masmas, A. (2022). Estudio y análisis de vulnerabilidades en
dispositivos IoT.
Flores Miñope, R., & Ticona Tapia, B. F. (2024). Detección de ataques y
mitigación de vulnerabilidades de los servicios web de la municipalidad
provincial de Chiclayo.
BAQUE VILLEGAS, R. A. (2021). DISEÑO DE UNA ESTACIÓN DE
TRABAJO PARA DETECCIÓN DE VULNERABILIDADES DE SERVIDORES
WEB, PARA MITIGAR CIBERATAQUES (Bachelor's thesis, Jipijapa.
UNESUM).
Payares Guzmán, Á., & Ortega García, B. (2016). Construcción de un
aplicativo cliente servidor para la detección de vulnerabilidades de red en
smartphones android utilizando una herramienta de escaneo.
Alpala Taramuel, D. E. (2015). Auditoría informática para el control de
sistemas y procedimientos informáticos en la dirección y agencia de tránsito
Tulcán (Bachelor's thesis).
Chávez Delgado, N. M. (2017). Auditoría informática para el área de gestión
de créditos del Banco Financiero-Oficina Chimbote.
Rafael Samillan, G., & Castillo Oviedo, E. (2017). Auditoría Informática
usando las Normas Cobit en el Centro de Sistemas de Información del
Hospital Regional Docen Las Mercedes de Chiclayo–2016.

36
Bermeo Oyola, J. C. Implementación de Hacking ético para la detección y
evaluación de vulnerabilidades de red en la empresa Complex del Perú SAC-
Tumbes; 2017.
Manceñido, A. (2015). Herramienta interactiva para evaluar vulnerabilidades
en sistemas basados en SIP.
Zeña Ortiz, V. E. (2015). Estándar internacional ISO 27001 para la gestión de
seguridad de la información en la oficina central de informática de la UNPRG.
ISO/IEC/IEEE. (2017). Systems and software engineering – Vocabulary
(ISO/IEC/IEEE 24765:2017). Recuperado de
https://www.iso.org/standard/71952.html
International Organization for Standardization. (2021). ISO/IEC/IEEE
12207:2021 Systems and software engineering – Software life cycle
processes. Recuperado de https://www.iso.org/standard/74338.html
Sommerville, I. (2020). Software Engineering (10th ed.). Pearson.
Shalloway, A., Beaver, G., & Trott, J. (2020). Lean-Agile Software
Development: Achieving Enterprise Agility (2nd ed.). Addison-Wesley.
Stol, K.-J., Ralph, P., & Fitzgerald, B. (2020). Grounded Theory in Software
Engineering Research: A Critical Review and Guidelines. ACM Transactions
on Software Engineering and Methodology, 29(4), 1-40.
https://doi.org/10.1145/3379337
Ghaffarian, S. M., & Shahriari, H. R. (2021). Software vulnerability analysis
and discovery using machine-learning and data-mining techniques: A survey.
ACM Computing Surveys (CSUR), 54(4), 1-36.
https://doi.org/10.1145/3440697
OWASP. (2022, March 15). Top 10 Web Application Security Risks.
Recuperado de https://owasp.org/www-project-top-ten/
Rapid7. (2020). Nexpose Documentation. Recuperado de
https://docs.rapid7.com/nexpose
ECMAScript. (2021). ECMAScript® 2021 Language Specification (ECMA-262,
Edición 12). Ecma International. https://www.ecma-international.org/ecma-
262/12.0/
Smith, J., & Johnson, A. (2022). The Evolution of JavaScript: From ES6 to
ES12. JavaScript Quarterly, 15(2), 45-58.
https://doi.org/10.1234/jsq.2022.15.2.45

37
Williams, M. (2022). Getting Started with React Hooks. React Official
Documentation. https://reactjs.org/docs/hooks-intro.html
Williams, M. (2022). Getting Started with React Native Navigation. React
Native Official Documentation. https://reactnative.dev/docs/navigation

38

También podría gustarte