SlideShare una empresa de Scribd logo
1 de 5
Desarrollo de software seguro
Medidas a tomar en cuenta.

Unas de las grandes necesidades en el desarrollo de software web/desktop es la
falta de seguridad. La seguridad en un software es clave principal para la
sostenibilidad y ciclo de vida del mismo pues nadie confía en las inseguridades que
nos ofrecen.
En esta guía vamos a resumir los principales puntos y herramientas necesarias para
el desarrollo de un software seguro tanto para el ambiente web como para
aplicaciones de escritorio y/o aplicaciones de software libre, todo esto guiado a un
entorno empresarial, administrativo y de madurez.

Algunas preguntas que debemos hacernos cuando vamos a construir un software
seguro.
• ¿Diseñado, construido y probado para su seguridad?
• ¿Continúa ejecutándose correctamente bajo ataque?
• ¿Diseñado con el fallo en mente?
¿Qué debemos conseguir para crear un software seguro?
• Adoptar un modelo de madurez de desarrollo de software
• Debemos considerar la seguridad del software desde el principio hasta el final

Todas estas preguntas nos guían a un solo camino, Modelos de seguridad y me refiero en
plural a este porque no solo nos debemos guiar por un solo modelo sino que debemos
explorar los mejores modelos para saber cuál es el que más se ajusta a nuestras
necesidades para hacer una buena práctica del desarrollo de software seguro.
S-SDLC (Secure Software Development Life Cycle) Como clave de para el desarrollo
de software seguro.
¿Qué es S-SDLC?
Ciclo de Vida de Desarrollo de Software seguro describe las fases del ciclo del software y el
orden en que esas fases se ejecutan de acuerdo a los requerimientos del negocio. Con el
fin de implementar las aplicaciones que se requieren para proporcionar un procesamiento
seguro.

Esquema SDLC
Otras Iniciativas de seguridad en el desarrollo de software

Microsoft SDL
El modelo de optimización de SDL está estructurado en torno a cinco áreas de capacidades
que, en líneas generales, se corresponden con las fases del ciclo de vida de desarrollo de
software:

1) Formación, directivas y capacidades organizativas
2) Requisitos y diseño
3) Implementación
4) Comprobación
5) Lanzamiento y respuesta
¿Donde aplicar SDL?
1) Aplicaciones implementadas en un entorno empresarial
2) Aplicaciones que procesan información de identificación personal
3) Aplicaciones que se comunican frecuentemente a través de Internet u otras redes

OWASP CLASP
Open Web Application Security Project (Proyecto abierto de seguridad de aplicaciones web
),
Es un proyecto de código abierto dedicado a determinar y combatir las causas que hacen
que el software sea inseguro
¿Qué nos ofrece OWASP?
• Búsqueda y lucha contra las causas de software inseguro
• Creación de herramientas, documentación y estándares
• Conferencias
• Recursos gratuitos y de código abierto
• www.owasp.org
Medidas estándar que debemos tomar para el desarrollo de software seguro

1. Para desarrollar una aplicación segura debemos considerar los siguientes aspectos
 Control de la entrada: validar todas las entradas.
 Gestión de memoria: desbordamiento de buffers.
 Estructura interna y diseño del programa.
 Llamadas a recursos externos: bibliotecas, scripts.
 Control de la salida: formato, restricciones.
 Problemas de los lenguajes de programación.
 Otros: algoritmos criptográficos, de autentificación.

2. Control de la entrada
 Hay que validar todas las entradas que vienen de fuentes no fiables.
 Se debe determinar qué es legal y rechazar lo que no lo sea.
 Siempre se debe verificar que algo es legal, la aproximación contraria (detección de
entradas erróneas) puede fallar.
 El sistema se debe verificar generando entradas erróneas desconocidas.
 Hay que limitar la longitud máxima de la entrada

3. Vigilar caracteres especiales
 Caracteres de control.
 Caracteres especiales para el Shell, SQL, etc.
 Delimitadores (p. ej. tabuladores, comas,:, etc.).
 Verificar la codificación y decodificación de URLs y la validez de los juegos de
caracteres.
 Minimizar las decodificaciones; no decodificar más de una vez de modo
inndecesario.
 Números: verificar máximos, mínimos y ceros.

