0% encontró este documento útil (0 votos)
4 vistas67 páginas

Inyección SQL

El documento detalla el desarrollo de un módulo de seguridad ofensiva para la detección de vulnerabilidades web, específicamente inyección SQL y CSRF, utilizando herramientas como SQLMap y OWASP ZAP. Se implementó un sistema automatizado que permite auditorías técnicas en entornos autenticados y pre-autenticados, generando informes alineados con la norma ISO/IEC 27001:2022. El proyecto busca optimizar la detección y mitigación de vulnerabilidades, facilitando la comunicación de resultados a usuarios no técnicos.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
4 vistas67 páginas

Inyección SQL

El documento detalla el desarrollo de un módulo de seguridad ofensiva para la detección de vulnerabilidades web, específicamente inyección SQL y CSRF, utilizando herramientas como SQLMap y OWASP ZAP. Se implementó un sistema automatizado que permite auditorías técnicas en entornos autenticados y pre-autenticados, generando informes alineados con la norma ISO/IEC 27001:2022. El proyecto busca optimizar la detección y mitigación de vulnerabilidades, facilitando la comunicación de resultados a usuarios no técnicos.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

1

IMPLEMENTACIÓN DE UN MÓDULO DE SEGURIDAD OFENSIVA PARA LA


IDENTIFICACIÓN Y ANÁLISIS DE INYECCIÓN SQL Y CSRF

Sebastian Ramirez Laserna

Proyecto de grado presentado como requisito

para aspirar al título de Ingeniero en Sistemas y Computación

Director de la Práctica:

Biviana Yulieth Aguirre Arias

Universidad Tecnológica de Pereira

Programa de Ingeniería de Sistemas y Computación

Facultad de Ingenierías

Pereira, Risaralda, Colombia

2025
2

Dedicatoria

A Dios, por otorgar la sabiduría y la paciencia necesarias para alcanzar este logro. A mis padres,
por su apoyo incondicional y por enseñar que con sacrificio y dedicación todo es posible y a mi
pareja, por la comprensión, el apoyo constante y la motivación brindada durante cada etapa del
proceso formativo.

Agradecimientos

A mi directora de prácticas por permitir el desarrollo de este proyecto, el cual fortaleció las
habilidades en el ciclo de vida del desarrollo de software y aportó una nueva visión sobre la
ciberseguridad, la programación y las tecnologías emergentes. Del mismo modo, se agradece a la
tutora por su acompañamiento continuo y por proporcionar las herramientas necesarias para el
crecimiento profesional. Finalmente, se reconoce el apoyo del Semillero de Seguridad de la
Información por su valiosa contribución en la generación de esta herramienta.
3

Resumen

El presente documento tiene como objetivo documentar los resultados de la práctica empresarial

desarrollada en el marco del diseño e implementación de un módulo de seguridad ofensiva

automatizada, orientado a la detección de vulnerabilidades web, específicamente inyección SQL

(SQLi) y falsificación de solicitudes en sitios cruzados (CSRF). Esta práctica se llevó a cabo

durante un periodo de seis (8) meses, tiempo en el cual se integraron herramientas de código

abierto como SQLMap y OWASP ZAP dentro de un entorno modular y automatizado,

permitiendo su orquestación mediante scripts en Python y contenedores Docker.

El propósito del sistema desarrollado es apoyar los procesos de auditoría técnica ofensiva

mediante el análisis automatizado de sitios web vulnerables, tanto en entornos autenticados

(cuando se cuenta con credenciales) como en escenarios pre-autenticación mediante ataques

dirigidos a formularios de inicio de sesión. Como complemento, se integró un módulo de

generación de informes técnicos y otro orientado a usuarios no técnicos, alineado con los

controles de la norma ISO/IEC 27001:2022 (controles 8.25, 8.26, 8.28 y 8.29).

El desarrollo del sistema se estructuró en las siguientes etapas principales:

1.​ Análisis del estado del arte sobre SQLi, CSRF y técnicas de detección.

2.​ Selección e integración de herramientas ofensivas (SQLMap y ZAP).

3.​ Construcción de módulos para escaneo con y sin credenciales.

4.​ Implementación de reportes técnicos y reportes ISO interpretables.

5.​ Validación en entornos de prueba controlados (DVWA, bWAPP).


4

Como resultado, se construyó una herramienta funcional y adaptable que permite realizar

auditorías ofensivas de forma automática, documentada y conforme a estándares, con

capacidades de escalabilidad y extensibilidad para escenarios más complejos o ambientes reales.

Palabras clave: Seguridad ofensiva, Inyección SQL (SQLi), CSRF (Cross-Site Request Forgery),

Auditoría automatizada, SQLMap, OWASP ZAP, Detección de vulnerabilidades, ISO/IEC

27001:2022

Abstract

The purpose of this document is to document the results of the business practice developed

within the framework of the design and implementation of an automated offensive security

module, oriented to the detection of web vulnerabilities, specifically SQL injection (SQLi) and

cross-site request forgery (CSRF). This practice was carried out over a period of six (8) months,

during which time open source tools such as SQLMap and OWASP ZAP were integrated within

a modular and automated environment, allowing its orchestration through Python scripts and

Docker containers.

The purpose of the developed system is to support offensive technical auditing processes through

automated analysis of vulnerable websites, both in authenticated environments (when credentials

are available) and in pre-authentication scenarios through targeted attacks on login forms. As a

complement, a module for generating technical reports and another for non-technical users was

integrated, aligned with the controls of ISO/IEC 27001:2022 (controls 8.25, 8.26, 8.28 and 8.29).

The development of the system was structured in the following main stages:

1.​ Analysis of the state of the art on SQLi, CSRF and detection techniques.
5

2.​ Selection and integration of offensive tools (SQLMap and ZAP).

3.​ Construction of modules for scanning with and without credentials.

4.​ Implementation of technical reports and interpretable ISO reports.

5.​ Validation in controlled test environments (DVWA, bWAPP).

As a result, a functional and adaptable tool was built, which allows to perform offensive audits in

an automatic, documented and standard-compliant way, with scalability and extensibility

capabilities for more complex scenarios or real environments.

Keywords: Offensive Security, SQL Injection (SQLi), CSRF (Cross-Site Request Forgery),

Automated Auditing, SQLMap, OWASP ZAP, Vulnerability Detection, ISO/IEC 27001:2022


6

Tabla de Contenido

1. Introducción................................................................................................................................. 6
2. Justificación................................................................................................................................. 7
3. Objetivos.................................................................................................................................... 10
3.1 Objetivo General................................................................................................................10
3.2 Objetivo Específico............................................................................................................10
4. Marco Conceptual...................................................................................................................... 11
5. Marco Teórico............................................................................................................................ 14
5.1 Fundamentos de Seguridad Informática............................................................................ 14
5.2 Inyección SQL................................................................................................................... 15
5.3 CSRF..................................................................................................................................17
5.4 Norma ISO 27001.............................................................................................................. 19
6. Estado del Arte...........................................................................................................................23
Relevancia de la Detección de Vulnerabilidades en el Marco ISO 27001.............................. 23
Análisis de Vulnerabilidades Críticas: SQLi y CSRF..............................................................24
Enfoques y Técnicas de Detección Existentes.........................................................................42
7. Marco Metodológico..................................................................................................................44
6.1 Actividades........................................................................................................................ 45
6.2 Técnicas de recolección de información............................................................................46
6.3 Herramientas utilizadas......................................................................................................47
6.4 Criterios de validación....................................................................................................... 47
8. Desarrollo Práctica.....................................................................................................................47
9. Resultados de Aprendizaje.........................................................................................................55
10. Conclusiones............................................................................................................................ 56
11. Referencias...............................................................................................................................58
7

Lista de Tablas

1.​ Relación Controles con el Proyecto. Fuente Propia (2025) . . . . . . . . . . . . . . . . . . . . . . . 23

2.​ Empresas afectadas por Inyección SQL. Basado en Okesola (2023) . . . . . . . . . . . . . . . 30

3.​ Comandos de SQLMap para análisis de Inyección SQL Tomado de OWASP Foundation.

