Secure Coding 101

Ponencia de Marta Macías perteneciente al módulo Bases de datos y desarrollo de software seguro de C1b3rWall Academy 22/23

Secure Coding 101

Tiempo de lectura estimado: 4 minutos


Los ciberatacantes buscan vulnerabilidades casi de forma automatizada, no les cuesta nada atacar a una empresa más que menos. No es frecuente que consigan atacar a una organización en concreto, pero cuando lo consiguen el daño es enorme, por lo que un buen test coverage puede prevenir muchos problemas.

¿Dónde enfocarse para hacer código seguro?

Existen diversas posibilidades:

  • Validación de entrada / tratamiento de la salida.
  • Autenticación y gestión de credenciales.
  • Gestión de sesiones.
  • Control de acceso.
  • Configuración del sistema.
  • Sistema de archivos.

Fuzzing, Carbon y Rust

El fuzzing es una técnica que consiste en insertar en un programa un gran volumen de datos aleatorios para ver cómo reacciona. Gracias a esta técnica se pueden encontrar vulnerabilidades de seguridad.

Actualmente, la industria se está moviendo hacia el uso de lenguajes con un manejo de memoria más seguro, como es el lenguaje de programación Carbon, de Google. Hay una alternativa más estable llamada Rust, que ofrece seguridad y fiabilidad.

User handling

En cuanto a la gestión de usuario, hay una serie de pautas a tener en cuenta:

  • Cada usuario debe tener limitados sus privilegios.
  • Debe quedar constancia de todo lo que hace un usuario: recursos cambiados, accedidos, borrados, creados, etc.
  • A ser posible, usar un identity provider ya conocido en vez de implementar uno nuevo: Firebase, Okta, etc.
  • Si se implementa uno nuevo, conviene obligar a los usuarios a tener MFA, cifrar los tokens que los usuarios utilicen para autenticarse con nuestras APIs y guardar las contraseñas hasheadas.

¿Todavía no formas parte de C1b3rWall Academy? El contenido es gratuito, únete a otras miles de personas desde este enlace.

Si te interesa este tema, puedes consultar la información y cursar el Máster en Ciberseguridad o ver la oferta de másteres desde aquí.


Ponente: Marta Gómez Macías

Marta es ingeniera software en VirusTotal. Es graduada en Ingeniería Informática por la UGR y acumula cinco años de experiencia en ciberseguridad.

¿Cuál es tu reacción?

like

dislike

love

funny

angry

sad

wow

Acción formativa gratuita en ciberseguridad. Web: https://c1b3rwallacademy.usal.es/