4. Validación de otros tipos de datos
 Direcciones de correo: ver RFC 2822 y 822.
 Nombres de fichero: Omitir caracteres especiales (/, 'n', '”', ...), omitir '../'.
 Expresiones regulares.
 Cookies: comprobar dominios.
 HTML/XML: prevenir cross-posting.
 URI/URL: validar antes de procesar.

Más contenido relacionado

La actualidad más candente

Análisis de requerimientos
Análisis de requerimientosAnálisis de requerimientos
Análisis de requerimientosGustavo Araque
 
Calidad en el desarrollo de software
Calidad en el desarrollo de softwareCalidad en el desarrollo de software
Calidad en el desarrollo de softwareLupithaa Guerrero
 
Introducción a Programación Orientada a Objetos (OOP): Clases y Objetos
Introducción a  Programación Orientada a Objetos (OOP): Clases y ObjetosIntroducción a  Programación Orientada a Objetos (OOP): Clases y Objetos
Introducción a Programación Orientada a Objetos (OOP): Clases y ObjetosKudos S.A.S
 
Metodologías de programación orientado a eventos y distribuida
Metodologías de programación orientado a eventos y distribuidaMetodologías de programación orientado a eventos y distribuida
Metodologías de programación orientado a eventos y distribuidaSergio Olivares
 
Elicitacion de requerimientos
Elicitacion de requerimientosElicitacion de requerimientos
Elicitacion de requerimientosTensor
 
Aplicaciones Distribuídas
Aplicaciones DistribuídasAplicaciones Distribuídas
Aplicaciones DistribuídasJavierialv
 
Herramientas CASE
Herramientas CASEHerramientas CASE
Herramientas CASEI R
 
Infraestructura de clave pública con Software Libre
Infraestructura de clave pública con Software LibreInfraestructura de clave pública con Software Libre
Infraestructura de clave pública con Software LibreToni de la Fuente
 
Ingeniería de requisitos y de requerimientos
Ingeniería de requisitos y de requerimientosIngeniería de requisitos y de requerimientos
Ingeniería de requisitos y de requerimientosunrated999
 
Sistemas Operativos Online
Sistemas Operativos OnlineSistemas Operativos Online
Sistemas Operativos OnlineUAGro Virtual
 
Indexacion Y Asociacion
Indexacion Y AsociacionIndexacion Y Asociacion
Indexacion Y Asociacionjuliangalvez
 
Gestión de riesgos de seguridad de la información - ISO 27005
Gestión de riesgos de seguridad de la información - ISO 27005Gestión de riesgos de seguridad de la información - ISO 27005
Gestión de riesgos de seguridad de la información - ISO 27005Maricarmen García de Ureña
 
Otras relaciones y modelos bases de datos
Otras relaciones y modelos bases de datosOtras relaciones y modelos bases de datos
Otras relaciones y modelos bases de datosEmer Gio
 
Arquitectura multicapa
Arquitectura multicapaArquitectura multicapa
Arquitectura multicapaHugo Herrera
 
Sistemas Distribuidos basados en la Web
Sistemas Distribuidos basados en la WebSistemas Distribuidos basados en la Web
Sistemas Distribuidos basados en la WebTensor
 

La actualidad más candente (20)

Análisis de requerimientos
Análisis de requerimientosAnálisis de requerimientos
Análisis de requerimientos
 
Calidad en el desarrollo de software
Calidad en el desarrollo de softwareCalidad en el desarrollo de software
Calidad en el desarrollo de software
 
Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)
 
Introducción a Programación Orientada a Objetos (OOP): Clases y Objetos
Introducción a  Programación Orientada a Objetos (OOP): Clases y ObjetosIntroducción a  Programación Orientada a Objetos (OOP): Clases y Objetos
Introducción a Programación Orientada a Objetos (OOP): Clases y Objetos
 
Metodologías de programación orientado a eventos y distribuida
Metodologías de programación orientado a eventos y distribuidaMetodologías de programación orientado a eventos y distribuida
Metodologías de programación orientado a eventos y distribuida
 
Elicitacion de requerimientos
Elicitacion de requerimientosElicitacion de requerimientos
Elicitacion de requerimientos
 
Gestion de Seguridad informatica
Gestion de Seguridad informaticaGestion de Seguridad informatica
Gestion de Seguridad informatica
 
