Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Departamento: TI
Inyección de SQL
Fecha: 17/07/2023
Versión: 3.0
Versión de Plantilla: 3.0.1
<La Metodología PM² tiene su origen en la Comisión Europea. Open PM² proporciona directrices y
plantillas para facilitar la gestión y documentación de sus proyectos.>
Inyección de SQL Acta de Constitución
Índice
1. INFORMACIÓN DE CONTROL DEL DOCUMENTO ................................................................................... 5
APROBACIÓN Y REVISIÓN DEL DOCUMENTO: ........................................................................................... 5
HISTORIAL DE DOCUMENTOS: .................................................................................................................. 5
GESTIÓN DE LA CONFIGURACIÓN: LOCALIZACIÓN DEL DOCUMENTO ....................................................... 6
2. RUTA CRITICA ....................................................................................................................................... 9
3. RESUMEN EJECUTIVO ......................................................................................................................... 10
4. CONSIDERACIONES SOBRE EL CASO DE NEGOCIO ............................................................................... 10
DESCRIPCIÓN DEL PROYECTO ................................................................................................................. 11
1.1 Alcance ............................................................................................................................................ 11
Incluido ("dentro del" alcance) .......................................................................................................... 11
1.2 Excluido ("fuera del" alcance) ......................................................................................................... 11
1.3 Criterios de Éxito ............................................................................................................................. 11
1.4 Necesidades de las Partes Interesadas y de los Usuarios ............................................................... 11
1.5 Entregables...................................................................................................................................... 11
1.6 Características ................................................................................................................................. 12
1.7 Restricciones ................................................................................................................................... 12
1.8 Supuestos ........................................................................................................................................ 12
1.9 Riesgos ............................................................................................................................................ 12
5. COSTE, TIEMPO Y RECURSOS .............................................................................................................. 12
1.10 Coste ............................................................................................................................................... 12
1.11 Plazos e hitos ................................................................................................................................... 14
1.12 Recursos Planificados ...................................................................................................................... 14
6. ENFOQUE ............................................................................................................................................ 15
1.13 Metodología .................................................................................................................................... 15
1.14 Gestión de Cambios ........................................................................................................................ 15
Cambio del Proyecto .......................................................................................................................... 15
Gestión de la Configuración ............................................................................................................... 15
7. GOBERNANZA Y PARTES INTERESADAS .............................................................................................. 16
1.15 Estructura ........................................................................................................................................ 16
1.16 Roles and Responsabilidades .......................................................................................................... 16
8. SOBRE EL MANUAL DEL PROYECTO ..................................................................................................... 17
9. VISIÓN GENERAL DEL PROYECTO ........................................................................................................ 17
9.1. Resumen del Proyecto ...................................................................................................................... 17
10. ENFOQUE DEL PROYECTO ................................................................................................................. 17
10.1. Ciclo de Vida del Proyecto .............................................................................................................. 17
10.2. Adaptación de PM² – Documentación Requerida del Proyecto ..................................................... 17
10.4. Otros Estándares ............................................................................................................................ 18
10.5. Reglas Específicas para la Gestión del Proyecto ............................................................................. 18
10.6. Resolución de Conflictos y Elevación a Niveles de Decisión Superiores ......................................... 18
11. PROCESOS DEL PROYECTO ................................................................................................................ 18
11.1. Gestión de Riesgos .......................................................................................................................... 18
Historial de documentos:
El Autor del Documento está autorizado a hacer los siguientes tipos de cambios al documento sin requerir que
el documento sea aprobado nuevamente:
Editorial, formato y ortografía.
Aclaraciones.
Para solicitar un cambio en este documento, póngase en contacto con el Autor del Documento o el Propietario
del Proyecto.
Las modificaciones de este documento se resumen en la siguiente tabla en orden cronológico inverso (primero
la última versión).
Base legal
El inicio de proyecto Inyección de SQL tiene como fecha de inicio 08/05/2023 y su término 31/07/2023
se acuerda por ambas partes las fechas antes mencionadas para el cumplimiento del proyecto dando
como inicio 3000 dólares por parte de Universidad Tecnológica de Nezahualcóyotl para poder arrancar
con el proyecto y al finalizar se realizará un pago de 60mil pesos a NCripto proveedor que desarrollará
la implementación del proyecto Inyección de SQL.
Ambas partes se someten a las oficinas del Entado de México para cualquier incumplimiento legal del
proyecto Inyección de SQL.
Clausulas para cliente Universidad Tecnológica de Nezahualcóyotl
1.- Cancelación de proyecto por causa ajena a proveedor NCripto se penalizará con el pago completo
del proyecto que tiene como total 1000 dólares, por lo tanto, Universidad Tecnológica de
Nezahualcóyotl tendrá que cubrir la cantidad faltante a dicha cantidad.
2.- El atraso de cualquier pago penalizara con 10% de la cantidad no pagada a NCRIPTO.
3.- Realizar cualquier cambio a los objetivos que se requieren al azar en el proyecto Inyección de SQL
se penalizara con 10% de la cantidad total del proyecto más costos extra.
Clausulas para Proveedor NCripto
1.- No cumplir con las fechas estipuladas de inicio de proyecto 08/05/2023 y su término 31/07/2023 se
penalizará con 10% del total del proyecto por cada 10 días de atraso.
2.- No cumplir con los requerimientos solicitados por parte del cliente penalizara con 10% del total del
proyecto.
3.- Cancelación de Proyecto por parte de NCripto se penalizará con 50% del total del proyecto el cual
será pagado a Universidad Tecnológica de Nezahualcóyotl en una fecha no mayo a 10 días después de
la notificación de cancelación por alguna vía legal.
Criterios de Éxito
Ejecución de script mediante servidor de página web.
Respaldo de Base de datos SQL de Universidad Tecnológica de Nezahualcóyotl
Correcta sincronización de Base de datos SQL
Acceso a página Web vía Intranet para personal de Universidad Tecnológica de Nezahualcóyotl
Niveles de seguridad para usuarios de Portal WEB
2. RUTA CRITICA
3. RESUMEN EJECUTIVO
NCripto empresa dedicada al desarrollo de nuevos proyectos manteniendo actualizada la infraestructura de TI
salvaguardando los activos críticos de las empresas.
Solución y mitigación a ataques SQL mediante el método de inyección Booleana proyectando el desarrollo de
un buen funcionamiento de las Bases de Datos SQL administradas y protegidas por la Universidad Tecnológica
de Nezahualcóyotl.
Se brindará conocimiento para administrar y mantener el correcto funcionamiento a los servicios SQL.
Se proporciona una visión general de la especificación de recursos sobre el ataque de inyección booleana. Con
el fin de conocer las principales funciones que éste realiza, los datos asociados, factores, restricciones,
supuestos y dependencias que afectan al desarrollo, así como también la manera de mitigar dicho ataque.
Utilizamos las herramientas informáticas más avanzadas que nos permiten estar conectados en todo momento
tanto con el cliente como entre nosotros para poder ofrecer el mejor servicio de calidad.
Mantenemos al cliente totalmente informado sobre las últimas leyes laborales.
Elaboramos dossier y nos desplazamos al centro de trabajo para explicar las últimas actualizaciones que nos
permitirán estar al día en materia de subvenciones y bonificaciones.
1.2 Buscadores: Se pondrá especial cuidado en la construcción del sitio para facilitar la Alta
indexación en buscadores web.
1.3 Permitir el acceso vía intranet del sitio web Alta
1.5 Entregables
Informes: Se elaborarán informes de avance por la empresa administradora del proyecto, dirigidos al
interventor del Proyecto.
Contratos: Se entregará copia de los contratos con acta de inicio y liquidación al interventor del programa.
1.6 Características
1.7 Restricciones
Proporcionar accesos de administrador a directores de cada carrera.
Proporcionar accesos de usuario a profesores.
Crear niveles de usuarios en página web para restringir accesos.
1.8 Supuestos
Tener accesos de administrador en portal para poder modificar información en SQL
Tener accesos de usuario en portal para poder modificar información en SQL
Mitigar ataque de inyección booleano a SQL
Mantener el SQL sin riego a ataques o perdida de información
1.9 Riesgos
ID Descripción y Estado Dueño Estrategia de Detalles de la
Nivel de Riesgo3
Probabilidad1
4.1 Perdida de Down 20% Alto Alto Cliente Tener Contar con
sitio web redundancia en servidor alterno
página web
4.2 Daño a Base Down 5% Alto Alto Cliente Respaldo de SQL Tener servidor de
de datos SQL Respaldo para
tener redundancia
en sincronización
de Base SQL
5 Si no puede proporcionar un importe, proporcione al menos una estimación cualitativa (p.ej., 20 días de capacitación, 2 ordenadores portátiles, etc.)
6 Desarrollo (recursos humanos): proporcionar el coste total (previsto) para el desarrollo de la solución.
7 Mantenimiento (recursos humanos): proporcionar el coste total (previsto) en k€ por año para mantener la solución.
8 Asistencia (recursos humanos): proporcionar el coste total (anticipado) en k€ por año para prestar asistencia a la solución (p.ej., sitio web, servicio de asistencia técnica, operaciones, etc.).
9 Formación (recursos humanos): proporcionar el coste total (previsto) para garantizar la formación de los usuarios, el personal de apoyo y de operaciones, etc.
10 Infraestructura: proporcionar el coste total (previsto) de la infraestructura necesaria para entregar, apoyar, operar y mantener la solución entregada.
11 Equivalente a Jornada Completa (EJC): proporcione el esfuerzo total (anticipado) que el personal interno empleará en el proyecto (en días-persona, personas-semana, personas-mes u personas-año).
Fecha objetivo de
ID Descripción del Hito
entrega
5.4 Diseño de script para eliminar ataques de Inyección SQL BOOLEANO 11/06/2023
6. ENFOQUE
1.13 Metodología
Se desarrollara el proyecto mediante una metodología de Cascada con apoyo de las herramientas de PMBOK
para realizar buenas prácticas y lineamientos que nos dará el refuerzo necesario para el proyecto y elaborar
adecuadamente cada una de sus etapas, como lo es la iniciación que se definirá en qué consistirá este proyecto
y llevando de manera clara la justificación para la empresa ,la planificación que nos ayudara a analizar cómo
conseguir los recursos humanos ,materiales y financiación para llevar a cabo el proyecto, la ejecución que se
presentara con cada uno de los integrantes asi como los objetivos y responsabilidades que se dividirá entre el
equipo de trabajo previamente reunidos, el control nos ayudara a revisar como llegar a actuar en caso de que
se presente una problemática para esto nos apoyaremos en un manual de riesgos, establecido para estos casos
de emergencia y finalmente el cierre que es aquí donde se presentara ya el producto terminado sin ninguna
falla o problemática hacia el cliente, brindándole la solución solicitada hacia nosotros y actuando como los
expertos recomendados al cliente para la mejor solución al darnos su confianza para el proyecto.
Gestión de la Configuración
Tabla de control de gestión de cambios del proyecto.
Cualquier interesado involucrado en el proyecto puede solicitar cambios. Aunque los cambios pueden iniciarse
verbalmente, siempre deben registrarse por escrito e ingresarse al sistema de tablas de control gestión de
cambios y/o al sistema de gestión de la configuración.
Si no, breve
Plantilla Si/No Localización explicación de la
razón
Solicitud de Inicio del Proyecto Pag 2
Evaluación de Riesgos:
Nivel Impacto
Ataques de inyección de SQL Provoca daños graves a las empresas, como la
pérdida de confianza de los clientes si se
quebrantan datos confidenciales de los usuarios.
Daño a base de datos SQL El no tener servidor de Respaldo para tener
redundancia en sincronización de Base SQL y no
tener pedida de información.
Perdida de sitio web Debemos tener un servidor alterno para
protección de datos.
Control de Riesgos:
Capacitar al personal: Concientizar al equipo responsable de la aplicación web sobre los riesgos relacionados
con la SQLi y brindar la capacitación necesaria para todos los usuarios en función del puesto.
Mantener el control de la entrada de los usuarios: Cualquier entrada de usuario utilizada en una consulta de
SQL genera un riesgo. Aborda las entradas de los usuarios autenticados o internos de la misma manera que las
entradas públicas hasta que se verifiquen. Otórgales a las cuentas que se conectan a la base de datos SQL solo
los privilegios mínimos necesarios. Utilice listas blancas como práctica estándar en lugar de listas negras para
verificar y filtre la entrada de los usuarios.
Utilizar las versiones más recientes: Es importante usar la versión más reciente del entorno de desarrollo para
maximizar la protección, ya que es posible que a las versiones anteriores les falten funciones de seguridad.
Asegúrese de instalar el software y los parches de seguridad más recientes cuando estén disponibles.
Analizar de forma continua las aplicaciones web: Use herramientas integrales de administración del
rendimiento de las aplicaciones. Analizar regularmente las aplicaciones web permite identificar y abordar
posibles vulnerabilidades antes de que provoquen daños graves.
Usar un firewall: El firewall de una aplicación web (WAF) a menudo se usa para filtrar SQLi, así como otras
amenazas en línea. Un WAF confía utiliza una extensa lista de firmas que se actualiza con frecuencia y le permite
filtrar consultas de SQL maliciosas. Por lo general, la lista tiene firmas para abordar vectores de ataque
específicos y se corrige con regularidad en respuesta a vulnerabilidades recientemente descubiertas.
11.2. Gestión de Incidencias
El proceso de gestión de incidencias del proyecto define las actividades relacionadas con la
identificación, documentación, evaluación, priorización, asignación, resolución y control de
incidencias. Es un proceso de cuatro pasos que el director de Proyecto (DP) ejecuta siempre que sea
necesario a lo largo del ciclo de vida del proyecto:
• Identificación de Incidencias: las incidencias pueden ser identificadas por cualquier parte interesada
del proyecto a lo largo de su ciclo de vida, utilizando diferentes canales de comunicación como
reuniones, correos electrónicos e informes. Las incidencias se registran en el Registro de incidencias.
• Evaluación de la Incidencia y Recomendación de Acción: una primera evaluación informal considera la
categoría, el impacto, la urgencia y el tamaño de la incidencia, seguida de un análisis más detallado
para identificar la causa fundamental y recomendar una solución. Esta información se documenta en
el Registro de Incidencias y se utiliza como entrada para los responsables de la toma de decisiones (en
función del proceso de elevación). La decisión se documenta en el Registro de Decisiones.
• Implementación de Acciones: después de evaluar las incidencias y aprobar las acciones de corrección,
el director del Proyecto (DP) incorporará estas acciones en el Plan de Trabajo del Proyecto y actualizará
la documentación relacionada con el proyecto, como los planes y registros del proyecto.
• Control de Incidencias: las Reuniones de Situación del Proyecto se celebrarán semanalmente y se
utilizarán para revisar el estado de las incidencias y las acciones relacionadas, y para identificar nuevas
incidencias. Además, el director de Proyecto (DP) informará mensualmente sobre el estado de las
principales incidencias al Comité de Dirección del Proyecto (CDP) y, cuando sea adecuado, a otras
partes interesadas del proyecto.
Método
Nivel de Nivel de Fecha de
ID del Formación/ de Impartido
Recurso habilidad habilidad finalizació
Recurso habilidad impartici por
actual deseado n prevista
ón
NCripto Programador Python Principiant Avanzado Curso Director de 28/05/202
H1.0 e interno proyecto 3
NCripto Programador Herramientas Principiant Avanzado Curso Director de 29/05/202
H 2.0 software e interno proyecto 3
NCripto Testeador Visual estudio Principiant Avanzado Curso Director de 30/05/202
H 3.0 e extremo 5 proyecto 3
días
La UTN se reserva el derecho de aplicar desde el inicio del servicio y durante la vigencia del contrato, la
evaluación de los proyectos a través de la metodología de puntos función, casos de uso, líneas de código o
cualquier otra que considere apropiada para determinar la dimensión de los proyectos. Dicha decisión será
presentada al NCripto para su debida implementación.
Partes Interesadas
Descripción
NCripto
Responsabilidades
Nombre Rol Acción Fecha
Luis Fernando Licona Analista y documentador Investigación, Análisis y 08/05/2023
Reyna Revisa
Jorge Montero Cruz Administrador de Investigación, Análisis, 08/05/2023
servidores Configuración y Revisa
Francisco Javier Nicolas Diseñador y programador Investigación, Análisis, 08/05/2023
Ortiz Configuración, Aprueba y
Revisa
Daniela Parra Gutiérrez Diseñador y programador Investigación, Análisis, 08/05/2023
Configuración, Aprueba y
Revisa
Hugo Villalpando Analista y documentador Investigación, Análisis y 08/05/2023
Montesinos Revisa
Verónica Martínez Pérez Representante legal Aprobación de 08/05/2023
• documento final
Responsabilidades
• Abandera el proyecto y conciencia sobre el mismo en los niveles superiores.
• Guía y promueve a nivel estratégico la ejecución exitosa del proyecto, manteniendo el proyecto
centrado en sus objetivos.
• Garantiza el cumplimiento de las políticas y normas de la organización.
• Proporciona el seguimiento y control del proyecto a alto nivel.
• Al final de la Fase de Inicio, autoriza la continuación del proyecto, sobre la base del Caso de Negocio y
el Acta de Constitución del proyecto, a menos que lo haga el Órgano de Gobernanza Pertinente (OGP).
• Al final de la Fase de Planificación, autoriza al proyecto a continuar con la Fase de Ejecución,
basándose en el Manual del Proyecto y el Plan de Trabajo del Proyecto.
• Autoriza desviaciones y cambios de alcance de alto impacto en el proyecto y tiene la última palabra en
las decisiones.
• Se ocupa de las incidencias y conflictos que le son elevados.
• Impulsa y gestiona los cambios organizativos relacionados con los resultados del proyecto.
• Aprueba y autoriza los artefactos de gestión relativos a la calidad, la entrega y el cierre (Caso de
Negocio, Acta de Constitución del Proyecto, Plan de Trabajo del Proyecto, etc.).
Bajo la coordinación del director del Proyecto (DP), el Equipo Central del Proyecto (ECP):
• Contribuye en la elaboración del alcance del proyecto y en la planificación de las actividades
del proyecto.
• Realiza las actividades del proyecto de acuerdo con el plan de trabajo y el cronograma del
proyecto.
• Produce los entregables del proyecto.
• Proporciona información al director de Proyecto (DP) sobre el progreso de las actividades.
• Participa en las reuniones del proyecto según sea necesario y contribuye a la resolución de
incidencias.
• Participa en la Reunión de Fin de Proyecto para generar y documentar lecciones útiles
aprendidas para la organización.
12.4 Ejecución
12.5 Cierre
12.5 Seguimiento
La Universidad Tecnológica de Nezahualcóyotl requiere salvaguardar su información SQL ante este tipo de ataque
por tal estos requisitos están dirigida a la entrada del usuario que se realiza a través de un formulario de acceso. Se
consulta la base de datos SQL con los campos enviados por el usuario para autentificarlos. La estructura es de la
consulta a su base de datos, que solo abarcará las áreas de servicios escolares.
Cada una de las iniciativas de desarrollo del sistema se considerará, por lo que se deberá ejecutar de forma
simultánea sin que se afecte el tiempo de realización entre ellos. El número de desarrollos de sistemas totales
durante la vigencia del contrato no se establece, debido a que esto dependerá de los requerimientos formulados
por las unidades administrativas de la UTN. Esto quiere decir que será responsabilidad de NCripto, asignar el
personal adecuado en calidad y cantidad para cumplir con los planes de trabajo que correspondan a cada orden de
trabajo de desarrollo de sistemas que sea formalizada.
Cada componente del desglose del trabajo es de un tipo determinado Entregable.
Toda la información asociada a los proyectos y servicios otorgados por NCripto, como son código fuente generado
y/o modificado, documentos generales de y para el proyecto, así como todos los entregables establecidos, serán
considerados como propiedad exclusiva de la UTN sin excepción alguna, desde el formato hasta el contenido. Para
el caso del servicio de asignación fija, la documentación a entregar será el artefacto (Reporte de Actividades) y
aquella que sea definida específicamente para cada asignación de común acuerdo entre el Coordinador de
Proyectos de la UTN y el Gerente de Proyectos de NCripto. Los trabajos de documentación y el tiempo que tome el
personal para elaborar la documentación también serán contabilizados en las horas mensuales de servicio.
Project Management de NCripto implementará el seguimiento de los proyectos, para lo cual deberá documentar.
El Project Management del NCripto presentará un reporte semanal al Coordinador de Proyectos de la UTN con el
avance de cada uno de los proyectos en donde deberá incluir sección de riesgos y plan para mitigarlos, resolverlos
y aceptarlos, según sea el caso. La UTN cuenta con un formato ejecutivo, para mostrar el estatus del Proyecto,
donde se plasman, los avances de actividades relevantes de la semana, riesgos identificados, próximas actividades,
entre otros. Dicho formato de reporte será presentado únicamente al NCripto Adjudicado; sin embargo, el formato
del reporte es perfectible, por lo tanto, el NCripto podrá hacer sugerencias para mejorarlo o bien presentar alguno
que cubra lo mencionado anteriormente, quedando la decisión final a cargo del Coordinador de Proyectos de la
UTN sobre el formato que se utilizará durante la vigencia del contrato.
NCripto deberá contar con un sistema/herramienta de Administración de Proyectos que permita, en forma
automatizada, al menos lo siguiente:
• Generar un reporte de avance de actividades.
• Monitoreo de los niveles de servicio (relacionados al proyecto).
• Alta y seguimiento de garantías (relacionado al proyecto).
NCripto deberá proporcionar al Coordinador de Proyectos de la UTN, durante la vigencia del contrato, acceso a su
sistema/herramienta para dar seguimiento a:
a) Plan de trabajo de cada uno de los proyectos y el avance de estos.
b) Entregables para cada avance, fechas compromiso, responsables y esfuerzo estimado en horas.
c) Principales riesgos e issues.
d) Tareas de ruta crítica.
e) Líneas base de cada proyecto.
f) Monitoreo de indicadores de productividad de desempeño.
13.2.1 Plantilla para la descripción de los componentes del desglose del trabajo.
1 Inyección de SQL.
La documentación deberá incluir las minutas de todas las reuniones con la firma
1.1.1.1
autógrafa de todos los involucrados.
Para el caso de las actividades que hayan sido cerrados en el mes, el Gerente de
Proyectos del NCripto deberá elaborar una carpeta con toda la documentación
1.1.1.2
impresa que corresponda al tipo de avance que se trate (mantenimiento o desarrollo),
de acuerdo con el servicio proporcionado.
NCripto deberá estimar que la transferencia de datos se realice sobre canales seguros
en donde se favorezca el cifrado y la integridad de los datos críticos, confidenciales
sensibles, en concordancia con lo establecido en el MAAGTICSI en lo referente a
seguridad de la información. Asimismo, deberá considerar que los aplicativos de
1.4.1.1 cómputo deben ser construidos de forma modular, basados en una Arquitectura
Orientada a Servicios (SOA), con el propósito de generar aplicaciones reutilizables e
interoperables entre las diversas áreas de la UTN. El desarrollo de aplicativos de
cómputo deberá contar, por lo menos, con un modelo de tres capas: de datos, del
negocio y de presentación.
II. Por ningún motivo salir de las instalaciones de la UTN en ningún medio físico o
electrónico e incluso impreso.
Ejecución del 100% de las actividades del plan de trabajo autorizado sin exceder la
1.5.1.1 fecha límite. Ninguna actividad según plan de trabajo establecido puede exceder el 5%
de retraso en tiempo en la finalización del 100% de las actividades.
I. Entregar un reporte del estado que guarda el servicio que ofreció a la UTN. Este
reporte deberá ser entregado al menos 30 días antes de la finalización del contrato o
en la fecha que resulte de la negociación que realice la UTN con NCripto de acuerdo
1.5.1.1 con las condiciones existentes al final de contrato.
II. Participar en las reuniones que le solicite la UTN con NCripto al final del contrato. En
caso de rescisión del contrato, el NCripto se obliga a cumplir además de lo especificado
en el párrafo anterior de este Anexo Técnico, a mantener la totalidad del personal
hasta que la UTN contrate a un nuevo NCripto para proporcionar el mismo servicio y
se efectúe la transición correspondiente.
Todas las actividades, sean de mantenimiento o de desarrollo, deberán contar con una
garantía válida por NCripto durante la vigencia del contrato, y una vez finalizado éste,
los proyectos tendrán una garantía de hasta 12 meses posteriores. En caso de
detectarse alguna falla (defectos) o falta en los trabajos del proyecto, se solicitará la
aplicación de la garantía. Dichas actividades no serán contabilizadas como trabajos
1.6.2.1 Hora/Hombre que la UTN deba cubrir. Las mencionadas actividades de garantía serán
por cuenta del NCripto. La garantía aplica siempre y cuando el código entregado no
haya sido modificado o alterado en una fecha posterior al término de la solicitud.
Al término del contrato, se establecerá un proceso de atención de garantías que servirá
como base para la resolución de cualquier falla o defecto detectado una vez que se
haya terminado la participación del NCripto.
1.7 Capacitación.
Durante los primeros 30 días naturales anteriores al término del proyecto, NCripto
llevará a cabo sesiones de Inducción para el personal de la UTN adjudicado podrá
asignar al personal que crea conveniente (se sugiere sean los líderes). Dichas sesiones
1.7.1.1 de Inducción tratarán sobre los sistemas que tiene la UTN en producción y
actualización, con la intención de que se familiaricen con las tecnologías, las reglas de
negocio, las áreas usuarias que los utilizan y demás temas relacionados para llevar a
cabo los proyectos de mantenimiento.
13.4Recursos Necesarios
• Personas
• Software
• Hardware
• Equipos
• Edificios e instalaciones
• Suministros
• Materiales
• Otro...>
Recursos humanos:
Project Manager
Líder de proyecto
Auxiliar de proyecto
Programadores (Al menos 2 candidatos)
13.4.1Plan de Recursos
Recursos Humanos
ID del Fecha Fecha Nivel de la
Recurso Habilidad Cantidad
Recurso Inicial Final Habilidad
H.1 10/01/17 20/08/17 Consultor Seguridad Avanzada 2
H.2 10/05/17 20/09/17 Asesor Legal Legislación Intermedia 1
H.3 10/05/17 20/06/17 Formador PM2 Experimentado 2
Otros Recursos
ID del Fecha Fecha
Recurso Características Cantidad
Recurso Inicial Final
M.1 10/01/17 20/08/17 Licencia Dedicada 100
M.2 02/05/17 22/09/17 Ordenador Office 2010 3
M.3 02/05/17 22/09/17 Sala de 30 asientos 1
Formación
ID
Recurso Disponibilidad Comentarios
Recurso
H.1 Consultor 100% Dedicación a tiempo completo.
H.2 Asesor legal 50% Trabaja también en el proyecto xyz.
Contingencias
ID Recurso Recurso Contingencia Comentarios
H.1 Consultor 5 días-persona Contabilizar los riesgos de ejecución.
H.2 Asesor legal 5 días-persona En caso de que haya retrasos en la recepción de una
respuesta del organismo xyz.
M.1 Licencia 10 unidades Para garantizar que nunca se acaben las licencias
para las pruebas.
14.1.1Introducción
Introducción a inyección SQL, se proporciona una visión general de la especificación de recursos sobre el ataque de
inyección booleana. Con el fin de conocer las principales funciones que éste realiza, los datos asociados, factores,
restricciones, supuestos y dependencias que afectan al desarrollo, así como también la manera de mitigar dicho
ataque
Actualizaciones de programas informáticos: Para protegerse contra las vulnerabilidades conocidas y las
correcciones de seguridad, es necesario definir la responsabilidad de mantener actualizados los programas
informáticos utilizados en la aplicación.
Acceso a aplicaciones: El contrato debe abordar el acceso a las aplicaciones relacionadas con el proyecto y establecer
las responsabilidades del proveedor del software y del cliente en cuanto a la protección de estas contra la inyección
SQL.
Acceso a copias de seguridad de datos: Además del acceso a las copias de seguridad, también es importante definir
quién tiene acceso a los datos almacenados en las copias de seguridad. Esto puede incluir restricciones de acceso y
la implementación de medidas de seguridad adecuadas para proteger la confidencialidad e integridad de los datos
almacenados.
Estos puntos deben ser discutidos y negociados al firmar el contrato, y es recomendable contar con la asesoría de
expertos en seguridad informática y asuntos legales para garantizar que se aborden adecuadamente en los términos
del contrato.
14.3Método de Contratación
14.3.1Método
Se han identificado las siguientes actividades para que el proceso de contratación sea desarrollado de manera
eficiente
Revisar la metodología de evaluación, así como los procedimientos de prueba para asegurar que cada fase de
prueba es correctamente preparada
Ayudar a asegurar que cada requisito se implementa de forma correcta
Colaborar en la preparación de actividades de pruebas del sistema para asegurar que se adecuan a los planes y
procedimientos de prueba.
14.4Criterios de Evaluación
14.4.1Criterios
Las evaluaciones que se realizara, a los procedimientos que deben seguirse para la confección de los entregables y
los procedimientos para comunicar a los responsables de los defectos detectados en los entregables y del
seguimiento que se debe ser realizado para lograr la corrección de estos. Las actividades definidas corresponden a:
- Revisión de Entregables.
- Revisión al ajuste del Proyecto.
- Revisión Técnica.
- Documentación crítica
14.4.2Capacidades Técnicas
1.Capacidad de implementar medidas de seguridad: Los contratistas deben tener experiencia y conocimientos en
la implementación de medidas de seguridad efectivas para prevenir la inyección SQL. Esto implica la capacidad de
desarrollar aplicaciones con filtrado y validación de datos, uso de consultas parametrizadas o sentencias
preparadas, y adopción de buenas prácticas de codificación segura.
2.Conocimiento de las mejores prácticas de seguridad: Es importante que los contratistas estén familiarizados con
las mejores prácticas de seguridad relacionadas con la inyección SQL. Esto incluye la comprensión de las técnicas
de ataque y las contramedidas correspondientes, así como la capacidad de mantenerse actualizados sobre las
últimas tendencias y amenazas en materia de seguridad.
3.Experiencia en pruebas de seguridad: Los contratistas deben tener habilidades y experiencia en la realización de
pruebas de seguridad, incluidas pruebas de penetración y pruebas de inyección SQL. Esto les permitirá identificar
posibles vulnerabilidades y debilidades en el sistema y tomar medidas para corregirlas antes de la implementación.
1.Escalabilidad en el manejo de usuarios: El sistema debe tener la capacidad de manejar un número creciente de
usuarios concurrentes. Esto implica evaluar la capacidad de carga, la optimización del rendimiento y la escalabilidad
horizontal o vertical del sistema.
2.Escalabilidad en el manejo de datos: El sistema debe estar preparado para manejar un volumen creciente de datos
a lo largo del tiempo. Esto implica evaluar la capacidad de almacenamiento, la eficiencia de las consultas y el diseño
de la base de datos para garantizar un rendimiento óptimo incluso con grandes volúmenes de datos.
14.5.1Interfaz del Contratista
Todas las reuniones o tratos que se realizarán durante la elaboración del proyecto estarán a cargo del proyecto
mánager de NCripto.
14.5.2Responsabilidad de la Firma
El equipo NCripto de con el proyecto de inyección SQL confirma que toda aprobación revisión y alteración del
contrato queda a cargo del proyecto manager para que sea formalmente responsable del cumplimiento del mismo
por ambas partes.
Definir medidas de protección: Se deben establecer medidas de protección efectivas para prevenir la inyección SQL.
Esto puede incluir la implementación de mecanismos de validación y filtrado de entrada de datos, la adopción de
prácticas de codificación segura, el uso de consultas parametrizadas o el empleo de marcos de desarrollo que
ofrezcan protección automática contra la inyección SQL.
Mantener la capacitación y concientización: La gestión de requisitos también implica capacitar al personal sobre las
mejores prácticas de seguridad y concientizar sobre los riesgos asociados con la inyección SQL. Esto ayudará a
garantizar que todos los miembros del equipo sean conscientes de las prácticas de seguridad adecuadas y estén
preparados para mitigar los riesgos asociados con este tipo de vulnerabilidad.
El proceso de gestión de requisitos es fundamental para abordar la prevención de la inyección SQL de manera
efectiva.
4.Pruebas de seguridad:
a. Realizar pruebas de seguridad regulares para identificar posibles vulnerabilidades de inyección SQL.
b. Utilizar herramientas y técnicas de pruebas de penetración para simular ataques de inyección SQL y evaluar la
resistencia del sistema.
c. Realizar pruebas de estrés y pruebas de caja negra para evaluar la seguridad y la respuesta del sistema frente a
diferentes escenarios de inyección SQL.
3.Mantenimiento continuo:
a. Mantenerse actualizado sobre las últimas amenazas y técnicas de inyección SQL, y ajustar continuamente las
medidas de protección en consecuencia.
b. Realizar revisiones periódicas de los requisitos de seguridad y actualizarlos según sea necesario.
• Por Resolver: Si hay un problema, un requerimiento puede pasar al estado "Por Resolver" en cualquier
etapa del ciclo de vida de los requisitos. Las razones de este estado pueden ser: que el requisito no esté
bien documentado, o que sea inconsistente con otro requisito. Otra razón es que el requisito sólo pasó la
validación parcialmente. Después de resolver los problemas, un requisito puede volver al estado
Especificado. Si no se puede resolver un problema, un requisito puede pasar al estado de Rechazado.
• Rechazado: Un requisito puede ser rechazado por diferentes razones. Algunos ejemplos son: El requisito
es obsoleto, está fuera de alcance, no es factible, se ha pospuesto (a una fase posterior del proyecto, o
para otro proyecto), se ha fusionado con otro requisito, y un requisito puede ser identificado como un
requisito duplicado y, por lo tanto, ser rechazado.
Tormenta de ideas: Organizar sesiones de tormenta de ideas con el equipo de desarrollo para generar ideas y
soluciones creativas para prevenir la inyección SQL.
Talleres: Realizar talleres de trabajo con el equipo de desarrollo y los stakeholders para identificar y definir
requisitos específicos relacionados con la seguridad y la prevención de la inyección SQL.
Observación: Observar el funcionamiento del sistema y las prácticas de desarrollo existentes para identificar
posibles puntos vulnerables a la inyección SQL y recopilar requisitos basados en esas observaciones.
Prototipado: Crear prototipos de funcionalidades o interfaces relacionadas con la prevención de la inyección SQL
para obtener retroalimentación y validar los requisitos con los stakeholders.
Priorización MoSCoW: Utilizar la técnica MoSCoW (Must have, Should have, Could have, Won't have) para priorizar
los requisitos relacionados con la prevención de la inyección SQL, definiendo qué funcionalidades son
imprescindibles, importantes o pueden posponerse.
Análisis de riesgos: Realizar un análisis de riesgos específico para la inyección SQL, identificando y evaluando los
riesgos asociados con diferentes escenarios y requisitos de seguridad.
Análisis de casos de uso: Utilizar el análisis de casos de uso para identificar los diferentes escenarios en los que se
podrían producir ataques de inyección SQL y, a partir de ahí, establecer requisitos específicos para prevenirlos.
Evaluación de herramientas y tecnologías: Realizar una evaluación de herramientas y tecnologías disponibles que
ayuden a prevenir la inyección SQL, considerando requisitos técnicos y de seguridad para la selección adecuada.
Se utilizarán las siguientes herramientas para la gestión de los requisitos:
• Documentación de requisitos
• Matriz de trazabilidad de los requisitos.
• …
Documentación de requisitos: Documentar de manera clara y concisa los requisitos relacionados con la prevención
de la inyección SQL, incluyendo los requisitos de seguridad, validación de entrada de datos y prácticas de codificación
segura.
Matriz de trazabilidad de los requisitos: Crear una matriz de trazabilidad que muestre la relación entre los requisitos
identificados y las medidas de protección implementadas para prevenir la inyección SQL. Esto permite rastrear y
validar la implementación efectiva de los requisitos en el sistema.
Revisión de código: Realizar revisiones de código enfocadas en identificar posibles vulnerabilidades de inyección SQL
y garantizar que se sigan las mejores prácticas de codificación segura en el desarrollo de software.
Auditorías de seguridad: Realizar auditorías regulares de seguridad que incluyan pruebas específicas para detectar
y prevenir la inyección SQL en el sistema. Estas auditorías pueden ser realizadas por equipos de seguridad internos
o por expertos externos en seguridad de aplicaciones.
Modelado de amenazas: Realizar un análisis de modelado de amenazas específico para la inyección SQL,
identificando los diferentes escenarios de ataque y las posibles contramedidas para prevenirlos. Esto ayuda a
establecer requisitos de seguridad sólidos.
Implementación y validación:
Implementar el cambio en el sistema, siguiendo las prácticas de desarrollo y seguridad adecuadas.
Realizar pruebas exhaustivas para validar la efectividad del cambio en la prevención de la inyección SQL.
Verificar que los requisitos modificados se hayan implementado correctamente y cumplan con los criterios de
aceptación establecidos.
Comunicación y documentación:
Comunicar el cambio a todas las partes interesadas relevantes, asegurándose de que estén informadas sobre los
cambios realizados en los requisitos relacionados con la prevención de la inyección SQL.
Actualizar la documentación de requisitos existente para reflejar los cambios realizados y mantener un registro
actualizado de los requisitos modificados.
16.1. Introducción
• Aprovechar las capacidades de nuestros colaboradores. Al estandarizar los procesos, podemos dividir las tareas
y capacitar a cada empleado en su puesto específico, así como determinar nuevas tareas que cada uno pueda
realizar de acuerdo con sus capacidades.
• Edifica la metodología, los estándares, las herramientas y las técnicas utilizadas para apoyar la gestión de
cambios del proyecto.
Change
Formulario
deRequest
Solicitud
1. Identificación del Cambio delForm
Cambio
RegistroLog de
Change
Cambios
Registro de
3. Aprobación del Cambio Cambios
No
Sí
Plan de Trabajo
del Proyecto!
4. Implementación del Cambio Registros
del Proyecto Otros
Planes del
Proyecto.
Registro de
5. Control del Cambio Cambios
Informes
Change Log de
Proyecto
Estado Esperando aprobación: use esto para iniciar la aprobación. Antes de hacer esto,
asegúrese de que la investigación está completa y que las estimaciones mostradas
son correctas.
Fecha de identificación (o
27/06/2023
fecha de envío)
Magnitud 4=Alto
Prioridad 5=Muy alto
Fecha de entrega objetivo 05/07/2023
Solicitud de Cambio
Prioridad 4 = Alto
Permitir que cualquier dispositivo se pueda usar, ya sea un móvil, una tableta o una
Situación actual
computadora.
El usuario pueda interactuar con el producto de manera natural para que su
Situación deseada
experiencia sea cómoda y agradable.
La interfaz es el nexo que facilita la comunicación entre el humano y la
computadora.
Impacto o riesgos Es el conjunto de todos los componentes de un sistema interactivo que
proporcionan información y controles para que el usuario realice tareas específicas
con el sistema.
Fuera de alcance – N/A
Los cambios serán revisados y evaluados durante las reuniones de control de cambios, como se describe en el Plan
de Gestión de las Comunicaciones. Durante las reuniones de control de cambios, las actividades de
recomendación se proponen, discuten, priorizan y registran en el Registro de Cambios, junto con los comentarios
del director de Proyecto o de otras partes interesadas.
Gestión de Riesgos
Riesgos significativos identificados y que se produjeron realmente:
Vulnerabilidades desconocidas: Se identificaron y se tuvo en cuenta la posibilidad de que surgieran nuevas
vulnerabilidades a lo largo del proyecto. Durante la ejecución, se descubrieron algunas vulnerabilidades que no se
habían previsto inicialmente, pero se logró abordarlas de manera efectiva mediante ajustes en el alcance y la
implementación de soluciones de seguridad adicionales.
Falta de experiencia en seguridad: Se reconoció la falta de experiencia en seguridad en el equipo y se identificó
como un riesgo potencial. Durante el proyecto, se enfrentaron desafíos relacionados con la implementación de
medidas de seguridad adecuadas. Sin embargo, se logró superar este riesgo al contratar expertos en seguridad y
recibir capacitación adicional para fortalecer los conocimientos y habilidades del equipo.
Riesgos significativos que se produjeron, pero no se identificaron:
Impacto de la interdependencia: Aunque se tuvo en cuenta la interdependencia de las diferentes partes del sistema,
se produjeron algunos retrasos y complicaciones debido a factores inesperados. Este riesgo no se había identificado
explícitamente y, como resultado, hubo cierta falta de preparación para abordar estos problemas. Sin embargo, se
tomaron medidas correctivas para minimizar el impacto en el proyecto.
Actividades de comunicación que podrían haberse hecho mejor o deberían haberse evitado:
Falta de comunicación proactiva sobre cambios y desafíos: En algunos casos, hubo una falta de comunicación
proactiva sobre los cambios en el alcance, los desafíos técnicos y los posibles impactos en el proyecto. Esto generó
incertidumbre y desconcierto entre las partes interesadas y podría haberse evitado con una comunicación más
anticipada y transparente.
No adaptarse a las preferencias de comunicación de las partes interesadas: No todas las partes interesadas tienen
las mismas preferencias de comunicación. Algunas pueden preferir reuniones cara a cara, mientras que otras
pueden preferir comunicación por correo electrónico o mensajería instantánea. No adaptarse a estas preferencias
puede llevar a una comunicación menos efectiva y dificultar la colaboración. Se debería haber realizado un esfuerzo
para identificar y adaptarse a las preferencias de comunicación de las partes interesadas.
Aceptación de Entregables
Entregables significativos:
Sistema de seguridad implementado: El principal entregable significativo fue el sistema de seguridad implementado
para prevenir y mitigar la inyección SQL. Este entregable incluyó la implementación de medidas de seguridad
técnicas y procesos específicos para garantizar la protección de los sistemas y datos contra este tipo de
vulnerabilidad.
Informes de pruebas de seguridad: Otro entregable significativo fueron los informes de pruebas de seguridad
realizadas para evaluar la efectividad de las medidas implementadas. Estos informes proporcionaron una
evaluación detallada de las fortalezas y debilidades del sistema en términos de seguridad, y ayudaron a identificar
posibles áreas de mejora.
Eficacia del plan de aceptación de los entregables:
El plan de aceptación de los entregables fue en su mayoría eficaz en asegurar que los entregables cumplieran con
los requisitos y estándares establecidos. Se estableció un proceso de aceptación formal que involucraba a las partes
interesadas clave, como los usuarios finales y los equipos de seguridad. Se definieron criterios claros de aceptación
y se realizaron pruebas y revisiones exhaustivas para verificar el cumplimiento de los requisitos.
Cuestiones específicas identificadas y discutidas:
Requisitos adicionales identificados durante la aceptación: Durante la aceptación de los entregables, se
identificaron algunos requisitos adicionales que no se habían considerado inicialmente. Estos requisitos surgieron
como resultado de la evaluación de los entregables y la retroalimentación de las partes interesadas. Se tuvo que
adaptar el plan de aceptación y realizar ajustes en los entregables para abordar estos nuevos requisitos.
Evaluación subjetiva de los entregables: En algunos casos, la evaluación de los entregables implicaba cierto grado
de subjetividad. Esto generó discrepancias de opinión entre las partes interesadas y dificultó la toma de decisiones.
Se debería haber establecido un proceso más objetivo para evaluar y aceptar los entregables, utilizando criterios
claros y medibles.
Coordinación de las partes interesadas: El equipo central del proyecto mantuvo una comunicación abierta y regular
con las partes interesadas, lo que permitió la alineación de expectativas y la gestión de cualquier conflicto o
problema de manera oportuna. Se tomaron medidas para garantizar que las partes interesadas estuvieran
informadas y comprometidas en todo momento.
Cuestiones específicas identificadas y discutidas:
Gestión del alcance: Se identificaron desafíos en la gestión del alcance del proyecto, particularmente en relación
con la identificación y gestión de cambios y requisitos adicionales. Se requirió un mayor enfoque en la evaluación y
la toma de decisiones para garantizar que los cambios y requisitos adicionales se abordaran de manera adecuada y
oportuna.
Distribución de responsabilidades: Hubo casos en los que la distribución de responsabilidades dentro del equipo
central del proyecto no fue óptima. Algunos miembros del equipo podrían haber asumido una carga de trabajo
desequilibrada o puede haber habido superposiciones en las responsabilidades. Una distribución de
responsabilidades más equitativa y clara habría mejorado la eficacia del equipo central del proyecto.
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<input id="usuario" runat="server" type="text" placeholder="Usuario" />
<br />
<input id="password" runat="server" type="password" placeholder="Password" />
<br />
<asp:Button ID="btnIngresar" runat="server" Text="Ingresar" OnClick="btnIngresar_Click" />
</div>
</form>
</body>
</html>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h1>BIENVENIDOOOOOOOOOOOOOOOOO</h1>
</div>
</form>
</body>
</html>
CONEXIÓN BASE DE DATOS Y CONDICIONES
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
namespace SQLINYECCION
{
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (dr.Read())
{
userExist = true;
}
if (userExist)
{
Response.Redirect("Intranet.aspx", true);
}
else
{
ScriptManager.RegisterStartupScript(this, this.GetType(),
"alert",
"alert('Usuario o password incorrectos.');",
true);
return;
}
cn.Close();
}
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<!--
-->
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.7.2" />
<httpRuntime targetFramework="4.7.2" />
</system.web>
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs"
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider,
Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default
/nowarn:1659;1699;1701" />
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider,
Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:41008
/define:_MYTYPE=\"Web\" /optionInfer+" />
</compilers>
</system.codedom>
<connectionStrings>
<add name="conDevelofer" connectionString="Data Source=DESKTOP-4B0EHJR;Initial
Catalog=Develofer;Integrated Security=true;"/>
</connectionStrings>
</configuration>
INYECCIÓN DE SQL
Justificación o Propósito
En este proyecto tiene como propósito definir las especificaciones funcionales, no funcionales para el
desarrollo de ataque de ciberseguridad que permitirá gestionar y autenticar al usuario. Desarrollado por
Ingenieros en formación de la carrera de Ingeniería en Redes Inteligentes y Ciberseguridad dirigido a la alta
dirección de la Universidad Tecnológica de Nezahualcóyotl.
Objetivo
Implementar un software para que mitigar ataques de inyección SQL booleano, limitar accesos a página web
vía intranet, mantener servicio de SQL activo, tener niveles de usuarios que permitirá limitar las
modificaciones a BD SQL.
La inyección SQL que proporciona una visión general de la especificación de recursos sobre
el ataque de inyección booleana. Con el fin de conocer las principales funciones realiza, los
datos asociados y los factores, restricciones, supuestos y dependencias que afectan al
desarrollo, así como también la manera de mitigar dicho ataque.
Datos
Empresa / Organización NCrypto
Proyecto INYECCIÓN SQL
Fecha de inicio 10/07/2023
Cliente Universidad Tecnológica de Nezahualcóyotl
Patrocinador principal
Gerente de Proyecto Francisco Nicolas Ortiz
Patrocinador / Patrocinadores
Por medio de la presente, se da cierre formal al proyecto, por las razonesespecificadas en la siguiente
ficha:
Marcar con una “X” la razón de cierre:
Se autoriza al Gerente de Proyecto a continuar con el cierre formal del proyecto ofase, lo cual deberá
incluir:
Una vez concluido el proceso de cierre, el Patrocinador (Sponsor) del proyectodeberá ser notificado
para que el Gerente de Proyectos sea liberado y reasignado.
37. APROBACIONES
Fecha Firma
Patrocinador
Universidad Tecnológica de Nezahualcóyotl 11/07/2023