No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Convierte tus certificados en títulos universitarios en USA

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

16 Días
18 Hrs
23 Min
12 Seg

Seguridad de aplicaciones

8/37
Recursos

Aportes 23

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

OWASP top 10 da para un curso completo, ponganse las pilas Platzi…

Seguridad de aplicaciones:

Ciclo de desarrollo seguro:
Recopilación de los requerimientos de la aplicación (Funcionales y no funcionale) => Diseño (Componentes de la app, arquitectura, comunicacion de componentes, lenguajes, frameworks) => Desarrollo (programacion de la app) => Pruebas (unitarias, funcionales, de seguridad con ataques comunes como inyeccion de codigo, etc ) => Despliegue (Publicacion de la app ) => Operaciones (Mantenimiento continuo y agregar funcionalidades para los usuarios) … Y se vuelve a repetir el ciclo desde Recopilacion de los requerimientos.

Los principales controles de seguridad que se suelen aplicar son:

  • Entrenamiento OWASP Top 10: como protegernos del top 10 fallos de seguridad mas comunes
  • Análisis estatico de código: Analizar el codigo sin compilar linea por linea con herramientas como SonarQube y Git Hub
  • Análisis dinámico de código: Con el codigo ya compilado y corriendo. Intentar forzar fallos.
  • Arquitecturas seguras: Asegurarse que todos los componentes sean seguros y comunicacion correcta.
  • Modelo de Madurez (OWASP SAMM): Es un modelo que ayuda a formular e implementar una estrategia de mitigación de riesgos basandose en 5 pilares: Governance, Design, Implementation, Verification, Operations.

Estandares mas conocidos de seguridad:

  • CERT Secure Coding
  • ISO/IEC 27034-1:2011
  • ISO/IEC TR 24772:2013
  • NIST Special Publication 800-53
  • OWASP ASVS: Web Application Security Verification Standard

Seguridad de aplicaciones

Es la rama de la ciberseguridad que busca introducir buenas prácticas al ciclo de desarrollo del software. La idea es que si se siguen buenas prácticas en cada etapa (requerimientos, diseño, desarrollo, testing, etc) se reducirán los riesgos de seguridad.

Los controles de seguridad que pueden ser utilizados son:

  • Entrenamiento en OWASP Top 10: Brinda los conocimientos necesarios para protegerse de los 10 fallos de seguridad mas comunes.
  • Análisis estatico de código: Revisión de código línea a línea sin compilar. SonarQube y GitHub brindan herramientas para esto.
    Análisis dinámico de código: Revisión de la aplicación en ejecución, intentando generar fallos de seguridad como SQL Injection o Cross-Site Scripting.
    Arquitecturas seguras: Verificar que todas las comunicaciones entre componentes sea correcta y segura.

También pueden usarse frameworks como OWASP SAMM, el cual permite determinar el nivel de madurez de la seguridad de la organización y ayuda a implementar una estrategia para mitigar los riesgos. En pocas palabras, define 5 pilares a revisar mediante un cuestionario.

Estándares:

  • CERT Secure Coding
  • ISO/IEC 27034-1:2011
  • ISO/IEC TR 24772:2013
  • NIST Special Publication 800-53
  • OWASP ASVS: Web Application Security Verification Standard

Me parece excelente este punto, mucha veces no entienden que un dev debe saber de seguridad y tener un código limpio libre de amenazas

En que momento sugiere usar OWASP, es decir, para cualquier desarrollo sin importar la complejidad o cómo sería?

Actualmente la entidad donde trabajo debe gestionar plataformas de ciberseguridad con las cuales realiza actividades de control a través de una serie de herramientas que debe mantener actualizadas:
• Proxy: Mediante una adecuada configuración de Proxy, el WebMaster de la entidad establece los controles de filtros de navegación de cada empleado con el cual se restringe y limita el acceso a internet de los empleados.
• Antivirus: A través de herramientas como Windows Defender y Symantec EndPoint Protection se controla la base de datos de antivirus a los que la entidad puede verse expuesta.
• Boardgent: Se tiene un control establecido para que solo las áreas autorizadas para dar soporte a los usuarios puedan tener acceso a la BIOS de los PC de usuario final.

La seguridad de aplicaciones está relacionada con cada fase del ciclo de vida del desarrollo seguro de software, ya que es importante tener en cuenta la seguridad a lo largo de todo el proceso de desarrollo de software.

  1. En la fase de análisis de requisitos o Requerimientos, es importante considerar cuáles son los requisitos de seguridad del software y cómo se pueden cumplir. Por ejemplo, es posible que sea necesario incluir autenticación de usuario o encriptación de datos para cumplir con los requisitos de seguridad.

  2. En la fase de diseño, es importante diseñar el software de manera segura, teniendo en cuenta factores como la arquitectura del sistema, la protección de datos y la protección contra ataques de inyección de código.

  3. En la fase de implementación o desarrollo, es importante asegurarse de que el código cumpla con los estándares de seguridad y de que se realicen pruebas de seguridad adecuadas.

  4. En la fase de pruebas, es importante realizar pruebas exhaustivas para asegurar que el software es seguro y está libre de vulnerabilidades.

  5. En la fase de despliegue, es importante asegurarse de que el software se instala y se configura de manera segura en los sistemas de producción.

  6. En la fase de operaciones o mantenimiento, es importante seguir monitoreando la seguridad del software y realizar actualizaciones y mejoras de seguridad según sea necesario. Esto puede incluir la instalación de parches de seguridad, la actualización de versiones del software y la realización de pruebas de seguridad periódicas para identificar vulnerabilidades.