Aplicaciones Distribuídas
Aplicaciones DistribuídasAplicaciones Distribuídas
Aplicaciones Distribuídas
 
Herramientas CASE
Herramientas CASEHerramientas CASE
Herramientas CASE
 
Infraestructura de clave pública con Software Libre
Infraestructura de clave pública con Software LibreInfraestructura de clave pública con Software Libre
Infraestructura de clave pública con Software Libre
 
Ingeniería de requisitos y de requerimientos
Ingeniería de requisitos y de requerimientosIngeniería de requisitos y de requerimientos
Ingeniería de requisitos y de requerimientos
 
Sistemas Operativos Online
Sistemas Operativos OnlineSistemas Operativos Online
Sistemas Operativos Online
 
Indexacion Y Asociacion
Indexacion Y AsociacionIndexacion Y Asociacion
Indexacion Y Asociacion
 
Gestión de riesgos de seguridad de la información - ISO 27005
Gestión de riesgos de seguridad de la información - ISO 27005Gestión de riesgos de seguridad de la información - ISO 27005
Gestión de riesgos de seguridad de la información - ISO 27005
 
Calidad Del Software
Calidad Del SoftwareCalidad Del Software
Calidad Del Software
 
Otras relaciones y modelos bases de datos
Otras relaciones y modelos bases de datosOtras relaciones y modelos bases de datos
Otras relaciones y modelos bases de datos
 
Introduccion a la ingenieria de software
Introduccion a la ingenieria de softwareIntroduccion a la ingenieria de software
Introduccion a la ingenieria de software
 
Hacking ético
Hacking éticoHacking ético
Hacking ético
 
Arquitectura multicapa
Arquitectura multicapaArquitectura multicapa
Arquitectura multicapa
 
Sistemas Distribuidos basados en la Web
Sistemas Distribuidos basados en la WebSistemas Distribuidos basados en la Web
Sistemas Distribuidos basados en la Web
 

Destacado

Cómo redireccionar mi correo gmail
Cómo redireccionar mi correo gmailCómo redireccionar mi correo gmail
Cómo redireccionar mi correo gmailimathings
 
Presentación reconocimiento ingresos
Presentación reconocimiento ingresosPresentación reconocimiento ingresos
Presentación reconocimiento ingresosGabriel Budiño
 
Infraestructura de medición avanzada (AMI) en las redes inteligentes
Infraestructura de medición avanzada (AMI) en las redes inteligentesInfraestructura de medición avanzada (AMI) en las redes inteligentes
Infraestructura de medición avanzada (AMI) en las redes inteligentesAlianza FiiDEM, AC
 
Cuadro de area biblioteca universitaria
Cuadro de area biblioteca universitariaCuadro de area biblioteca universitaria
Cuadro de area biblioteca universitariatatiana130884
 
Tecnologia de Nube
Tecnologia de NubeTecnologia de Nube
Tecnologia de Nubemairod1002
 
Explicacion de las reacciones de los tubos
Explicacion de las reacciones de los tubosExplicacion de las reacciones de los tubos
Explicacion de las reacciones de los tubosNatalia Montenegro
 
Sistema de impresion ctp..
Sistema de impresion ctp..Sistema de impresion ctp..
Sistema de impresion ctp..Carlos G Mora
 
Crear tus propios Comics
Crear tus propios ComicsCrear tus propios Comics
Crear tus propios Comicsmdlcarmenp
 
Medicion de nivel
Medicion de nivelMedicion de nivel
Medicion de niveljoanarceh
 
Sistema de unidades patrones y calibracion
Sistema de unidades patrones y calibracionSistema de unidades patrones y calibracion
Sistema de unidades patrones y calibracionIng Miguel Angel Reyes
 
Ppt construcción de un sitio web
Ppt construcción de un sitio webPpt construcción de un sitio web
Ppt construcción de un sitio webNorber Barraza
 
Componentes de un equipo de resonancia magnética
Componentes de un equipo de resonancia magnéticaComponentes de un equipo de resonancia magnética
Componentes de un equipo de resonancia magnéticamdpmadpmadp
 
Seguridad en sitios web
Seguridad en sitios webSeguridad en sitios web
Seguridad en sitios webUTPL
 

Destacado (20)