(n.d.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
8

Lista de Figuras

1.​ Diagrama del funcionamiento del ataque CSRF. Fuente Alexander y Paola (2025) . . . . 35

2.​ Falsificación CSRF con método POST. Fuente: Alexander y Paola (2025) . . . . . . . . . . 36
9

1.​ Introducción

Este proyecto tiene como propósito desarrollar un módulo de seguridad ofensiva que permita

verificar la presencia de vulnerabilidades de inyección SQL y CSRF en aplicaciones web. El

módulo se apoyará en herramientas especializadas de análisis como SQLMap y OWASP ZAP

para realizar la detección técnica de las vulnerabilidades, mientras que técnicas de Machine

Learning serán implementadas para optimizar la interpretación y presentación de los resultados,

generando informes comprensibles, claros y útiles incluso para usuarios sin conocimientos

técnicos avanzados. Esta solución busca no solo facilitar el trabajo del auditor, sino también

asegurar que la información sea entregada de manera estructurada y alineada con los

lineamientos de la norma ISO/IEC 27001:2022, especialmente en lo referente al tratamiento de

riesgos y al control de vulnerabilidades. De este modo, se propone una herramienta que no

reemplaza los mecanismos existentes de detección, sino que los complementa con capacidades

inteligentes orientadas a la mejora de la comunicación, trazabilidad y toma de decisiones en

entornos empresariales.
10

2.​ Justificación

El incremento de las amenazas en el ciberespacio y el auge de las tecnologías web han

transformado significativamente la forma en que las organizaciones desarrollan sus operaciones,

ampliando también la superficie de exposición a riesgos y ataques cibernéticos. En este contexto,

las aplicaciones web representan uno de los activos más críticos dentro de los sistemas de

información, al estar directamente conectadas con clientes, proveedores y procesos internos. Las

vulnerabilidades como la inyección SQL (SQLi) o la falsificación de solicitudes en sitios

cruzados (CSRF) siguen figurando entre las principales debilidades explotadas por actores

maliciosos, de acuerdo con el ranking de OWASP.

Frente a esta realidad, se justifica el desarrollo de un sistema automatizado de análisis ofensivo

para la detección temprana y documentada de dichas vulnerabilidades, el cual apoya los procesos

de auditoría técnica en entornos controlados o productivos. Esta herramienta permite identificar

fallos de seguridad de forma proactiva, reduciendo el tiempo y la carga operativa a los equipos

de auditores, y mejorando la trazabilidad de las amenazas en función de estándares

internacionales.

El proyecto se alinea con los principios de la norma ISO/IEC 27001:2022, específicamente con

los controles relacionados con el desarrollo seguro (8.25), los requisitos de seguridad de las

aplicaciones (8.26), la codificación segura (8.28) y las pruebas de seguridad durante el desarrollo

y la aceptación (8.29), aportando un mecanismo técnico que garantiza el cumplimiento

normativo desde una perspectiva ofensiva.

Desde el punto de vista práctico, este trabajo contribuye con una herramienta funcional que no

solo identifica fallos técnicos, sino que también genera informes en lenguaje comprensible para
11

usuarios no técnicos, fortaleciendo así los procesos de gestión del riesgo, concientización interna

y toma de decisiones. A nivel teórico, permite profundizar en el análisis de técnicas ofensivas

automatizadas, la orquestación de herramientas como SQLMap y OWASP ZAP, y su integración

con modelos de procesamiento de lenguaje natural (PLN) para la generación de informes

interpretables.

Finalmente, desde la dimensión metodológica, este desarrollo propone un modelo de arquitectura

ofensiva modular y reutilizable que puede ser adaptado por otras organizaciones interesadas en la

evaluación automatizada de la seguridad web, fomentando la investigación aplicada, la

innovación tecnológica y la mejora continua en el marco de la seguridad de la información.


12

3.​ Objetivos

3.1 Objetivo General

Desarrollar una aplicación web que integre herramientas de auditoría de seguridad ofensiva e

inteligencia artificial para analizar resultados, generando reportes claros y detallados que

optimicen los procesos de detección y mitigación de vulnerabilidades de inyección SQL y CSRF

en entornos empresariales.

3.2 Objetivo Específico

1. Implementar módulos de integración para herramientas de auditoría permitiendo la

automatización y centralización de los resultados.

2. Diseñar un sistema de análisis que utilice herramientas basadas en algoritmos de inteligencia

artificial para priorizar vulnerabilidades de inyección SQL y CSRF según su impacto.

3. Automatizar la generación de reportes con visualizaciones claras y personalizables, que

incluyen detalles técnicos y recomendaciones basadas en los resultados.

4. Desarrollar un prototipo funcional que permita realizar auditorías ofensivas de inyección SQL

y CSRF desde el escaneo inicial hasta la generación del informe final.

5. Documentar las funcionalidades del sistema, incluyendo guías técnicas y de uso para facilitar

su implementación y mantenimiento.
13

4.​ Marco Conceptual


• Cookie de sesión

Es un fragmento de información que un servidor web almacena en el navegador del usuario tras

iniciar sesión. Permite mantener la sesión activa entre múltiples solicitudes. En este proyecto, las

cookies de sesión se extraen automáticamente tras un inicio de sesión exitoso para permitir el

escaneo autenticado de vulnerabilidades en módulos protegidos de la aplicación web.

(OWASP Foundation, 2021)

• Confidencialidad

Principio de seguridad que asegura que la información solo esté disponible para las personas

autorizadas. Se protege mediante cifrado, autenticación y control de acceso. (ISO, 2022)

• CSRF (Cross-Site Request Forgery)

Es un ataque en el que se induce al navegador de un usuario autenticado a enviar solicitudes no

deseadas a una aplicación web. Se aprovecha de la confianza del sistema en el navegador y del

uso de cookies de sesión. En este proyecto, se incluye un módulo de detección automatizada de

CSRF mediante OWASP ZAP, que permite identificar formularios vulnerables que carecen de

tokens de protección o validación de origen (Ali & Rahman, 2021; OWASP Foundation, 2021).

• DVWA (Damn Vulnerable Web Application)

Es una aplicación web deliberadamente vulnerable que permite practicar y evaluar técnicas

ofensivas como inyección SQL, CSRF, XSS, entre otras. DVWA es utilizada como entorno de

pruebas en este proyecto para validar la efectividad del módulo de escaneo ofensivo en

condiciones controladas (Kettle, 2020).


14

• Escaneo automatizado

Proceso mediante el cual se utilizan herramientas especializadas para revisar aplicaciones web en

busca de vulnerabilidades sin necesidad de intervención manual constante.

(Stuttard & Pinto, 2011)

• Integridad

Es la garantía de que la información no ha sido alterada de forma no autorizada. Cualquier

modificación inesperada representa una violación de este principio.

(ISO, 2022)

• Inyección SQL (SQLi)

Es una vulnerabilidad que permite insertar comandos SQL maliciosos en los campos de entrada

de una aplicación web, lo que podría permitir la extracción, modificación o eliminación de datos.

El sistema desarrollado en este proyecto automatiza la detección de SQLi en formularios, URLs

y parámetros web utilizando SQLMap y genera un informe técnico del hallazgo (OWASP

Foundation, 2021).

• OWASP ZAP (Zed Attack Proxy)

Herramienta gratuita y de código abierto utilizada para escanear aplicaciones web en busca de

vulnerabilidades. Soporta análisis activo, pasivo e interceptación de tráfico. En este proyecto,

ZAP se usa como motor de detección de CSRF y es invocado automáticamente mediante scripts

en Python dentro del contenedor del sistema (OWASP Foundation, 2021).


15

• Penetration testing (Prueba de penetración)

Técnica utilizada para evaluar la seguridad de sistemas o aplicaciones, mediante simulación de

ataques reales con el fin de descubrir y explotar vulnerabilidades (NIST, 2018; Stuttard & Pinto,

2011).

• Seguridad de la información

Conjunto de prácticas, políticas y tecnologías diseñadas para proteger la confidencialidad,

integridad y disponibilidad de los activos informáticos (ISO, 2022).

• SQLMap

Herramienta de código abierto escrita en Python que automatiza la detección y explotación de

vulnerabilidades de inyección SQL. En este proyecto, SQLMap es invocado desde el backend

del sistema para realizar escaneos ofensivos sobre formularios web, capturando resultados

técnicos como payloads inyectados, parámetros vulnerables y tipo de inyección. (Stuttard &

Pinto, 2011; SQLMap Developers, 2023)

• Token anti-CSRF

Es un valor único generado por el servidor para proteger formularios contra ataques CSRF. Se

espera que este token se incluya y verifique en cada solicitud válida. El módulo de escaneo

desarrollado en este proyecto identifica formularios que no emplean token anti-CSRF, lo cual

representa un incumplimiento de los controles de seguridad recomendados (OWASP Foundation,

2021).
16

• Vulnerabilidad web

Es una debilidad en la lógica, implementación o configuración de una aplicación web que puede

ser explotada por atacantes para comprometer el sistema (OWASP Foundation, 2021).

5.​ Marco Teórico

5.1 Fundamentos de Seguridad Informática

La seguridad de la información se fundamenta en tres principios esenciales: confidencialidad,

integridad y disponibilidad, conocidos comúnmente como la tríada CID (CIA, por sus siglas en

inglés). Estos principios establecen las bases para proteger los activos de información dentro de

cualquier organización.

-​ Confidencialidad: Consiste en garantizar que la información solo sea accesible por

personas autorizadas, protegiéndola de accesos no autorizados o divulgación indebida.

Esto incluye el uso de mecanismos como el cifrado, control de acceso, autenticación y

segmentación de red (ISO, 2022).

-​ Integridad: Asegura que la información se mantenga precisa, completa y libre de

modificaciones no autorizadas, tanto durante su almacenamiento como en su transmisión.

La alteración de registros o parámetros en una base de datos sin autorización compromete

este principio (Stallings & Brown, 2018).

-​ Disponibilidad: Implica que los sistemas y la información estén accesibles y utilizables

por los usuarios autorizados cuando se necesite. Ataques como denegación de servicio

(DoS) atentan directamente contra este principio (Tipton & Krause, 2007).
17

El equilibrio entre estos tres principios permite que los sistemas de información funcionen de

manera confiable, alineando la seguridad con los objetivos estratégicos y operativos de la

organización.

Pruebas de Penetración:

Las pruebas de penetración son procedimientos autorizados que simulan ataques reales contra

sistemas, redes o aplicaciones con el objetivo de identificar vulnerabilidades explotables. Estas

pruebas forman parte fundamental del proceso de evaluación de seguridad ofensiva, ya que

permiten validar la efectividad de los controles implementados y descubrir fallas antes de que

puedan ser aprovechadas por actores maliciosos (OWASP, 2021).

Durante una prueba de penetración, los auditores adoptan el rol de atacantes éticos para explorar

vectores de entrada, como formularios web, APIs, parámetros GET/POST, cabeceras HTTP,

entre otros. Las pruebas pueden incluir técnicas como escaneo de puertos, inyección de código,

explotación de fallas de configuración y ataques de tipo man-in-the-middle.

Este enfoque no solo proporciona evidencia técnica sobre el estado de seguridad del sistema,

sino que también apoya decisiones de gestión de riesgos, fortaleciendo la postura general de

ciberseguridad de la organización (NIST, 2018).

5.2 Inyección SQL

Un ataque de inyección SQL consiste en la inserción o «inyección» de una consulta SQL a través

de los datos de entrada del cliente a la aplicación. Un exploit de inyección SQL exitoso puede

leer datos sensibles de la base de datos, modificar datos de la base de datos

(Insertar/Actualizar/Borrar), ejecutar operaciones de administración en la base de datos (como

apagar el DBMS), recuperar el contenido de un archivo dado presente en el sistema de archivos


18

del DBMS y en algunos casos emitir comandos al sistema operativo. La inyección SQL

corresponde a una técnica de ataque de inyección, en la cual, se inyectan comandos SQL en la

entrada del plano de datos para afectar a la ejecución de comandos SQL predefinidos (OWASP

Foundation 2021).

Tipos de Inyección SQL:

SQLi Clásico: La inyección SQL en banda es el ataque de inyección SQL más común y fácil de

explotar. Se produce cuando un atacante puede usar el mismo canal de comunicación para lanzar

el ataque y obtener resultados.

SQLi Ciega: La inyección SQL inferencial, a diferencia de la SQLi en banda, puede tardar más

en ser explotada por un atacante; sin embargo, es tan peligrosa como cualquier otra forma de

inyección SQL. En un ataque SQLi inferencial, no se transfieren datos a través de la aplicación

web y el atacante no podría ver el resultado de un ataque en banda (razón por la cual estos

ataques se conocen comúnmente como “ataques de inyección SQL ciega"). En cambio, un

atacante puede reconstruir la estructura de la base de datos mediante el envío de cargas útiles,

observando la respuesta de la aplicación web y el comportamiento resultante del servidor de base

de datos.

SQLi Ciego basado en tiempo: La inyección SQL basada en tiempo es una técnica de inyección

SQL inferencial que se basa en el envío de una consulta SQL a la base de datos, lo que la obliga

a esperar un tiempo específico (en segundos) antes de responder. El tiempo de respuesta indica al

atacante si el resultado de la consulta es VERDADERO o FALSO (OWASP Foundation, 2021).


19

Consecuencias de la Inyección SQL:​

Según Stuttard y Pinto (2011), los ataques SQLi pueden tener consecuencias críticas como el

acceso al sistema operativo o la lectura de archivos del servidor, dependiendo de la configuración

de seguridad del DBMS. Algunas otras consecuencias más relevantes incluyen:

-​ Acceso no autorizado a información sensible: Como credenciales, datos personales o

financieros.

-​ Modificación o destrucción de datos: Alteración, inserción o eliminación de registros

críticos.

-​ Interrupción de servicios: Posible inestabilidad en la base de datos o caída del sistema.

-​ Obtención de estructura interna del sistema: A través de errores, consultas de unión

(`UNION SELECT`) o respuestas diferenciales.

5.3 CSRF

Según Shahriar & Zulkernine, (2010), CSRF es una técnica de ataque en el que un atacante se

hace pasar por un usuario legítimo y envía una solicitud maliciosa en nombre del usuario

legítimo. La solicitud es completamente legal para el servidor web, pero completa las

operaciones maliciosas que el atacante espera, como modificar la contraseña de la cuenta del

usuario, añadir un administrador del sistema, incluso comprar bienes, transferencia en línea, etc.

Técnicas de ataque de CSRF

-​ CSRF Reflejado (Reflected): La carga maliciosa es enviada mediante una URL o

formulario, y es procesada inmediatamente en la respuesta del servidor. Este vector de

ataque requiere la interacción del usuario, quien debe ejecutar una acción que active la

solicitud manipulada por el atacante.


20

-​ CSRF Almacenado (Stored): La carga maliciosa es guardada por el servidor (por

ejemplo, en un campo de comentario) y luego ejecutada cuando un usuario legítimo

accede a la página afectada.

-​ CSRF basado en sesión (Session-based): Explota el hecho de que el navegador del

usuario almacena automáticamente cookies de sesión válidas, las cuales se reutilizan

automáticamente en todas las peticiones, incluso sin que el usuario lo note (Owasp

Foundation 2021).

A diferencia de otras vulnerabilidades, los ataques CSRF no alteran el contenido de las

respuestas del servidor ni generan errores visibles. Esto hace difícil detectarlos a través de

escaneos automáticos o análisis de tráfico. Además, al no requerir interacción directa del usuario

ni envío explícito de datos visibles, los ataques CSRF suelen ser silenciosos y difíciles de

rastrear, especialmente si no se implementan tokens o validaciones adecuadas (Sravani, N., &

Raju, O. S. 2024).

Técnicas de Mitigación del CSRF

Según Owasp Foundations (2021), Los ataques CSRF pueden ser mitigados mediante

mecanismos como los siguientes:

-​ Tokens anti-CSRF: El servidor genera un token único por sesión que debe ser enviado

en cada formulario; si falta o es incorrecto, la petición es rechazada.

-​ Cookies con atributo SameSite: Restringen el envío automático de cookies entre sitios

cruzados, impidiendo que un sitio externo pueda reutilizar una sesión autenticada.

-​ Validación del encabezado Referer u Origin: El servidor verifica que la solicitud

proviene del mismo dominio o uno de confianza antes de ejecutar acciones sensibles.
21

5.4 Norma ISO 27001

La ISO/IEC 27001:2022 proporciona los requisitos para establecer, implementar, mantener y

mejorar continuamente un sistema de gestión de seguridad de la información (ISO, 2022a). Para

su implementación, la norma define un conjunto de requisitos y controles estándar en cualquier

organización, sujeto a revisión de aplicabilidad de acuerdo con el contexto de cada organización

(Secureframe, 2025a). Los requisitos del SGSI se organizan de acuerdo a una serie de cláusulas

(ISO, 2022a):

● Cláusula 4: Contexto de la organización: Esta cláusula establece la necesidad de comprender

tanto el entorno interno como externo de la organización, así como identificar las necesidades y

expectativas de las partes interesadas. Además, se define el alcance del SGSI, en función de los

límites organizacionales y del entorno en el que opera.

● Cláusula 5: Liderazgo: Se centra en el compromiso activo de la alta dirección con respecto al

SGSI. Esto incluye el establecimiento de una política de seguridad de la información, la

definición de roles, responsabilidades y autoridades, y el fomento de una cultura de seguridad

alineada con los objetivos estratégicos de la organización.

● Cláusula 6: Planificación: Aborda la necesidad de identificar y tratar los riesgos y

oportunidades relacionados con la seguridad de la información. Asimismo, contempla la

formulación de objetivos de seguridad y la planificación de acciones necesarias para alcanzar

dichos objetivos, incluyendo los cambios requeridos dentro del SGSI.

● Cláusula 7: Soporte: Hace referencia a los recursos necesarios para establecer, implementar,

mantener y mejorar el SGSI. Se incluyen aspectos como la competencia del personal, la

concienciación, la comunicación efectiva y la gestión de la información documentada.


22

● Cláusula 8: Operación: Describe la planificación y el control operacional requeridos para

cumplir con los requisitos del SGSI. Incluye la evaluación de riesgos relacionados con la

seguridad de la información y el tratamiento adecuado de dichos riesgos, conforme a los criterios

establecidos.

● Cláusula 9: Evaluación del desempeño: Establece los mecanismos para realizar el

seguimiento, medición, análisis y evaluación del SGSI. Asimismo, contempla la realización de

auditorías internas y revisiones por la dirección para asegurar la eficacia del sistema.

● Cláusula 10: Mejora: Enfocada en la gestión de no conformidades y en la implementación de

acciones correctivas, con el objetivo de impulsar la mejora continua del SGSI, garantizando su

evolución frente a los cambios del entorno y las lecciones aprendidas.

La norma ISO/IEC 27001:2022 introduce una estructura actualizada de controles de seguridad en

su Anexo A, reorganizando y modernizando el conjunto previamente establecido en la versión de

2013. Esta actualización agrupa los controles en cuatro dominios: organizacionales, de personas,

físicos y tecnológicos, con el objetivo de mejorar la gestión de riesgos en función de las

amenazas contemporáneas. En el marco del presente proyecto, enfocado en la detección de

vulnerabilidades web como inyección SQL y CSRF, resultan especialmente relevantes los

siguientes controles tecnológicos:

A.8.25 – Ciclo de vida de desarrollo seguro​

Este control establece que las actividades de desarrollo deben seguir principios de seguridad

desde su concepción hasta su implementación y mantenimiento. En este proyecto, se promueve

la identificación temprana de fallas en entornos de prueba mediante el uso automatizado de

herramientas de detección de vulnerabilidades. El desarrollo del módulo de escaneo está


23

orientado a integrarse dentro del flujo de desarrollo, permitiendo auditorías de seguridad

ofensiva durante las fases previas al despliegue.

A.8.26 – Requisitos de seguridad de la aplicación​

Este control indica que las aplicaciones deben cumplir con requisitos explícitos de seguridad

definidos desde las primeras fases del desarrollo. El módulo propuesto establece como

requerimiento fundamental que toda aplicación web evaluada debe someterse a pruebas

sistemáticas contra vulnerabilidades críticas como SQLi y CSRF. Esta verificación no solo es

técnica, sino que los resultados son traducidos mediante un modelo de lenguaje (LLM) en un

informe comprensible, alineando el resultado con políticas de seguridad de alto nivel.

A.8.28 – Codificación segura​

Este control promueve que las organizaciones adopten prácticas de programación que eviten

errores comunes de seguridad, como la manipulación insegura de entradas. Los hallazgos

generados por las herramientas de escaneo permiten inferir qué patrones de codificación insegura

podrían estar presentes (por ejemplo, concatenación de cadenas SQL o ausencia de tokens

anti-CSRF). Esto proporciona retroalimentación valiosa a los desarrolladores para mejorar la

calidad del código desde una perspectiva de seguridad.

A.8.29 – Pruebas de seguridad en desarrollo y aceptación​

Este control enfatiza la necesidad de realizar pruebas de seguridad antes de aceptar una

aplicación en producción. La solución desarrollada ejecuta pruebas ofensivas controladas

mediante herramientas open source, documentando los resultados técnicos e interpretándolos de

forma automatizada bajo los lineamientos de la norma. Esto asegura que cualquier despliegue se

base en evidencia objetiva del cumplimiento (o incumplimiento) de requisitos de seguridad

definidos por la organización.


24

Control Descripción​ Relación con el proyecto


ISO/IEC
27001:2022​

A.8.25​ Ciclo de vida de desarrollo seguro Escaneo automatizado


durante desarrollo

A.8.26​ Requisitos de seguridad de la aplicación Verificación contra SQLi y


CSRF

A.8.28​ Codificación segura Análisis de patrones


inseguros vía escaneo

A.8.29​ Pruebas de seguridad en desarrollo y Pruebas ofensivas antes de


aceptación​ despliegue
Tabla 1. Relación Controles con el Proyecto. Fuente Propia (2025)
25

6.​ Estado del Arte

Relevancia de la Detección de Vulnerabilidades en el Marco ISO 27001

El progreso continuo de las aplicaciones web y su implementación a gran escala en contextos

corporativos han expandido el campo de ataque, dejando a las organizaciones vulnerables a

situaciones críticas. Una de las más sobresalientes es la inyección SQL (SQLi), que ha sido

incluida en el Top Ten de OWASP desde 2021, representando una de las amenazas más

aprovechadas por individuos malintencionados (OWASP Foundation, 2021).

Además de esta clase de vulnerabilidad que pone en riesgo directamente la integridad de las

bases de datos, hay otras amenazas que impactan la lógica de sesión y los procedimientos de

autenticación, tal como sucede con la falsificación de solicitudes en sitios cruzados (CSRF). A

pesar de que en la actualidad no figura como una categoría autónoma en OWASP, hoy forma

parte del control de acceso interrumpido (Broken Access Control) y se encuentra incluida en el

listado Top 25 de debilidades comunes más peligrosas de CWE (MITRE, 2025).

A pesar de que están documentadas desde hace más de diez años, estas vulnerabilidades siguen

presentes en aplicaciones actuales debido a malas prácticas de desarrollo, validaciones

deficientes o un entendimiento restringido de los controles de seguridad. El interés en tratar este

asunto proviene de la exigencia de proporcionar a los auditores de seguridad métodos más

eficaces, automatizados y exactos para identificar estas amenazas sin necesidad de su

explotación directa, asegurando de esta manera un análisis estricto pero seguro.

El problema se detectó en el análisis de prácticas de auditoría habituales, en el que se notó que, a

pesar de que hay herramientas eficaces para identificar vulnerabilidades, frecuentemente los
26

resultados no están relacionados con el código fuente ni se incorporan en procesos regulados

como los requeridos por ISO/IEC 27001. Esta desconexión puede dificultar la toma de

decisiones en seguridad, especialmente cuando el análisis no permite rastrear el origen específico

del fallo.

En este contexto, se identificaron y priorizaron varios ejes temáticos fundamentales para la

revisión teórica: los fundamentos técnicos de las inyecciones SQL y los ataques CSRF, la

clasificación de sus vectores de ataque, las técnicas actuales de detección automatizada (como

SQLMap y OWASP ZAP), el análisis estático del código fuente, y la aplicación de normativas

como la ISO/IEC 27001:2022 y sus controles de seguridad relevantes. Estos temas constituyen la

base conceptual sobre la cual se sustenta la construcción del módulo de detección integrado

propuesto.

La elección de este tema resulta especialmente relevante en el contexto de auditorías de

seguridad de la información, donde se busca fortalecer las capacidades de detección sin

comprometer la estabilidad de los sistemas. Un enfoque automatizado, trazable y

normativamente alineado permite a los auditores actuar con mayor precisión y coherencia frente

a las amenazas actuales, contribuyendo al fortalecimiento de los procesos de seguridad ofensiva

y cumplimiento regulatorio.

Análisis de Vulnerabilidades Críticas: SQLi y CSRF

Las bases de datos en aplicaciones web constituyen uno de los pilares fundamentales para el

almacenamiento y gestión de información crítica, como datos de usuarios, credenciales,

historiales y transacciones. Según Wolf (2022), una base de datos es una recopilación organizada

de información estructurada, controlada por un sistema de gestión de bases de datos (Database


27

Management System, DBMS) que permite su consulta eficiente. En aplicaciones web modernas,

los sistemas de bases de datos relacionales son comúnmente utilizados y se estructuran mediante

esquemas con múltiples tablas.

En este contexto, el análisis de requisitos adquiere un papel esencial para definir qué datos serán

necesarios y cómo se organizarán. Este análisis permite modelar el esquema de la base de datos

considerando principios como la eliminación de redundancia, fundamental para garantizar

integridad y consistencia. Si un dato se almacena en múltiples ubicaciones (como dos tablas o

columnas), cualquier modificación debe reflejarse en todas sus copias para evitar discrepancias.

Una mala planificación en esta fase puede acarrear problemas tanto de funcionamiento como de

seguridad.

No obstante, más allá del diseño lógico, una gestión deficiente de la comunicación entre el sitio

web y su base de datos puede representar una amenaza de seguridad significativa. La falta de

validación de entradas, la concatenación insegura de comandos SQL y la ausencia de

mecanismos de control robustos pueden exponer a la aplicación a vulnerabilidades como la

inyección SQL, una de las técnicas más utilizadas por los atacantes para acceder, modificar o

destruir datos sensibles (OWASP Foundation, s.f.).

Este tipo de fallas en el desarrollo de aplicaciones web representa una categoría distinta de

vulnerabilidades, diferente a aquellas centradas en la infraestructura de red o los sistemas

operativos. Dado que las aplicaciones en línea están diseñadas para ser accedidas por múltiples

usuarios a través de entornos conectados, su alto nivel de exposición se convierte en una

oportunidad para actores maliciosos. A través de estas debilidades, es posible que los atacantes

obtengan acceso no autorizado a sistemas, procesos y datos críticos de la organización.

Alrededor del 42% de los sitios web se ven afectados por ciberdelitos (Muzammil et al., 2024).
28

Esta estrecha dependencia entre las aplicaciones web y sus bases de datos hace que cualquier

brecha en los mecanismos de validación o gestión de consultas pueda convertirse en una puerta

de entrada para ataques externos. Uno de los ejemplos más representativos de esta problemática

es la anteriormente mencionada, la inyección SQL, una técnica que explota vulnerabilidades en

la comunicación entre el sitio web y la base de datos para ejecutar comandos maliciosos. La

criticidad de este tipo de ataques ha sido ampliamente documentada por organismos como

OWASP, que lo mantiene consistentemente en los primeros puestos de sus listados de amenazas

más graves para aplicaciones web (OWASP Foundation, s.f.).

No obstante, las amenazas a la seguridad de las aplicaciones web no se limitan exclusivamente a

aquellas que buscan explotar directamente las bases de datos mediante comandos maliciosos,

como es el caso de la inyección SQL. Existen otros vectores de ataque igualmente peligrosos

que, si bien no manipulan directamente las consultas a la base de datos, aprovechan la lógica de

autenticación y confianza del navegador del usuario para ejecutar acciones no autorizadas. Uno

de los ataques más relevantes en esta categoría es la falsificación de petición en sitios cruzados

(Cross-Site Request Forgery o CSRF), el cual, referenciado por Fortinet, compromete la

integridad de las operaciones al inducir a un usuario legítimamente autenticado a enviar

solicitudes no intencionadas al servidor, sin su consentimiento. Este tipo de vulnerabilidad pone

en evidencia una dimensión diferente del riesgo, centrada en la manipulación del contexto de

sesión y la interacción usuario-aplicación.

Tanto la inyección SQL como el ataque CSRF representan amenazas críticas debido a su

capacidad para comprometer la seguridad, integridad y disponibilidad de los sistemas web.

Aunque se originan desde mecanismos distintos (una desde la manipulación directa de consultas

a la base de datos y otra desde el abuso del contexto de autenticación del usuario), ambos
29

comparten la característica de aprovechar deficiencias en la validación de entrada y en la lógica

de la aplicación. Comprender los factores que permiten su aparición, así como los riesgos que

acarrean en entornos empresariales, es esencial para establecer mecanismos efectivos de

detección y mitigación. En este sentido, el presente apartado explora con mayor profundidad las

características técnicas, los puntos de explotación y el impacto potencial de estas

vulnerabilidades.

Inyección SQLi

La Inyección SQL (SQLi) se mantiene como una de las amenazas más significativas y

persistentes en el ámbito de la ciberseguridad web. Ha sido incluida consistentemente en el Top

Ten de OWASP desde 2021, lo que la posiciona como una de las vulnerabilidades más

explotadas por actores malintencionados (Enhancing SQL Injection Detection And Prevention

Using Generative Models, s. f.).

Según Abdullayev y Chauhan (2023), las aplicaciones web que dependen de bases de datos son

especialmente vulnerables a los ataques de inyección SQL. La información y los datos

confidenciales guardados en las bases de datos de estas aplicaciones están en peligro. Un

atacante compromete una aplicación insertando código malicioso en ella y utilizándolo para

robar datos. Uno de sus métodos de ataque es el siguiente:

La aplicación Web tiene la siguiente validación para el formulario de login de su sitio web:

SELECT * FROM items

WHERE owner =

AND itemname = ;
30

Sin embargo, como la consulta se construye dinámicamente concatenando una cadena de

consulta base constante y una cadena introducida por el usuario, la consulta sólo se comporta

correctamente si (itemName) no contiene un carácter de comilla simple. Si un atacante con el

nombre de usuario wiley introduce la cadena "nombre' OR 'a'='a" para (itemName), entonces la

consulta se convierte en la siguiente:

SELECT * FROM items

WHERE owner = 'wiley'

AND itemname = 'name' OR 'a'='a';

La adición de la condición OR 'a'='a' hace que la cláusula where se evalúe siempre como

verdadera, por lo que la consulta se convierte en lógicamente equivalente a la consulta mucho

más simple:

SELECT * FROM items;

Esta simplificación de la consulta permite al atacante eludir el requisito de que la consulta sólo

devuelva elementos que pertenezcan al usuario autenticado; la consulta ahora devuelve todas las

entradas almacenadas en la tabla items, independientemente de su propietario especificado.

Si bien esto puede parecer un método oscuro para atacar un sitio web, usted debe entender que

muchos sitios web, a menudo propiedad de empresas famosas y ricamente valoradas, han sido

presa de ataques devastadores muy similares al descrito aquí (Ledin, 2022), si bien este tipo de

ataque puede parecer poco sofisticado, numerosos sitios web empresariales de alto perfil han

sido comprometidos mediante técnicas similares.


31

La Tabla 2 muestra una lista de algunas empresas afectadas y los efectos adversos de los ataques

de inyección SQL.

Organizaciones Resultados Fecha

Catholic United Financial Los datos personales de Octubre 2017


130.000 usuarios
(Arden Hills) expuestos

WordPress Statistics Plugin Se crearon loopholes en Julio 2017

plugin de WordPress por

segunda vez

Comisión Electoral de Se crearon loopholes en las Diciembre 2016

EEUU máquinas de votación

Asamblea Nacional de Se robaron los registros de Diciembre 2016

Ecuador unos 930 usuarios

Ubuntu Linux Más de 2 millones de datos de Julio 2016

usuarios expuestos

LG Smartphones La modificación del texto era Mayo 2016

posible

Empresas afectadas por Inyección SQL. Basado en Okesola (2023)

Como se puede apreciar, a pesar de su amplio antecedente con grandes empresas y del

reconocimiento como una de las vulnerabilidades más críticas por organismos como OWASP, la

inyección SQL continúa siendo explotada hoy en dia. Esto se debe a una serie de factores

estructurales y prácticos que afectan al ciclo de desarrollo de software, a las prácticas

empresariales y a las limitaciones tecnológicas tales como:


32

1.​ Desarrollo inseguro y prácticas deficientes de codificación

Muchos desarrolladores siguen utilizando métodos inseguros para construir consultas SQL,

como la concatenación directa de cadenas con entradas de usuario. Esta práctica, aunque sencilla

de implementar, deja expuesta a la aplicación a manipulaciones maliciosas. La presión por

entregar funcionalidades rápidamente a menudo conduce a descuidar aspectos clave como la

validación o la parametrización adecuada.

2.​ Falta de capacitación técnica en seguridad de aplicaciones

En múltiples equipos de desarrollo, especialmente en entornos donde no se cuenta con expertos

en ciberseguridad, los desarrolladores no están formados en prácticas seguras de programación.

El desconocimiento de vulnerabilidades de ataques web y de las formas correctas de prevenirlas

(como el uso de consultas preparadas o ORM seguros) sigue siendo una causa crítica.

3.​ Complejidad de las aplicaciones modernas

A medida que las aplicaciones se vuelven más dinámicas, interactivas y distribuidas, el número

de puntos de entrada para datos del usuario aumenta significativamente (parámetros GET, POST,

headers, cookies, etc.). Esta expansión de la superficie de ataque hace que sea más difícil

garantizar una validación y control adecuados en todos los puntos.

4.​ Dependencia de librerías de terceros inseguras

En algunos casos, la vulnerabilidad no se encuentra en el código escrito directamente por el

equipo de desarrollo, sino en bibliotecas externas o dependencias que manejan consultas SQL sin

protección adecuada, extendiendo el riesgo a componentes que los desarrolladores no controlan

directamente.
33

Este tipo de vulnerabilidad pone en evidencia una dimensión diferente del riesgo, centrada en la

manipulación del contexto de sesión y la interacción usuario-aplicación.

Frente a este panorama, surge la necesidad de desarrollar soluciones más sofisticadas que

superen las limitaciones de los métodos tradicionales de detección, los cuales se basan

principalmente en reglas estáticas y firmas conocidas. El presente proyecto busca responder a

esta necesidad mediante la implementación de un módulo de seguridad ofensiva que integra

técnicas de Machine Learning con el uso de APIs de herramientas especializadas como SQLMap

(para la detección de inyecciones SQL). Este enfoque híbrido tiene como objetivo no solo

identificar vulnerabilidades existentes, sino también adaptarse proactivamente a patrones de

ataque emergentes, mejorando la capacidad de defensa de los sistemas ante entornos cibernéticos

cada vez más dinámicos y sofisticados.

Falsificación de Solicitudes en Sitios Cruzados (CSRF)


Uno de los ataques más relevantes en esta categoría es la falsificación de petición en sitios

cruzados (Cross-Site Request Forgery o CSRF), el cual, referenciado por Fortinet, compromete

la integridad de las operaciones al inducir a un usuario legítimamente autenticado a enviar

solicitudes no intencionadas al servidor, sin su consentimiento. Este tipo de vulnerabilidad pone

en evidencia una dimensión diferente del riesgo, centrada en la manipulación del contexto de

sesión y la interacción usuario-aplicación.


34

En este mismo contexto de amenazas que aprovechan la confianza implícita entre el usuario y la

aplicación, la falsificación de solicitudes entre sitios (CSRF) representa otro vector de ataque

relevante. Según R. Auger (2010), CSRF es un ataque cibernético que engaña al usuario para que

envíe una solicitud maliciosa, la cual ejecuta acciones no deseadas en una aplicación web en la

que el usuario está autenticado actualmente. Este tipo de ataque no requiere romper los

mecanismos de autenticación, sino que se basa en explotar la confianza que la aplicación tiene en

la sesión del usuario, permitiendo al atacante realizar acciones como cambiar contraseñas,

realizar transferencias o modificar datos sensibles sin que el usuario sea consciente.

La mayoría de sitios web al procesar alguna solicitud del navegador incluyen automáticamente

credenciales asociadas, como por ejemplo la cookie de inicio de sesión, la dirección IP o las

credenciales de windows, esto junto con una sesión activa es lo que aprovecha este tipo de

ataque para que las peticiones fraudulentas parezcan una solicitud legítima y pase desapercibida.

Para que la vulnerabilidad CSRF esté presente, es necesario tener en cuenta:

●​ El comportamiento del navegador web con respecto al manejo de información

relacionada con la sesión, como cookies e información de autenticación HTTP.

●​ El conocimiento de un atacante de las URL, las solicitudes o la funcionalidad de una

aplicación web válida.

●​ La gestión de la sesión de la aplicación basándose únicamente en la información

conocida por el navegador.

Además de esto, la existencia de etiquetas HTML permite el acceso inmediato a un recurso

HTTP, lo cual facilita el desarrollo del ataque.


35

Una representación gráfica al respecto se encuentra en la figura 1:

Figura 1. Diagrama del funcionamiento del ataque CSRF. Fuente Alexander y Paola (2025)

Para considerar un sitio vulnerable, podría tener las siguientes particularidades:

Ejecutar solicitudes HTTP mediante el procedimiento GET para recopilar datos fundamentales

como datos de usuario, roles de usuario, información de inicio y finalización de sesión. Un caso

evidente es. [Link]/getUser?=1234. Este tipo de solicitudes es la más frecuente.

A través del siguiente código es posible adquirir, alterar, generar o eliminar esta información.

Además, esta vulnerabilidad no se resuelve solo al cambiar el método HTTP a POST, aunque

contribuye a su mitigación más que GET. Esto se debe a que se puede llevar a cabo lo siguiente,

que es bastante similar a lo previamente detallado.


36

Figura 2. Falsificación CSRF con método POST. Fuente: Alexander y Paola (2025)

<img src=’[Link] mediante esta

simple solicitud a través de una etiqueta img de html, se llevó a cabo una transmisión de una

cuenta a otra sin que el usuario se desahogue en lo sucedido.

Otros tipos de ataques de CSRF se mencionan a continuación

Ataques CSRF de inicio de sesión (login CSRF): Es un tipo de ataque en el que el atacante

logra que la víctima inicie sesión en una cuenta controlada por el atacante, sin que la víctima lo

sepa.

Como se ejecuta:

●​ El atacante crea una cuenta falsa en el sitio web objetivo.

●​ Luego hace que la víctima (que no ha iniciado sesión todavía) envíe, sin saberlo, un

formulario de inicio de sesión con las credenciales del atacante.

●​ La víctima queda logueada con esa cuenta, y el atacante puede rastrear su actividad o

robar información que la víctima genere en esa sesión.


37

Ataques CSRF almacenados: Es cuando el ataque CSRF se almacena en el servidor, y luego se

ejecuta cada vez que un usuario accede a un recurso vulnerable.

Como se ejecuta:

●​ Similar a un ataque XSS (Cross Site Scripting) almacenado, pero en este caso, el código

malicioso está diseñado para enviar solicitudes CSRF.

●​ El atacante logra que un formulario o script con una petición maliciosa quede guardado

en la base de datos.

●​ Cada vez que un administrador u otro usuario accede a esa sección, su navegador ejecuta

automáticamente la petición maliciosa.

Ataques CSRF de autenticación: Ataques dirigidos a modificar datos relacionados con la

autenticación del usuario, como cambiar la contraseña, el correo electrónico o activar métodos de

autenticación.

Como se ejecuta:

●​ La víctima inicia sesión normalmente.

●​ Luego visita un sitio controlado por el atacante, que lanza una petición HTTP maliciosa

para cambiar la configuración de autenticación (por ejemplo, asignar un nuevo correo o

cambiar la contraseña).

●​ Si no hay protección CSRF en estas funciones críticas, el cambio se ejecuta con éxito.

Ataques CSRF de transacciones: Segun H. Shahriar and M. Zulkernine (2010), Este tipo de

ataque apunta a acciones sensibles con impacto real, como transferencias bancarias, pagos,

compras, etc.
38

Como se ejecuta:

●​ El atacante engaña al usuario para que envíe una solicitud que genera una acción como

una transferencia de dinero, usando la sesión activa del usuario.

●​ El navegador de la víctima incluye automáticamente la cookie de sesión, por lo que el

servidor interpreta que la acción fue legítima.

A diferencia de otras vulnerabilidades ampliamente documentadas como la inyección SQL, los

casos documentados de ataques exitosos por CSRF son considerablemente más escasos en la

literatura académica y en reportes técnicos. Esto puede deberse a que este tipo de ataque no deja

rastros evidentes en los registros del servidor o es confundido con fallas de autenticación.

Además, muchas organizaciones evitan publicar incidentes de este tipo por razones

reputacionales, lo que dificulta la sistematización de evidencia empírica. Esta escasez de casos

reportados constituye un vacío importante en el campo de la ciberseguridad, especialmente en

entornos empresariales, y representa un reto para el desarrollo de mecanismos de detección

automatizada.

A pesar de ser una vulnerabilidad conocida desde hace más de dos décadas, CSRF sigue presente

en muchas aplicaciones web modernas, lo que refleja una serie de factores estructurales y

culturales dentro del desarrollo de software. Una de las principales razones de su prevalencia es

la falta de implementación sistemática de medidas de mitigación, como tokens CSRF únicos,

encabezados SameSite en las cookies o validación estricta del origen. Muchos desarrolladores

subestiman su impacto o consideran que otras protecciones, como los firewalls de aplicaciones

web (WAF), son suficientes, cuando en realidad CSRF explota la lógica de sesión del

navegador, no necesariamente el tráfico sospechoso.


39

Otro factor crítico es la complejidad creciente de las aplicaciones modernas, especialmente

aquellas basadas en frameworks SPA (Single Page Applications) que introducen múltiples puntos

de interacción con el servidor sin una estructura clara de seguridad por cada endpoint.

Este conjunto de factores permite que CSRF siga siendo una amenaza vigente en el panorama de

la ciberseguridad, especialmente en organizaciones que aún no adoptan un enfoque de desarrollo

seguro desde el diseño (security by design) o pruebas regulares de seguridad ofensiva.

Herramientas para la detección automatizada

Frente a este panorama, surge la necesidad de desarrollar soluciones más sofisticadas que

superen las limitaciones de los métodos tradicionales de detección, los cuales se basan

principalmente en reglas estáticas y firmas conocidas. El presente proyecto busca responder a

esta necesidad mediante la implementación de un módulo de seguridad ofensiva que integra

técnicas de Machine Learning con el uso de APIs de herramientas especializadas como SQLMap

(para la detección de inyecciones SQL) y OWASP ZAP (para vulnerabilidades como CSRF).

Este enfoque híbrido tiene como objetivo no solo identificar vulnerabilidades existentes, sino

también adaptarse proactivamente a patrones de ataque emergentes, mejorando la capacidad de

defensa de los sistemas ante entornos cibernéticos cada vez más dinámicos y sofisticados.

SQLMap​

Es una herramienta de código abierto ampliamente reconocida en el ámbito de la seguridad

ofensiva, diseñada para automatizar el proceso de detección y explotación de fallos de inyección

SQL en aplicaciones web y bases de datos. Su capacidad para automatizar tareas que de otro

modo serían tediosas y consumiría mucho tiempo la convierte en un componente fundamental

para las pruebas de penetración.


40

Puede descargar las últimas versiones desde el repositorio oficial de GitHub en

[Link] o de su sitio web oficial en [Link]

Según la pagina oficial de Owasp, para descargar SQLMap, puedes clonar el repositorio Git

ejecutando el siguiente comando. Asegúrese de que Git está instalado en tu máquina antes de

proceder con la descarga:

git clone --depth 1 [Link]

sqlmap-dev

SQLMap es compatible con las versiones 2.6, 2.7 y 3.x de Python en cualquier plataforma.

Para escanear un sitio web en busca de vulnerabilidades de inyección SQL, utilice el siguiente

comando:

sqlmap -u <target_url> --dbs

Comandos Inyección SQL

Existen múltiples comandos para la detección de inyección SQL, aqui muestro algunos

comandos principales para ello:

Escenario Comando

Detección básica de SQLi​ sqlmap -u "URL" --batch

Formularios POST​ sqlmap -u "URL" --data

"parametros"

Cookies sqlmap -u "URL"

--cookie="sessionid=abc123"
41

Cabeceras HTTP​ sqlmap -u "URL"

--headers="User-Agent:

sqlmap-test"

Análisis profundo​ sqlmap -u "URL" --level=5

--risk=3

Listar bases de datos​ sqlmap -u "URL" --dbs

Extraer tablas​ sqlmap -u "URL" --tables -D

nombre_base

Extraer columnas​ sqlmap -u "URL" --columns -D

nombre_base -T nombre_tabla

Extraer datos​ sqlmap -u "URL" --dump -D

nombre_base -T nombre_tabla

Blind SQL Injection (Boolean-Based) sqlmap -u "URL" --technique=B

Tabla 1. Comandos de SQLMap para análisis de Inyección SQL Tomado de OWASP

Foundation. (n.d.)

Dependiendo de cómo se ejecuten los comandos, nos pueden arrojar resultados en diferentes

formatos como: .html, .csv, .json, .txt o salida en consola en texto plano.

OWASP Zap

El OWASP Zed Attack Proxy (ZAP) es una herramienta de código abierto desarrollada por la

Open Web Application Security Project (OWASP), cuyo propósito principal es asistir en la

identificación de vulnerabilidades en aplicaciones web durante pruebas de penetración o análisis

de seguridad. Su arquitectura modular y su facilidad de personalización la han convertido en una


42

de las soluciones más utilizadas por profesionales de ciberseguridad a nivel global (Jakobsson &

Häggström, 2022).

ZAP opera bajo el paradigma de caja negra (black-box testing), lo cual significa que no requiere

acceso al código fuente de la aplicación analizada. En su funcionamiento básico, realiza un

proceso compuesto por tres módulos fundamentales: un crawler (araña web) para recorrer los

enlaces y rutas disponibles, un fuzzer para enviar cargas maliciosas en los puntos de entrada

detectados, y un analizador que interpreta las respuestas del servidor para identificar patrones

asociados a vulnerabilidades conocidas (Jakobsson & Häggström, 2022).

Una de las ventajas clave de ZAP es su capacidad de automatización mediante el uso de escaneos

pasivos y activos, así como la posibilidad de integrar scripts personalizados y políticas

específicas de detección, como fue demostrado en el estudio de Alazmi y Conte de Leon (2023),

donde se mejoró sustancialmente su desempeño para identificar variantes de inyección SQL

(Error-based, Union-based, Time-based blind y Bypass Authentication).

A pesar de que su enfoque inicial ha sido identificar vulnerabilidades como la inyección SQL,

OWASP ZAP también ha incluido funcionalidades valiosas para identificar ataques CSRF

(Cross-Site Request Forgery). En estas circunstancias, ZAP tiene la capacidad de interceptar

peticiones HTTP y verificar si poseen tokens anti-CSRF válidos, además de comprobar si hay

comportamientos vulnerables que posibiliten la realización de acciones sin autorización en

representación de un usuario verificado.

El estudio de Jakobsson y Häggström (2022) resalta que, a pesar de sus limitaciones iniciales

frente a aplicaciones de una sola página (SPA), la flexibilidad de ZAP permite extender sus

capacidades mediante el uso de motores de análisis adaptados y configuraciones específicas.


43

Esto ha facilitado su uso en entornos más modernos, permitiendo analizar aplicaciones complejas

y gestionar sesiones, cookies y encabezados de forma automatizada.

El estudio de Jakobsson y Häggström (2022) subraya que, pese a sus restricciones iniciales para

aplicaciones de una única página (SPA), la flexibilidad de ZAP posibilita ampliar sus habilidades

a través de la implementación de motores de análisis personalizados y configuraciones concretas.

Esto ha simplificado su utilización en contextos más actuales, posibilitando el análisis de

aplicaciones complejas y la administración automatizada de sesiones, cookies y encabezados.

En el marco del presente proyecto, OWASP ZAP se integra como uno de los componentes

esenciales para la detección automatizada de vulnerabilidades de tipo CSRF, operando en

conjunto con otras herramientas como SQLMap. Su uso no solo aporta en la identificación

técnica de las vulnerabilidades, sino que también genera evidencia técnica útil que puede ser

interpretada por modelos de IA para producir informes comprensibles alineados con la norma

ISO/IEC 27001:2022.

Enfoques y Técnicas de Detección Existentes

La evolución de la detección de ataques de inyección SQL ha pasado de técnicas simples de

coincidencia de patrones a métodos más sofisticados que incorporan análisis estático, monitoreo

dinámico en tiempo de ejecución y aprendizaje automático:


44

Enfoques Tradicionales: Análisis Estático y Dinámico

El análisis dinámico surge como un complemento fundamental, ya que permite el monitoreo del

comportamiento de una aplicación web durante su ejecución para detectar ataques de inyección

SQL. Este enfoque se centra en observar cómo la aplicación procesa las entradas y cómo

interactúa con la base de datos en tiempo real. Las herramientas de análisis dinámico suelen

interceptar e inspeccionar las consultas SQL generadas por la aplicación, buscando anomalías o

patrones sospechosos que puedan indicar un ataque de inyección.

Una de las principales fortalezas del análisis dinámico es su capacidad para detectar

vulnerabilidades que solo se manifiestan en tiempo de ejecución, proporcionando una evaluación

más precisa de las amenazas en el mundo real. Un algoritmo simple para el análisis dinámico

implica extraer métodos GET y POST sospechosos, inyectar sentencias SQL vulnerables (como

una comilla simple) y analizar la respuesta del servidor web en busca de vulnerabilidades. Este

enfoque ha demostrado un buen rendimiento en la detección de vulnerabilidades SQLi en sitios

web populares en línea.

Aunque las limitaciones del análisis dinámico de forma aislada no se detallan explícitamente en

la fuente, generalmente puede pasar por alto vulnerabilidades que no se activan durante la fase de

prueba (es decir, cobertura de prueba limitada). También puede ser intensivo en recursos y puede

introducir latencia. La capacidad del análisis dinámico para detectar vulnerabilidades que solo

aparecen en tiempo de ejecución y proporcionar una evaluación más precisa de las amenazas

reales es fundamental.
45

Detección de SQLi basada en Aprendizaje Automático (ML)

Ahmed y Uddin (2020) presentaron un enfoque avanzado de detección de SQLI que aprovecha la

PNL integrada con un marco de aprendizaje conjunto basado en el algoritmo Random Forest

(RF).

Esta técnica fusiona varios modelos de aprendizaje automático en un único sistema predictivo

para potenciar la eficacia de la detección. El clasificador resultante exhibió una notable exactitud

de aproximadamente 98%, a True Positive Rate (TPR) de 96 %, y a False Negative Rate (FNR)

de cerca del 4%.

El algoritmo Random Forest, según se detalla en la literatura técnica, opera como un conjunto de

varios árboles de decisión que trabajan en conjunto para crear una clasificación más sólida y

exacta. Dentro del marco de la identificación de inyecciones SQL, este método es especialmente

eficiente al posibilitar la evaluación simultánea de diversas características derivadas de las

peticiones HTTP o del código fuente para detectar patrones inusuales. Cada árbol de decisión

puede entrenarse con distintos subconjuntos del conjunto de datos, y cada uno elige una

predicción; el resultado final se establece por la mayoría de votos, lo que disminuye

considerablemente el peligro de sobreajuste y potencia la capacidad de generalización del

modelo. Esta sinergia facilita la identificación más precisa de las intenciones encubiertas en

cadenas de texto, lo que resulta en una mayor exactitud en la identificación de ataques. Además,

la característica no paramétrica del Random Forest lo convierte en la herramienta ideal para

manejar conjuntos de datos de seguridad que incluyen ruido, desbalances o rasgos no lineales, lo

que fortalece su utilidad en ambientes corporativos donde los patrones de ataque pueden ser

complejos y diversos.
46

7.​ Marco Metodológico


Respecto a la metodología que se va a manejar, se integraron 2 dimensiones a la hora de la

realización de la práctica: una investigativa, orientada al análisis y contextualización de ataques

web como SQLi y CSRF; y una técnica, centrada en el desarrollo de una herramienta

automatizada de auditoría ofensiva. Por tanto, se adopta un doble enfoque metodológico,

combinando una metodología de investigación descriptiva-documental con un modelo de

desarrollo de software secuencial en cascada.

El modelo en cascada fue seleccionado debido a que el proyecto contempla fases bien definidas

como la especificación de requerimientos, diseño del sistema, implementación de módulos,

pruebas de funcionamiento y entrega de resultados. Además, esta metodología permite tener una

visión clara del avance y mantener control sobre los entregables específicos en cada punto del

ciclo de desarrollo, lo cual es coherente con la naturaleza investigativa y práctica del trabajo.

Dado que el objetivo del proyecto es automatizar el proceso de detección de vulnerabilidades

web, se trabajará con un conjunto de actividades alineadas con estas fases, que se describen en

los apartados siguientes:

6.1 Actividades

1.​ Construcción del estado del arte: Se documentaron los fundamentos de los ataques

SQLi y CSRF, técnicas de detección, herramientas especializadas, estándares de

seguridad como ISO/IEC 27001:2022, y se definieron los conceptos clave del proyecto.

2.​ Levantamiento de requerimientos funcionales y no funcionales: En base a la

investigación realizada durante el estado del arte, se definieron los requerimientos

funcionales y no funcionales del sistema. Esta investigación permitió identificar prácticas


47

comunes en la detección de vulnerabilidades web, criterios de uso seguro y controles

normativos aplicables, lo que sirvió como base sólida para especificar las características

esperadas del sistema.

3.​ Diseño de arquitectura técnica del sistema: Se estructuró una solución modular basada

en contenedores Docker, integrando un backend orquestador, herramientas de análisis

ofensivo (SQLMap y OWASP ZAP), base de datos PostgreSQL y un módulo de

procesamiento con LLM (Gemini AI) para generación de reportes interpretados.

4.​ Automatización del proceso de escaneo y generación de informes: Se consolidó la

lógica de automatización para que el sistema pueda lanzar el escaneo completo (SQLi y

CSRF) desde una sola entrada (URL), procesar los resultados y generar un informe

técnico en texto plano, además de un informe no técnico alineado con la ISO/IEC

27001:2022.

5.​ Pruebas en entornos controlados: Se validó el funcionamiento del sistema ofensivo en

laboratorios controlados, configurando diferentes niveles de seguridad, verificando

efectividad de detección, tiempos de respuesta y generación de informes.

6.​ Ajustes finales y documentación técnica: Se realizaron mejoras de estabilidad y

corrección de errores menores en los módulos ofensivos desarrollados. Además, se

documentó el flujo completo del proceso ofensivo, desde el ingreso del usuario hasta la

generación de reportes automatizados. Se preparó el informe técnico final del proyecto.

Como parte del proceso de cierre, se diseñaron dos documentos de apoyo fundamentales:

6.1. Guía técnica: Destinada a facilitar la comprensión del sistema por parte de

desarrolladores o personal técnico que deba mantener o escalar la solución.


48

6.2. Guía de usuario: Orientada a auditores o usuarios finales no técnicos, la cual

explica paso a paso el uso del sistema y la interpretación de los resultados obtenidos.

Estas guías complementan la documentación formal del proyecto y aseguran su

continuidad operativa o académica en futuras etapas.

6.2 Técnicas de recolección de información

Para la construcción del estado del arte, se utilizó la técnica de revisión documental sistemática,

con base en fuentes académicas, técnicas y normativas. Entre los recursos consultados se

encuentran:

-​ Artículos científicos indexados en bases como Scopus, IEEE Xplore y Google Scholar.

-​ Documentación oficial de herramientas de seguridad ofensiva (SQLMap, OWASP ZAP).

-​ Informes de OWASP y estándares como ISO/IEC 27001:2022.

Esta técnica permitió identificar tendencias actuales, enfoques de detección, limitaciones de las

herramientas existentes, así como las normativas aplicables en la generación de informes

técnicos y no técnicos.

6.3 Herramientas utilizadas

●​ SQLMap (automatización de detección SQLi)​

●​ OWASP ZAP (detección de CSRF y otras vulnerabilidades)​

●​ Python 3.11 (automatización de subprocesos)​

●​ DVWA, bWAPP y [Link] (entornos vulnerables)​

●​ Gemini AI (modelo de lenguaje para generar reportes interpretables)​


49

●​ Docker (entorno de ejecución aislado)

6.4 Criterios de validación

Se consideraron como indicadores de éxito:

-​ La capacidad de detectar inyecciones SQL en URLs autenticadas y no autenticadas.

-​ La identificación de formularios sin token anti-CSRF.

-​ La generación automática de informes técnicos y su posterior interpretación en lenguaje

natural alineado con los controles A.8.25, A.8.26, A.8.28 y A.8.29 de ISO/IEC

27001:2022.

-​ La adaptabilidad del sistema a diferentes niveles de seguridad en entornos simulados.

8.​ Desarrollo Práctica

MES 1 (ABRIL 2025) - FASE DE CONCEPTUALIZACIÓN Y DISEÑO

Durante el primer mes de la práctica, se establecieron los fundamentos conceptuales y

metodológicos del proyecto, enfocándose en la definición clara del alcance y objetivos de la

herramienta de detección de vulnerabilidades. Se estableció como propósito principal el

desarrollo de un módulo de seguridad ofensiva especializado en la detección automatizada de

vulnerabilidades de inyección SQL y ataques CSRF, diseñado como una aplicación web de

ejecución local para auditores de seguridad.


50

Las actividades de investigación incluyeron un estudio exhaustivo de los fundamentos teóricos

de las vulnerabilidades objetivo, así como una revisión detallada de las normas de seguridad

ISO/IEC 27001:2022 y su aplicabilidad al proyecto. Se realizó el análisis y selección de las

herramientas tecnológicas principales: SQLMap para detección de inyecciones SQL y OWASP

ZAP para vulnerabilidades CSRF.

Adicionalmente, se completó el modelamiento preliminar de la arquitectura del sistema,

definiendo tres módulos funcionales principales: detección de inyección SQL, detección de

CSRF y generador de informes automatizados. Este período también incluyó la identificación

temprana de riesgos técnicos y oportunidades de automatización que facilitan futuras auditorías

bajo estándares ISO 27001:2022.

MES 2 (MAYO 2025) - FASE DE IMPLEMENTACIÓN INICIAL Y CONFIGURACIÓN

Durante el segundo mes de la práctica, se consolidó la base documental del proyecto mediante la

finalización del estado del arte, profundizando en las definiciones técnicas de inyección SQL y

ataques CSRF, junto con una revisión exhaustiva de técnicas automatizadas de detección. Se

estableció un marco metodológico robusto basado en herramientas especializadas como OWASP

ZAP y SQLMap, complementado con la integración de controles de seguridad ofensiva según la

norma ISO/IEC 27001:2022.


51

Paralelamente, se ejecutó la configuración completa del entorno de desarrollo en sistema

operativo Windows con Python como lenguaje principal, logrando el desarrollo de una versión

beta funcional del módulo de análisis automático. Esta implementación inicial demostró

capacidades básicas de ejecución de escaneos y presentación de resúmenes de vulnerabilidades a

través de interfaz de terminal, estableciendo las bases para el desarrollo posterior de la interfaz

gráfica.

MES 3 (JUNIO 2025) - FASE DE CONSOLIDACIÓN TEÓRICA Y PROTOTIPADO

Durante el tercer mes de la práctica, se alcanzaron avances significativos en la consolidación del

marco teórico y el desarrollo de prototipos funcionales iniciales. Se logró la finalización

completa del estado del arte del proyecto, estableciendo un marco conceptual robusto que abordó

el contexto técnico de las vulnerabilidades web SQL injection y CSRF, junto con una revisión

exhaustiva de antecedentes académicos sobre técnicas de detección automatizada. De particular

relevancia fue la integración específica con los controles de la norma ISO/IEC 27001:2022,

particularmente los controles 8.25 (Ciclo de vida del desarrollo seguro), 8.27 (Arquitecturas de

sistema y principios de ingeniería segura), 8.28 (Codificación segura) y 8.29 (Pruebas de

seguridad en desarrollo y aceptación), estableciendo la base normativa para la alineación de la

herramienta con estándares internacionales de ciberseguridad.


52

Paralelamente, se desarrolló la primera iteración de diseño de interfaz de usuario mediante

mockups de baja fidelidad, estructurando la aplicación en cuatro módulos principales:

estadísticas del sistema, escaneo automatizado de vulnerabilidades, reporte técnico detallado por

host y tipo de ataque detectado, y reporte ISO alineado con controles normativos de

ciberseguridad. Esta arquitectura modular fue documentada dentro del archivo de

"Requerimientos Funcionales", incluyendo descripciones detalladas de módulos y

funcionalidades asociadas a cada sección, estableciendo las bases para la implementación de la

interfaz gráfica web en fases posteriores.

MES 4 (JULIO 2025) - FASE DE DISEÑO FUNCIONAL Y DESARROLLO TÉCNICO

INICIAL

Durante el cuarto mes de la práctica, se consolidó significativamente tanto la documentación

formal del sistema como el desarrollo técnico funcional, respondiendo proactivamente a las

observaciones del tutor académico. Se completaron elementos críticos del diseño funcional

mediante la elaboración de casos de uso completos que definieron exhaustivamente los

escenarios de interacción del auditor de seguridad con la aplicación web, especificando roles,

flujos normales y alternativos, así como condiciones previas y posteriores bajo una plantilla

estandarizada que facilitó la trazabilidad con los módulos del sistema. Paralelamente, se

desarrolló el diagrama de actividades que representó el flujo completo de acciones del auditor al

ejecutar escaneos y generar informes, contemplando las bifurcaciones técnicas entre escaneo con

credenciales (fase post-autenticación) y escaneo sin credenciales (fase pre-autenticación

mediante inyección SQL).


53

A nivel de desarrollo técnico, se logró la finalización del módulo de detección de inyección SQL

(SQLi) con capacidades tanto ofensivas como no ofensivas, implementando opciones de escaneo

multi-nivel (rápido, profundo, agresivo) y funcionalidad avanzada de captura automática de

cookies de sesión tanto para credenciales válidas como para acceso logrado mediante inyección

SQL en formularios de login. Se implementaron medidas de seguridad básicas, incluyendo

validación de URLs exclusivamente con protocolo HTTP y cifrado visual de campos de

contraseña mediante asteriscos. Durante este período se inició la construcción del módulo de

detección CSRF con integración automatizada de OWASP ZAP, orientado a generar informes

técnicos alineados con controles normativos, aunque los tutores señalaron la necesidad de incluir

evidencias visuales y código fuente en reportes futuros para documentar adecuadamente el

progreso técnico.

MES 5 (AGOSTO 2025) - FASE DE IMPLEMENTACIÓN DE APLICACIÓN WEB

COMPLETA

Durante el quinto mes de la práctica, se ejecutó la transición fundamental del prototipo de

terminal hacia una aplicación web completa y funcional, representando el hito más significativo

en la implementación técnica del proyecto. Se desarrolló exitosamente la arquitectura de backend

utilizando FastAPI como framework principal, implementando una API REST robusta que

integra de manera nativa las funcionalidades de escaneo automatizado mediante SQLMap y

OWASP ZAP. Esta implementación permitió la exposición de endpoints especializados para la

ejecución de análisis de vulnerabilidades, gestión de sesiones de usuario, almacenamiento de

resultados de escaneo y generación automatizada de reportes técnicos y normativos.


54

Paralelamente, se construyó completamente la interfaz de usuario mediante Angular como

framework frontend, desarrollando una Single Page Application (SPA) responsiva y moderna

que materializa los mockups de alta fidelidad diseñados en fases anteriores. La aplicación web

incluye módulos funcionales completos de dashboard con estadísticas en tiempo real, consola de

escaneo con configuración de parámetros avanzados, visualización interactiva de resultados de

vulnerabilidades detectadas, y sistema de generación de informes tanto técnicos como alineados

con controles ISO/IEC 27001:2022. Se implementó un sistema de autenticación y autorización

que permite la gestión multiusuario y el almacenamiento persistente de históricos de escaneo.

MES 6 (SEPTIEMBRE 2025) - FASE DE CONTENEDORIZACIÓN, OPTIMIZACIÓN Y

TESTING AVANZADO

Durante el sexto mes de la práctica, se ejecutó la fase crítica de contenedorización y

optimización del sistema completo, representando un avance sustancial en la portabilidad y

escalabilidad de la herramienta desarrollada. Se implementó exitosamente la arquitectura de

contenedores mediante Docker, desarrollando un sistema de orquestación con Docker Compose

que integra de manera cohesiva todos los componentes del sistema: backend FastAPI, frontend

Angular, base de datos PostgreSQL, y las herramientas especializadas SQLMap y OWASP ZAP.

Esta implementación garantizó la portabilidad completa del sistema, permitiendo el despliegue

automático en cualquier entorno que soporte contenedores Docker, eliminando las dependencias

específicas del sistema operativo y simplificando significativamente el proceso de instalación

para los auditores de seguridad.


55

Se ejecutaron pruebas exhaustivas de integración y rendimiento sobre múltiples aplicaciones web

vulnerables, incluyendo DVWA (Damn Vulnerable Web Application), WebGoat, y sitios de

testing público como [Link], validando la efectividad de detección de

vulnerabilidades SQL injection y CSRF bajo diferentes configuraciones de seguridad. Durante

estas pruebas se identificaron y corrigieron aspectos críticos de optimización, incluyendo la

implementación de timeouts configurables para evitar escaneos infinitos, mejoras en el manejo

de excepciones durante la integración con herramientas externas, y la optimización de consultas

a base de datos para mejorar los tiempos de respuesta en la generación de reportes.

Adicionalmente, se refinaron los módulos de generación de reportes, implementando mejoras

significativas en los informes ISO/IEC 27001:2022 mediante la integración de inteligencia

artificial (Google Gemini API) para la generación automatizada de recomendaciones

contextualizadas y mapeo automático de vulnerabilidades detectadas con controles normativos

específicos. Se implementó un sistema de plantillas PDF profesionales con branding corporativo

customizable, exportación de datos en múltiples formatos (PDF, CSV, JSON), y funcionalidades

avanzadas de filtrado y búsqueda en el histórico de escaneos. Este período consolidó la

herramienta como una solución completa y profesional para auditorías de seguridad web,

estableciendo las bases para la fase final de documentación técnica y entrega del proyecto.
56

MES 7 (OCTUBRE 2025) - FASE DE REFINAMIENTO, PRESENTACIÓN Y ENTREGA

FINAL

Durante el séptimo y último mes de la práctica, se ejecutó la fase de refinamiento final y

presentación del sistema completo, consolidando todos los componentes desarrollados en una

herramienta profesional lista para implementación en entornos reales de auditoría de seguridad.

Se realizaron mejoras significativas en la experiencia de usuario, incluyendo la optimización de

los prompts de inteligencia artificial para la generación de reportes ISO/IEC 27001:2022 más

contextualizados y técnicamente precisos, implementando capacidades avanzadas de análisis que

permiten mapear automáticamente las vulnerabilidades detectadas con controles normativos

específicos y generar recomendaciones de remediación personalizadas según el contexto

empresarial del objetivo analizado.

La fase de entrega incluyó la preparación completa de la documentación técnica final, la

configuración de imágenes Docker optimizadas para despliegue en diferentes entornos, y la

realización de presentaciones ante el equipo académico demostrando las capacidades completas

del sistema mediante casos de uso reales sobre aplicaciones web vulnerables. Se validaron

exitosamente todos los módulos funcionales: escaneo automatizado de vulnerabilidades SQLi y

CSRF, generación de reportes técnicos detallados, creación de informes normativos alineados

con ISO/IEC 27001:2022, gestión de usuarios y persistencia de históricos de análisis. El

proyecto se entregó como una solución integral que cumple con los objetivos planteados

inicialmente, proporcionando a los auditores de seguridad una herramienta automatizada y

profesional para la detección de vulnerabilidades web y generación de reportes de cumplimiento

normativo.
57

9.​ Resultados de Aprendizaje

Durante el desarrollo de esta práctica empresarial, se consolidaron competencias técnicas

fundamentales en el ámbito de la ciberseguridad y el desarrollo de software. Se logró el dominio

de tecnologías modernas para la construcción de aplicaciones web robustas, incluyendo FastAPI

para backend, Angular para frontend, y Docker para contenedorización, integrando exitosamente

herramientas especializadas de testing de penetración como SQLMap y OWASP ZAP dentro de

una arquitectura cohesiva y escalable.

En el ámbito de la ciberseguridad, se desarrollaron competencias profundas en la identificación y

análisis de vulnerabilidades web críticas (SQL Injection y CSRF), así como en la

implementación de metodologías automatizadas de testing de penetración. Se adquirió

experiencia práctica en el mapeo de hallazgos técnicos con controles normativos específicos de

ISO/IEC 27001:2022, desarrollando la capacidad de generar reportes de cumplimiento

automatizados mediante inteligencia artificial que contextualizan las vulnerabilidades detectadas

según estándares internacionales de ciberseguridad.

Se consolidaron competencias de investigación académica a través de la construcción de marcos

teóricos robustos y la síntesis efectiva de antecedentes en detección automatizada de

vulnerabilidades

El proyecto evidenció la capacidad de autoaprendizaje y resolución de problemas complejos,

demostrando adaptabilidad tecnológica para el dominio de herramientas no previamente

conocidas y la integración efectiva de múltiples tecnologías en una solución integral. Como

resultado, se desarrolló una herramienta que automatiza procesos tradicionalmente manuales en


58

auditorías de seguridad web, contribuyendo a la democratización de herramientas de

ciberseguridad y generando conocimiento aplicable en entornos empresariales reales.

10.​Conclusiones

Al finalizar los siete meses de práctica empresarial, se logró cumplir con el objetivo principal

establecido desde el inicio: desarrollar una herramienta integral para la detección automatizada

de vulnerabilidades web.

Durante el proceso se presentaron diversos desafíos técnicos que, aunque inicialmente resultaron

complejos, fueron superados progresivamente. La integración de SQLMap y OWASP ZAP

representó uno de los mayores retos, dado que ambas herramientas no estaban diseñadas para

trabajar de manera conjunta; sin embargo, se consiguió la creación de una API capaz de

unificarlas de forma eficiente, constituyendo uno de los principales logros técnicos del proyecto.

Uno de los aspectos más relevantes fue reconocer la importancia de vincular los resultados

técnicos con estándares normativos como ISO 27001. Este enfoque permitió comprender que la

alineación con marcos de cumplimiento no es un elemento adicional, sino una necesidad esencial

para aportar valor real a las organizaciones. Los reportes automatizados generados por la

aplicación no solo identifican vulnerabilidades, sino que las presentan en un contexto que facilita

su interpretación y aplicación dentro de políticas de seguridad corporativa.


59

La implementación de Docker se destacó como una decisión clave para simplificar el despliegue

del sistema, permitiendo que cualquier usuario pueda instalar y ejecutar la herramienta con un

solo comando, sin complicaciones derivadas de dependencias o configuraciones adicionales.

El resultado final representa un aporte significativo al campo de la ciberseguridad, al automatizar

procesos que tradicionalmente requieren un alto nivel de conocimiento técnico y esfuerzo

manual. De esta manera, se contribuye a democratizar el acceso a herramientas de auditoría de

seguridad, brindando soluciones útiles también para pequeñas y medianas empresas que carecen

de recursos especializados.
60

11.​Referencias

Abdullayev, V., & Chauhan, A. S. (2023). SQL Injection Attack: Quick view. Deleted Journal,

30-34. [Link]

Alazmi, S., & De Leon, D. C. (2023). Customizing OWASP ZAP: A Proven Method for

Detecting SQL Injection Vulnerabilities. 2023 IEEE 9th Intl Conference On Big Data

Security On Cloud (BigDataSecurity), IEEE Intl Conference On High Performance And

Smart Computing, (HPSC) And IEEE Intl Conference On Intelligent Data And Security

(IDS), 96, 102-106. [Link]

Alexander, G. R. A., & Paola, R. A. J. (2025, 20 febrero). Simulación del ataque CSRF por

medio de una aplicación web con enfoque explicativo. [Link]

Ali, M., & Rahman, M. (2021). In A Study on Cross Site Request Forgery (CSRF) Attack in Web

Application. (Vol. 183, pp. 1-4). International Journal of Computer Applications.

[Link]

Anwar, I. (2025). Machine Learning Approaches for Detection of SQL Injection Attacks. Jurnal

Sistem Informasi Dan Teknik Informatika (JAFOTIK), 3(1), 1-6.

[Link]

Amey, Simon. (2022). <i>Software Test Design - 9.10.7 CORS Attacks.</i> (pp. 268). Packt

Publishing. Retrieved from

<br>[Link]

sign/cors-attacks

Broken access control. (s. f.). Common Weakness Enumeration. Recuperado 2 de mayo de 2025,

de [Link]
61

C. Liu, X. Shen, M. Gao and W. Dai, "CSRF Detection Based on Graph Data Mining," 2020

IEEE 3rd International Conference on Information Systems and Computer Aided Education

(ICISCAE), Dalian, China, 2020, pp. 475-480, doi: 10.1109/ICISCAE51034.2020.9236806.

keywords: {Databases;Conferences;Forgery;Servers;Data mining;Security;Information

systems;CSRF;execution trace;property Graph;data mining},URL:

[Link]

=9236789

Chavez, S., Anahue, J., & Ticona, W. (2024). Implementation of an ISMS Based on ISO/IEC

27001:2022 to Improve Information Security in the Internet Services Sector. Proceedings of

the 14th International Conference on Cloud Computing, Data Science and Engineering,

Confluence 2024, 184–189. [Link]

El modelo en cascada en el desarrollo de software. (2019, March 11). IONOS. Retrieved July

10, 2025, from

[Link]

Enhancing SQL Injection Detection and Prevention Using Generative Models. (s. f.).

[Link]

Guide, S. (n.d.). ISO 27001 Controls Explained: A Guide to Annex A (Updated 2024).

Secureframe. Retrieved July 4, 2025, from

[Link]

Gupta, Namita Chatterjee, Prasenjit Choudhury, Tanupriya. (2021). <i>Smart and Sustainable

Intelligent Systems - 34.2 SQL Injection Attack and Its Types.</i> (pp. 483). John Wiley &

Sons. Retrieved from


62

<br>[Link]

ction-attack

H. Shahriar and M. Zulkernine, "Client-Side Detection of Cross-Site Request Forgery Attacks,"

2010 IEEE 21st International Symposium on Software Reliability Engineering, San Jose, CA,

USA, 2010, pp. 358-367, doi: 10.1109/ISSRE.2010.12. URL:

[Link]

=5635036

ISO/IEC. (2022). Seguridad de la información, ciberseguridad y protección de la privacidad –

Controles de seguridad de la información (GTC-ISO/IEC 27002:2022). ICONTEC.

[Link]

oteccion-de-la-privacidad-controles-de-seguridad-de-la-informacion-gtc-iso-iec27002-20

[Link]

Jakobsson, A., & Häggström, I. (2022). Study of the techniques used by OWASP ZAP for

analysis of vulnerabilities in web applications [Master's thesis, Linköping University].

Linköping University Electronic Press. [Link]

Kshetri, N., Kumar, D., Hutson, J., Kaur, N., & Osama, O. F. (2024). algoXSSF: Detection and

analysis of cross-site request forgery (XSRF) and cross-site scripting (XSS) attacks via

Machine learning algorithms. arXiv (Cornell University).

[Link]

Laghnimi, J., Moumane, K., Ahmed, Z., Lamkimel, M., Kacimi, Z., & Wahi, Y. (2024). ISO/IEC

27001 Certification in Moroccan Companies: Trends and Future Recommendations.

Proceedings - 2024 World Conference on Complex Systems, WCCS 2024, 1–6.

[Link]
63

Ledin, Jim. (2022). <i>Modern Computer Architecture and Organization (2nd Edition) - Learn

x86, ARM, and RISC-V Architectures and the Design of Smartphones, PCs, and Cloud

Servers - [Link] SQL Injection.</i> (pp. 391). Packt Publishing. Retrieved from

<br>[Link]

ection

Lin, X., Zavarsky, P., Ruhl, R., & Lindskog, D. (2009). Threat Modeling for CSRF Attacks. 2009

International Conference On Computational Science And Engineering.

[Link]

List of Attacks. (n.d.). OWASP Foundation. Retrieved July 4, 2025, from

[Link]

Liu, C., Shen, X., Gao, M., & Wei Dai. (2020). CSRF Detection Based on Graph Data Mining.

475 2020 IEEE 3rd International Conference on Information Systems and Computer

Aided Education (ICISCAE) 978-1-7281-8304-6/20/$31.00 ©2020 IEEE Dalian, China,

475-480.

[Link]

mber=9236789

Lu, D., Fei, J., & Liu, L. (2023). A Semantic Learning-Based SQL Injection attack detection

technology. Electronics, 12(6), 1344. [Link]

Malatji, M. (2023). Management of enterprise cyber security: A review of ISO/IEC 27001:2022.

2023 International Conference on Cyber Management and Engineering (CyMaEn).

[Link]
64

Mitch: A machine learning approach to the Black-Box detection of CSRF vulnerabilities. (2019).

2019 IEEE European Symposium On Security And Privacy (EuroS&P).

[Link]

Mitigación Ataques Inyección SQL​

[Link]

tion_Attack_Detection_and_Prevention_Techniques_Using_Machine_Learning/links/5f0415d

4458515505091b1ec/SQL-Injection-Attack-Detection-and-Prevention-Techniques-Using-Mac

[Link]

Muzammil, M. B., Bilal, M., Ajmal, S., Shongwe, S. C., & Ghadi, Y. Y. (2024). Unveiling

Vulnerabilities of Web Attacks Considering Man in the Middle Attack and Session

Hijacking. IEEE Access, 12, 6365-6375. [Link]

National Institute of Standards and Technology. (2018). In Technical Guide to Information

Security Testing and Assessment.

Okesola, J. O., Ogunbanwo, A. S., Owoade, A., Olorunnisola, E. O., & Okokpuji, K. (2023).

Securing web applications against SQL injection attacks - A Parameterised Query

perspective). 2023 International Conference On Science, Engineering And Business For

Sustainable Development Goals (SEB-SDG).

[Link]

Pressman, R. S. (2010). INGENIERIA DE SOFTWARE (7th ed.). McGraw-Hill Interamericana

de España S.L.
65

¿Qué es CSRF (Falsificación de solicitudes entre sitios)? | Fortinet. (s. f.). Fortinet.

[Link]

%B3n%20de%20solicitudes%20entre,ya%20le%20ha%20otorgado%20autenticaci%C3

%B3n.

R. Auger (2010 Abril 4) The Cross-Site Request Forgery (CSRF/XSRF) FAQ [Online].

Available: [Link]

Ramadan, M., Osama, B., Zaher, M., Mansour, H., & Sersi, W. E. (2024). Enhancing Web

Security: A Comparative Analysis of Machine Learning Models for CSRF Detection.

2024 Intelligent Methods, Systems, And Applications (IMSA), 8, 18-25.

[Link]

Rehim, Rejah Mohan, Manindar. (2024). <i>Offensive Security Using Python - 3.2.3

SQLMap.</i> (pp. 52). Packt Publishing. Retrieved from

<br>[Link]

ing/sqlmap

Salah, K., Barakat, S., & Rezk, A. (2025). An Effective SQL Injection Detection Model Using

LSTM for Imbalanced Datasets. Computers & Security, 104391.

[Link]

Secureframe. (2025a). ISO 27001 Controls Explained: A Guide to Annex A. Secureframe.

[Link]

Seguridad de la información, ciberseguridad y protección de la privacidad. (2022).

(GTC-ISO/IEC 27002:2022). ICONTEC.

[Link]
66

oteccion-de-la-privacidad-controles-de-seguridad-de-la-informacion-gtc-iso-iec27002-20

[Link]

Shahriar, H., & Zulkernine, M. (2010). Client-Side Detection of Cross-Site Request Forgery

Attacks. 2010 IEEE 21st International Symposium on Software Reliability Engineering,

358-367.

[Link]

mber=5635036

Sravani, N., & Raju, O. S. (2024). Machine Learning for Web Vulnerability Detection: The Case

of Cross-Site Request Forgery. International Journal of Scientific Research in

Engineering & Technology, 4, 26-29. 10.59256/ijsreat.20240401005

Stallings, W. (2018). Computer Security: Principles and Practice (4th ed.).

Stuttard, D., & Pinto, M. (2011). The Web Application Hacker's Handbook: Finding and

Exploiting Security Flaws. Wiley.

Syafrizal, M., Selamat, S. R., & Zakaria, N. A. (2022). Analysis of cybersecurity standard and

framework components. International Journal of Communication Networks and Information

Security (IJCNIS), 12(3). [Link]

Taherdoost, H. (2022). Understanding Cybersecurity Frameworks and Information Security

Standards—A Review and Comprehensive Overview. Electronics, 11(14), 2181.

[Link]

Tipton, H., & Krause, M. (2007). Information Security Management Handbook (6th ed.).

Wolf, Marilyn. (2023). <i>Computers as Components - Principles of Embedded Computing

System Design (5th Edition) - 8.5.1 Databases.</i> (pp. 428). Elsevier. Retrieved from

<br>[Link]

También podría gustarte