En la empresa en la cual trabajo se ha implementado un control de seguridad el, cual consiste en el monitoreo de posibles incidente de seguridad a través de conexiones a la red externa. También se cuenta con seguimientos a los hallazgos identificados en pruebas de vulnerabilidad y penetración en los sistemas de información e infraestructura tecnológica.

La ciberseguridad tiene muchas aplicaciones prácticas en la vida real, y en las organizaciones debería de ser una de las ramas que mayor cuidado.
En las empresas de desarrollo implementar las buenas prácticas para tener un mejor código y sobre todo, para proteger la aplicación que se esta desarrollando de posibles ataques, eso es fundamentar, cada día aumentan los atacantes y los niveles de protección deben de aumentar mucho más.
Las empresas deben de tener controles rigurosos para mejorar los sistemas y así brindar soluciones eficientes. Es fundamentar proteger los pilares de seguridad de la información, y aquí hablamos de la disponibilidad, integridad y confidencialidad.
Disponibilidad: qué la información esté disponible en todo momento y cuando sea requerida.
Integridad: Qué la información no sea manipulada sin autorización de las personas propietarias o autorizadas. La información se debe preservar tal como se encuentra, y solo puede ser modificada por personas autorizadas.
Confidencialidad: La información solo debe de estar disponible para las personas con autorización para ver o disponer de dicha información, protegiendo que las personas que no tiene interés en la misma tengan acceso y aquí es donde se deben de aplicar los pilares de seguridad y las buenas prácticas.

Recomiendo Veracode para análisis estáticos y dinámicos

Ataques comunes que se pueden detectar en la fase de Pruebas: * Inyección SQL * Inyección de código * Cross-site scripting
Gracias
soy freelnace y no llevo mucho, entonces de momento no tengo un claro control de seguridad, pero esperar que depronto e este curso, se pueda tratar de aplicar. disculpen Nunca pares de aprender y que Dios olos bendiga
Les dejo la versión más reciente (2021) de OWASP Top 10 <https://owasp.org/Top10/es/>

Seguridad de aplicaciones

Es la rama de la seguridad que se preocupa por introducir prácticas seguras al ciclo de desarrollo de software. Busca mejorar las prácticas de seguridad y así prevenir incidentes de seguridad en las aplicaciones.

En cada una de las fases, es importante tener la seguridad en mente.

Controles de seguridad

  • Entrenamiento OWASP Top 10: Es una organización que se preocupa por capacitar a desarrolladores en la seguridad de aplicaciones. Tiene muchos productos, el mas reconocido es el TOP 10 (fallas de seguridad más comunes)
  • Análisis estático de código: Se trata de analizar el código antes de ejecutarlo. Existen herramientas para probarlo.
  • Análisis dinámico de código: Se trata de probar el código en ejecución.
  • Arquitectura seguras: Verificar que todos los componentes sean seguros y que funcionen correctamente en conjunto.

OWASP SAMM

Modelo de madurez de aseguramiento de software (SAMM): Es un framework abierto que ayuda a las organizaciones a formular e implementar una estrategia para la seguridad del software que se ajuste a los riesgos que enfrente la organización.

  • Este framework tiene 5 pilares que llaman funciones de negocio. Cada uno tiene 3 prácticas de seguridad y cada práctica, tienes 2 streams.
  • Es un cuestionario en donde nos hacen preguntas para medir que tanto estamos cumpliendo con las normativas o las prácticas de seguridad.

Ciclo de vida del desarrollo seguro del Software (SDLC):
Un ciclo de desarrollo seguro es un marco para que todo el proceso de construcción de un sistema, o aplicación, se realice de forma segura. Para ello, se realizan pruebas de seguridad durante todas las fases de desarrollo.

La seguridad de aplicaciones se enfoca en introducir prácticas seguras en el ciclo de desarrollo de software para prevenir incidentes de seguridad. Los controles de seguridad incluyen entrenamiento OWASP Top 10, análisis estático y dinámico de código, arquitecturas seguras y el modelo de madurez OWASP SAMM. Los estándares incluyen CERT Secure Coding, ISO/IEC 27034-1:2011, ISO/IEC TR 24772:2013, NIST Special Publication 800-53 y OWASP ASVS.

Modelo de madurez
(OWASP SAMM)

El modelo de madurez de aseguramiento de Sofware (SAMM) es un framework abierto que ayuda a las organizaciones a formular e implementar una estrategia para la seguridad del software que se ajuste a los riesgos que enfrente la organización

Ciclo de vida del desarrollo seguro de software

• Requerimientos.
• Diseño.
• Desarrollo.
• Pruebas
• Despliegue
• Operaciones

¿Qué control de seguridad te gustaría aplicar en tu empresa?
Respuesta:

  1. Entrenamiento para los desarrolladores de la Empresa en OWASP TOP10.
  2. Análisis estático de código
  3. Análisis dinámico de código
  4. Arquitecturas Seguras
  5. El modelo de madurez de aseguramiento de software SAMM