Cómo redireccionar mi correo gmail
Cómo redireccionar mi correo gmailCómo redireccionar mi correo gmail
Cómo redireccionar mi correo gmail
 
Presentación reconocimiento ingresos
Presentación reconocimiento ingresosPresentación reconocimiento ingresos
Presentación reconocimiento ingresos
 
Servicios multimedia
Servicios multimediaServicios multimedia
Servicios multimedia
 
Infraestructura de medición avanzada (AMI) en las redes inteligentes
Infraestructura de medición avanzada (AMI) en las redes inteligentesInfraestructura de medición avanzada (AMI) en las redes inteligentes
Infraestructura de medición avanzada (AMI) en las redes inteligentes
 
Gases arteriales
Gases arteriales Gases arteriales
Gases arteriales
 
Cuadro de area biblioteca universitaria
Cuadro de area biblioteca universitariaCuadro de area biblioteca universitaria
Cuadro de area biblioteca universitaria
 
Tecnologia de Nube
Tecnologia de NubeTecnologia de Nube
Tecnologia de Nube
 
Explicacion de las reacciones de los tubos
Explicacion de las reacciones de los tubosExplicacion de las reacciones de los tubos
Explicacion de las reacciones de los tubos
 
Mobile marketing y apps
Mobile marketing y appsMobile marketing y apps
Mobile marketing y apps
 
Sistema de impresion ctp..
Sistema de impresion ctp..Sistema de impresion ctp..
Sistema de impresion ctp..
 
Registrador
Registrador Registrador
Registrador
 
Crear tus propios Comics
Crear tus propios ComicsCrear tus propios Comics
Crear tus propios Comics
 
Preparacion de superficies metalicas
Preparacion de superficies metalicasPreparacion de superficies metalicas
Preparacion de superficies metalicas
 
Clases De Acciones
Clases De AccionesClases De Acciones
Clases De Acciones
 
Medicion de nivel
Medicion de nivelMedicion de nivel
Medicion de nivel
 
Sistema de unidades patrones y calibracion
Sistema de unidades patrones y calibracionSistema de unidades patrones y calibracion
Sistema de unidades patrones y calibracion
 
Ppt construcción de un sitio web
Ppt construcción de un sitio webPpt construcción de un sitio web
Ppt construcción de un sitio web
 
Componentes de un equipo de resonancia magnética
Componentes de un equipo de resonancia magnéticaComponentes de un equipo de resonancia magnética
Componentes de un equipo de resonancia magnética
 
Ensayos clinicos fase i, ii y iii
Ensayos clinicos fase i, ii y iiiEnsayos clinicos fase i, ii y iii
Ensayos clinicos fase i, ii y iii
 
Seguridad en sitios web
Seguridad en sitios webSeguridad en sitios web
Seguridad en sitios web
 

Similar a Guia para desarrollo de software seguro

SeccióN De TéCnicas De IngenieríA De Software(2007)
SeccióN De TéCnicas  De IngenieríA De Software(2007)SeccióN De TéCnicas  De IngenieríA De Software(2007)
SeccióN De TéCnicas De IngenieríA De Software(2007)denny osael lopez medina
 
Test de penetración
Test de penetraciónTest de penetración
Test de penetraciónJSACTMMusic
 
Inenieria de software - modelos y metodologias
Inenieria de software - modelos y metodologiasInenieria de software - modelos y metodologias
Inenieria de software - modelos y metodologiaslaudyt
 
Development of Secure Applications
Development of Secure ApplicationsDevelopment of Secure Applications
Development of Secure ApplicationsRoger CARHUATOCTO
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de softwaremichellchia11
 
Proceso y diseño de un software
Proceso y diseño  de un   softwareProceso y diseño  de un   software
Proceso y diseño de un softwarejafigueroa26
 
Proceso y diseño de un software
Proceso y diseño  de un   softwareProceso y diseño  de un   software
Proceso y diseño de un softwareCESARCONTRERAS009
 
Proceso y diseño de un software
Proceso y diseño  de un   softwareProceso y diseño  de un   software
Proceso y diseño de un softwareCESARCONTRERAS009
 
Proceso y diseño de un software
Proceso y diseño  de un   softwareProceso y diseño  de un   software
Proceso y diseño de un softwarejafigueroa26
 
Seguridad en el ciclo de desarrollo del software
Seguridad en el ciclo de desarrollo del softwareSeguridad en el ciclo de desarrollo del software
Seguridad en el ciclo de desarrollo del softwareAnel Sosa
 
Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...
Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...
Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...Optimyth Software
 
Introduccion a la Ingenieria en Sistemas de Informacion, Examen Dos, Guia & R...
Introduccion a la Ingenieria en Sistemas de Informacion, Examen Dos, Guia & R...Introduccion a la Ingenieria en Sistemas de Informacion, Examen Dos, Guia & R...
Introduccion a la Ingenieria en Sistemas de Informacion, Examen Dos, Guia & R...Osver Fernandez V
 
Ingenieria del Software: Software a medida y generico.
Ingenieria del Software: Software a medida y generico.Ingenieria del Software: Software a medida y generico.
Ingenieria del Software: Software a medida y generico.usserp584
 
Ingenieria de software final.
Ingenieria de software final.Ingenieria de software final.
Ingenieria de software final.Andrés Sorto
 
Ingenieria de software final.
Ingenieria de software final.Ingenieria de software final.
Ingenieria de software final.Andrés Sorto
 
Implementando owasp samm en latam
Implementando owasp samm en latamImplementando owasp samm en latam
Implementando owasp samm en latamMateo Martinez
 

Similar a Guia para desarrollo de software seguro (20)

SeccióN De TéCnicas De IngenieríA De Software(2007)
SeccióN De TéCnicas  De IngenieríA De Software(2007)SeccióN De TéCnicas  De IngenieríA De Software(2007)
SeccióN De TéCnicas De IngenieríA De Software(2007)
 
Vicky
VickyVicky
Vicky
 
Test de penetración
Test de penetraciónTest de penetración
Test de penetración
 
Inenieria de software - modelos y metodologias
Inenieria de software - modelos y metodologiasInenieria de software - modelos y metodologias
Inenieria de software - modelos y metodologias
 
Development of Secure Applications
Development of Secure ApplicationsDevelopment of Secure Applications
Development of Secure Applications
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
 
Cuestionario examen
Cuestionario examenCuestionario examen
Cuestionario examen
 
Proceso y diseño de un software
Proceso y diseño  de un   softwareProceso y diseño  de un   software
Proceso y diseño de un software
 
Proceso y diseño de un software
Proceso y diseño  de un   softwareProceso y diseño  de un   software
Proceso y diseño de un software
 
Proceso y diseño de un software
Proceso y diseño  de un   softwareProceso y diseño  de un   software
Proceso y diseño de un software
 
Proceso y diseño de un software
Proceso y diseño  de un   softwareProceso y diseño  de un   software
Proceso y diseño de un software
 
Seguridad en el ciclo de desarrollo del software
Seguridad en el ciclo de desarrollo del softwareSeguridad en el ciclo de desarrollo del software
Seguridad en el ciclo de desarrollo del software
 
Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...
Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...
Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...
 
Calidad de software y TDD
Calidad de software y TDDCalidad de software y TDD
Calidad de software y TDD
 
Introduccion a la Ingenieria en Sistemas de Informacion, Examen Dos, Guia & R...
Introduccion a la Ingenieria en Sistemas de Informacion, Examen Dos, Guia & R...Introduccion a la Ingenieria en Sistemas de Informacion, Examen Dos, Guia & R...
Introduccion a la Ingenieria en Sistemas de Informacion, Examen Dos, Guia & R...
 
Ingenieria del Software: Software a medida y generico.
Ingenieria del Software: Software a medida y generico.Ingenieria del Software: Software a medida y generico.
Ingenieria del Software: Software a medida y generico.
 
Ingenieria de software final.
Ingenieria de software final.Ingenieria de software final.
Ingenieria de software final.
 
Ingenieria de software final.
Ingenieria de software final.Ingenieria de software final.
Ingenieria de software final.
 
Desarrollo de software
Desarrollo de softwareDesarrollo de software
Desarrollo de software
 
Implementando owasp samm en latam
Implementando owasp samm en latamImplementando owasp samm en latam
Implementando owasp samm en latam
 

Último

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 

Último (13)

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 

Guia para desarrollo de software seguro

  • 1. Desarrollo de software seguro Medidas a tomar en cuenta. Unas de las grandes necesidades en el desarrollo de software web/desktop es la falta de seguridad. La seguridad en un software es clave principal para la sostenibilidad y ciclo de vida del mismo pues nadie confía en las inseguridades que nos ofrecen. En esta guía vamos a resumir los principales puntos y herramientas necesarias para el desarrollo de un software seguro tanto para el ambiente web como para aplicaciones de escritorio y/o aplicaciones de software libre, todo esto guiado a un entorno empresarial, administrativo y de madurez. Algunas preguntas que debemos hacernos cuando vamos a construir un software seguro. • ¿Diseñado, construido y probado para su seguridad? • ¿Continúa ejecutándose correctamente bajo ataque? • ¿Diseñado con el fallo en mente? ¿Qué debemos conseguir para crear un software seguro? • Adoptar un modelo de madurez de desarrollo de software • Debemos considerar la seguridad del software desde el principio hasta el final Todas estas preguntas nos guían a un solo camino, Modelos de seguridad y me refiero en plural a este porque no solo nos debemos guiar por un solo modelo sino que debemos explorar los mejores modelos para saber cuál es el que más se ajusta a nuestras necesidades para hacer una buena práctica del desarrollo de software seguro.
  • 2. S-SDLC (Secure Software Development Life Cycle) Como clave de para el desarrollo de software seguro. ¿Qué es S-SDLC? Ciclo de Vida de Desarrollo de Software seguro describe las fases del ciclo del software y el orden en que esas fases se ejecutan de acuerdo a los requerimientos del negocio. Con el fin de implementar las aplicaciones que se requieren para proporcionar un procesamiento seguro. Esquema SDLC
  • 3. Otras Iniciativas de seguridad en el desarrollo de software Microsoft SDL El modelo de optimización de SDL está estructurado en torno a cinco áreas de capacidades que, en líneas generales, se corresponden con las fases del ciclo de vida de desarrollo de software: 1) Formación, directivas y capacidades organizativas 2) Requisitos y diseño 3) Implementación 4) Comprobación 5) Lanzamiento y respuesta ¿Donde aplicar SDL? 1) Aplicaciones implementadas en un entorno empresarial 2) Aplicaciones que procesan información de identificación personal 3) Aplicaciones que se comunican frecuentemente a través de Internet u otras redes OWASP CLASP Open Web Application Security Project (Proyecto abierto de seguridad de aplicaciones web ), Es un proyecto de código abierto dedicado a determinar y combatir las causas que hacen que el software sea inseguro ¿Qué nos ofrece OWASP? • Búsqueda y lucha contra las causas de software inseguro • Creación de herramientas, documentación y estándares • Conferencias • Recursos gratuitos y de código abierto • www.owasp.org
  • 4. Medidas estándar que debemos tomar para el desarrollo de software seguro 1. Para desarrollar una aplicación segura debemos considerar los siguientes aspectos  Control de la entrada: validar todas las entradas.  Gestión de memoria: desbordamiento de buffers.  Estructura interna y diseño del programa.  Llamadas a recursos externos: bibliotecas, scripts.  Control de la salida: formato, restricciones.  Problemas de los lenguajes de programación.  Otros: algoritmos criptográficos, de autentificación. 2. Control de la entrada  Hay que validar todas las entradas que vienen de fuentes no fiables.  Se debe determinar qué es legal y rechazar lo que no lo sea.  Siempre se debe verificar que algo es legal, la aproximación contraria (detección de entradas erróneas) puede fallar.  El sistema se debe verificar generando entradas erróneas desconocidas.  Hay que limitar la longitud máxima de la entrada 3. Vigilar caracteres especiales  Caracteres de control.  Caracteres especiales para el Shell, SQL, etc.  Delimitadores (p. ej. tabuladores, comas,:, etc.).  Verificar la codificación y decodificación de URLs y la validez de los juegos de caracteres.  Minimizar las decodificaciones; no decodificar más de una vez de modo inndecesario.  Números: verificar máximos, mínimos y ceros. 4. Validación de otros tipos de datos
  • 5.  Direcciones de correo: ver RFC 2822 y 822.  Nombres de fichero: Omitir caracteres especiales (/, 'n', '”', ...), omitir '../'.  Expresiones regulares.  Cookies: comprobar dominios.  HTML/XML: prevenir cross-posting.  URI/URL: validar antes de procesar.