Bienvenido a nuestro blog.

Cómo prepararse para la norma ISO 27001:2022
Sobreviva a su revisión de seguridad de proveedores
En seguridad, todo evoluciona constantemente y las normas no son una excepción. La norma ISO 27001:2022 sustituirá en breve a la ISO 27001:2013. En la versión de 2022 no se ha suprimido ningún requisito importante de 2013. Sin embargo, hay muchos cambios, principalmente en dos categorías:
- un montón de nuevos controles de seguridad
- fusionando muchos de los antiguos controles de 2013.
Para esta entrada de blog, vamos a centrarnos en las nuevas que se centran en la seguridad.
La revisión de la norma ISO 27001:2022 introduce 11 nuevos controles

A.5.7 Información sobre amenazas
Este control clave de la norma ISO 27001:2022 consiste en recopilar información sobre amenazas y analizarla para tomar las medidas de protección adecuadas. Esto significa estar al tanto de ataques específicos y de los métodos y tecnologías furtivos que utilizan los atacantes. Además, exige vigilar las últimas tendencias de ataque. Aquí está el truco: debe reunir esta información tanto dentro de su propia organización como de fuentes externas, como anuncios de agencias gubernamentales e informes de proveedores. Si te mantienes al tanto de lo que ocurre, podrás cumplir con A.5.7.
Es como si el Aikido hubiera sido diseñado para esto. Es literalmente lo que hace el Aikido.
A.5.23 Seguridad de la información para el uso de servicios en nube
Para cumplir este requisito de la norma ISO 27001:2022 tendrá que establecer requisitos de seguridad para los servicios en la nube con el fin de proteger mejor su información en la nube. Esto incluye la compra, el uso, la gestión y la finalización del uso de servicios en la nube.
🎯 Aikido tiene una herramienta integrada de gestión de la postura de seguridad en la nube (CSPM) para ayudarte.
A.5.30 Preparación de las TIC para la continuidad de las actividades
Este control requiere que su tecnología de la información y la comunicación esté preparada para posibles interrupciones. ¿Por qué? Para que la información y los activos necesarios estén disponibles cuando se necesiten. Esto incluye la planificación de la preparación, la implementación, el mantenimiento y las pruebas.
🎯 Para que pueda cumplir con este requisito de la norma ISO 27001:2022, Aikido comprueba su preparación para grandes interrupciones en la nube, incluida su capacidad para realizar copias de seguridad entre regiones. Esta característica no es una configuración predeterminada ni siquiera para AWS.
A.7.4 Vigilancia de la seguridad física
Este control ISO 27001:2022 es un poco diferente de los demás: se centra en el espacio físico de trabajo. Requiere que controle las áreas sensibles para permitir que sólo accedan a ellas las personas autorizadas. Los espacios a los que podría afectar podrían incluir cualquier lugar en el que opere: sus oficinas, instalaciones de producción, almacenes y cualquier otro espacio físico que utilice.
Consejo: ¡es hora de ir al dojo local! Para esto, ¡necesitarás Aikido de verdad! (el arte marcial) 😂
A.8.9 Gestión de la configuración
Este control le obliga a gestionar todo el ciclo de configuración de la seguridad de su tecnología. El objetivo es garantizar un nivel de seguridad adecuado y evitar cualquier cambio no autorizado. Esto incluye la definición de la configuración, su aplicación, supervisión y revisión.
🎯 Una de las cosas aquí es que te asegures de que la seguridad correcta está configurada en tu git (GitHub) para cada rama, por lo que no todo el mundo puede fusionar sin las aprobaciones adecuadas.
Aikido verificará muchos de los problemas de configuración en su nube. También verificará que utiliza IAC para definir su nube, para evitar la deriva en la configuración en su nube.
A.8.10 Supresión de información
Debe eliminar los datos cuando ya no sean necesarios para cumplir este control. ¿Por qué? Para evitar la fuga de información sensible y permitir el cumplimiento de los requisitos de privacidad y de otro tipo. Esto podría incluir la eliminación en tus sistemas informáticos, soportes extraíbles y servicios en la nube.
⚠️ Este tipo de control no es algo que el Aikido cubra.
A.8.11 Enmascaramiento de datos
La norma ISO 27001:2022 exige que se utilice el enmascaramiento de datos (también conocido como ofuscación de datos) junto con el control de acceso para limitar la exposición de información sensible. Esto se refiere principalmente a la información personal identificable (IPI), porque ya existen sólidas normas de privacidad. Además, también podría incluir otras categorías de datos sensibles.
⚠️ Este control consiste en asegurarse de que no se registra la IPI incorrecta en los sistemas de registro, etc. Afortunadamente, la mayoría de los sistemas modernos (por ejemplo, Sentry) tienen algún tipo de filtro incorporado para este requisito. Pero, Aikido no está construido para comprobar este control.
A.8.12 Prevención de fuga de datos
Para este control, tendrá que aplicar diversas medidas contra la fuga de datos a fin de evitar la divulgación no autorizada de información sensible. Y si se producen incidentes de este tipo, tendrás que detectarlos a tiempo. Esto incluye la información de los sistemas informáticos, las redes y cualquier dispositivo.
🎯 Aikido verifica que tu nube no tiene ningún error de configuración de seguridad que pueda provocar una fuga de datos no deseada.
A.8.16 Actividades de control
Este control requiere que supervise sus sistemas para reconocer actividades inusuales y, en caso necesario, activar la respuesta adecuada ante incidentes. Esto incluye la supervisión de sus sistemas informáticos, redes y aplicaciones.
🎯 Una vez que tengas tus apps configuradas no basta con dejar que los correos se amontonen en el archivo de tu bandeja de entrada. Lo mejor es dejar que envíen alertas a Slack. Y, ¿adivina qué? Aikido hace esto.
A.8.23 Filtrado web
Para proteger sus sistemas informáticos, el control de filtrado web le permite gestionar a qué sitios web acceden sus usuarios. De este modo, evitará que sus sistemas se vean comprometidos por códigos maliciosos. También evitará que los usuarios utilicen materiales ilegales de Internet.
🎯 En la práctica, esto significa utilizar cualquier tipo de WAF como AWS WAF o Cloudflare. Aikido te cubre: monitorizamos su presencia.
A.8.28 Codificación segura
La norma ISO 27001:2022 también se ocupa de la codificación segura. Este control le exige que establezca principios de codificación segura y los aplique al desarrollo de su software. ¿Por qué? Para reducir las vulnerabilidades de seguridad en el software. ¿Cuándo? Puede incluir actividades antes, durante y después de la codificación.
🎯 Esta es la prueba estática de seguridad de aplicaciones (SAST) de Aikido, que hemos construido sobre el mejor software de código abierto de su clase. Además, puede utilizar nuestro análisis de composición de software (SCA), construido sobre Trivy.
Cumplimiento de la norma ISO 27001:2022 con ayuda del Aikido
Si todavía estás en ISO 27001:2013, tendrás trabajo que hacer. Pero no se preocupe. Es factible ponerse al día con la norma ISO 27001:2022 en poco tiempo.

Por lo tanto, si quieres asegurar tu aplicación rápidamente, Aikido te da una visión completa de cómo lo estás haciendo con respecto al código y los controles de la nube.
¿Quieres saber cómo lo estás haciendo? ¡Comprueba ahora tu cumplimiento con Aikido! Sólo le llevará unos minutos: https://app.aikido.dev/reports/iso
¿Le interesa charlar con alguien que haya pasado por el proceso de certificación ISO? Rellene el siguiente formulario y concertaremos una llamada.

Cómo evitar que pirateen su plataforma CI/CD
Prevención de la apropiación de la nube tras el compromiso de las credenciales
Las herramientas de integración continua y entrega/despliegue continuos (CI/CD) ya no son un lujo para ninguna startup. Las startups más dinámicas han aprendido que la entrega de ideas grandes y ambiciosas funciona mejor enviando cambios diminutos, incrementales y fáciles de revisar. Las más productivas realizan envíos 40 veces al día. Algunas incluso hasta 80 veces al día. Esto sólo se puede hacer de forma segura mediante el aprovechamiento de una herramienta de CI / CD como CircleCI, GitHub Acciones, y tuberías de GitLab para nombrar unos pocos.

CI/CD atrae a los hackers
Hoy en día, muchas startups y grandes empresas utilizan estas herramientas. Para que desplieguen código en tu nube, tienes que almacenar secretos de API especiales en su interior. Esto convierte a las herramientas de CI/CD en objetivos de gran valor para los hackers. De hecho, tienen un historial de ser hackeadas todo el tiempo.
Eche un vistazo a estos incidentes, que son sólo algunas de las infracciones recientes que se han hecho públicas:
Retrospectiva de la brecha de CircleCI con IOCs y TTPs
TLDR rápido:
1. Malware en el portátil de un usuario
2. Robo de una sesión SSO activa para una sesión remota 3. Robo de sesión SSO activa para una sesión remota
4. Generación de tokens de acceso de producción 4. Generación de tokens de acceso a la producción
5. Exfil'd customer ENVs, tokens, keys.
6. 6. Claves de encriptación CircleCI también filtradas.https://t.co/25x9t5NLG6
- Ryan McGeehan (@Magoo) 14 de enero de 2023
CircleCI fue violado en enero de 2023
- CodeShip: "Notificación de seguridad crítica: GitHub breach" (2020)
- GitHub: "Explotación de las acciones de GitHub en proyectos de código abierto" (2022)
- GitLab: "Medidas que hemos tomado en respuesta a una posible brecha de Okta" (2022)
- Jenkins: "Descubierto un fallo crítico en Jenkins" (2020)
Como puede ver, ocurre con bastante regularidad. ¿Cómo defiendes tú la tuya?
¿Cómo defiendo mi infraestructura en la nube contra infracciones de este tipo?
Cuando una de estas plataformas de CI/CD es pirateada, normalmente revelan la brecha. Esto suele ocurrir un día después de que se den cuenta de la brecha. Sin embargo, una brecha podría estar activa durante semanas antes de que se enteren. Por desgracia, ese tiempo puede utilizarse para escalar el acceso a todos los clientes de las plataformas.
Aikido le ayuda a identificar sus defensas CI/CD
Por suerte, existen algunos métodos para asegurarse de que permanece seguro incluso si su plataforma de elección es hackeada. La nueva integración de Aikido Securitycon AWS le alertará si su nube no toma activamente alguna de las siguientes medidas. Utilice nuestra cuenta de prueba gratuita para ver si su nube ya tiene defensas contra estos hilos.
Pasos a seguir para defender su CI/CD:
- Cuando asigne roles IAM a su plataforma CI/CD, asegúrese de que están restringidos por IP. La mayoría de las herramientas CI/CD tienen una opción para enviar únicamente tráfico desde un conjunto específico de direcciones IP. Esta opción inutiliza los tokens de API robados fuera de la infraestructura de CI/CD. Un hacker no podrá utilizarlos en sus propios servidores, lo que debería ralentizarlos mucho y potencialmente bloquearlos por completo.
- Cuando crees credenciales para plataformas CI/CD, dedica tiempo a elaborar un acceso mínimo. No des derechos de administrador.
- No ponga todos los huevos en la misma cesta: divida sus nubes en varias cuentas. Esto minimiza el efecto de una brecha. Por ejemplo, una violación de las credenciales de su entorno de ensayo no debería dar lugar a una violación de su entorno de producción.
- Utilice el inicio de sesión único (SSO) o la autenticación multifactor (MFA). Una obviedad.

Lamentablemente (pero siendo realistas), debes asumir que tu CI/CD será hackeado algún día. Así que cuando llegue el momento, asegúrate de rotar todos los tokens de despliegue lo antes posible.

Cómo cerrar acuerdos más rápidamente con un informe de evaluación de la seguridad
En un mundo tan competitivo como el actual, las nuevas empresas se enfrentan a un montón de retos a la hora de cerrar el trato. Uno de los más importantes es generar confianza entre los clientes potenciales. Especialmente en materia de seguridad. Establecer la confianza con los clientes potenciales puede ser fundamental para el éxito de una startup.
Por eso lanzamos una nueva función para ayudar a resolver este problema: Informes de evaluación de la seguridad
Cuando una empresa emergente comparte un informe completo de evaluación de la seguridad, demuestra que va en serio cuando se trata de seguridad. Generarán confianza rápidamente y acelerarán el cierre del trato.

En este artículo, explicamos cómo funciona nuestra función de informes. También analizamos por qué las startups necesitan transmitir confianza desde el principio y cómo eso les lleva a conseguir más negocio.
¿Qué contiene este Informe de Evaluación de la Seguridad?
Aceptémoslo, la confianza consiste en ser abierto y honesto. El informe de evaluación de seguridad de Aikido lo dice todo. Los clientes reciben información sobre las prácticas de seguridad de la startup, la puntuación OWASP Top 10 y las vulnerabilidades. Incluso pueden conocer la rapidez con la que la empresa gestiona los riesgos. La voluntad de compartir esta información permite a las startups demostrar que se toman muy en serio la protección de los datos de todo el mundo.
Flujo de aprobación a medida
No todo tiene por qué ser un libro abierto, ¿verdad? Por eso, nuestro informe de evaluación de seguridad permite a las startups personalizar exactamente qué información desean compartir. De este modo, podrá compartir sólo lo que los clientes potenciales realmente necesitan. Es como ofrecer un adelanto sin revelar todo el tinglado. Las startups mantienen el control sobre la información confidencial. Al mismo tiempo, dan a los clientes potenciales la seguridad necesaria para seguir adelante.

Normas y buenas prácticas imparciales
Nuestro informe de evaluación de la seguridad sigue normas y buenas prácticas de primera categoría. En consecuencia, esto aumenta la credibilidad y profesionalidad de la startup.
ISO 27001:2022
ISO/IEC 27001 es una norma internacional sobre sistemas de gestión de la seguridad de la información. Proporciona una lista de requisitos de cumplimiento con los que las organizaciones y los profesionales pueden certificarse. Además, ayuda a las organizaciones a establecer, implantar, mantener y mejorar un sistema de gestión de la seguridad de la información (SGSI). Aikido analiza todos los elementos relacionados con la seguridad del código y la nube y automatiza la supervisión.
SOC 2
SOC 2, también conocido como Service Organization Control Type 2, es un marco de cumplimiento de ciberseguridad desarrollado por el American Institute of Certified Public Accountants (AICPA). El objetivo principal de SOC 2 es garantizar que los proveedores de servicios de terceros almacenan y procesan los datos de los clientes de forma segura. Al igual que para la ISO 27001, Aikido analiza todos los elementos relacionados con la seguridad del código y la nube y automatiza la supervisión por usted.
Top 10 de OWASP
OWASP Top 10 es reconocido mundialmente por los desarrolladores como el primer paso hacia una codificación más segura. Es una lista de los riesgos de seguridad más importantes a los que se enfrentan las aplicaciones web. Cuando solucionas los problemas de seguridad de la lista OWASP Top 10, puedes estar seguro de que has mejorado drásticamente la seguridad de tu aplicación. Además, Aikido te da una visión instantánea de qué problemas de seguridad del OWASP Top 10 necesitas resolver.

Aikidosec Benchmark
En Aikido hemos construido nuestro propio benchmark Aikidosec, que puntúa tu entorno en comparación con otros usuarios de Aikido. En su informe de evaluación de seguridad, usted es libre de compartir este punto de referencia con sus clientes para mostrarles que está entre el X% de startups con mayor rendimiento de seguridad.
"Asegurados con el Aikido" - Una insignia de confianza
Hemos añadido una interesante función adicional. Para ayudar a nuestros usuarios a mostrar su compromiso con la seguridad, hemos creado un distintivo especial para su sitio web. La insignia facilita a los clientes la solicitud de un informe de evaluación de la seguridad con sólo unos clics. La insignia sirve como validación externa e imparcial, garantizando a sus clientes que está aplicando medidas de seguridad.

Adelantarse a la competencia
En un mercado saturado, destacar entre la multitud es esencial. Creemos que el informe de evaluación de la seguridad da a las empresas emergentes una ventaja competitiva al mostrar su compromiso con la seguridad. ¿Cómo pueden posicionarse las empresas emergentes como socios de confianza? Nuestro consejo es abordar las preocupaciones por adelantado mediante un enfoque sólido, proactivo y transparente de la protección de datos.
Cerrar acuerdos más rápido y aumentar los ingresos
Vayamos al grano. Las startups quieren cerrar acuerdos cuanto antes. Además, quieren aumentar sus ingresos. Los informes de evaluación de la seguridad ayudan a generar confianza y credibilidad, lo que permite a las startups acelerar su ciclo de ventas. Esto significa menos tiempo perdido, menos recursos gastados y más contratos firmados.
Pruébelo ahora solicitando el propio informe de evaluación de seguridad de Aikido.
¿Quieres un informe para tu startup?
Entra en la aplicación y genera tu propio informe.
![Automatizar la gestión técnica de vulnerabilidades [SOC 2]](https://cdn.prod.website-files.com/642adcaf364024654c71df23/67643587d60e739a2713e706_1887747146-2_e9a02ce5d4c4c0b738e209b16c20f222_2000.png)
Automatizar la gestión técnica de vulnerabilidades [SOC 2]
Cómo cumplir la normativa sin imponer una pesada carga de trabajo a su equipo de desarrollo
Lograr el cumplimiento de las normas ISO 27001 y SOC 2 puede ser una tarea desalentadora, especialmente cuando se trata de la gestión de la vulnerabilidad técnica. Sin embargo, con las herramientas y el apoyo adecuados, no tiene por qué serlo. En esta entrada de blog, hablaremos de cómo Aikido y Vanta pueden ayudarle a abordar los aspectos técnicos del cumplimiento de SOC 2.

Cumplimiento de los requisitos técnicos de gestión de vulnerabilidades para SOC 2
Para lograr la conformidad con la norma SOC 2, las empresas deben aplicar medidas técnicas de gestión de vulnerabilidades. Esto implica identificar, priorizar y abordar las vulnerabilidades en su base de código e infraestructura. Para cumplir estos requisitos y garantizar la seguridad de sus sistemas, debe seguir una serie de pasos e implantar un proceso:
- Realización de una evaluación de riesgos
El primer paso consiste en realizar una evaluación de riesgos de su código base e infraestructura para identificar posibles vulnerabilidades. Esto implica analizar sus sistemas e identificar las debilidades potenciales que podrían ser explotadas por los atacantes. - Priorización de vulnerabilidades
Una vez que haya identificado las vulnerabilidades potenciales, deberá priorizarlas en función de su gravedad y de su impacto potencial en sus sistemas. Esto le ayudará a centrar sus esfuerzos en abordar primero las vulnerabilidades más críticas. - Abordar las vulnerabilidades
El siguiente paso es abordar las vulnerabilidades identificadas. Esto puede implicar la aplicación de parches, la actualización del software o la realización de cambios de configuración en los sistemas. - Pruebas de eficacia
Después de abordar las vulnerabilidades, es esencial probar la eficacia de las correcciones que ha implementado. Esto implica llevar a cabo pruebas de penetración y otras pruebas de seguridad para garantizar que sus sistemas son seguros. Sin embargo, las pruebas de penetración no son un requisito obligatorio para SOC 2. - Supervisión continua
Por último, es esencial supervisar continuamente los sistemas para detectar posibles vulnerabilidades y amenazas. Esto implica implantar un programa de gestión de vulnerabilidades que analice periódicamente el código base y la infraestructura en busca de posibles vulnerabilidades y riesgos.
Siguiendo estos pasos, las empresas pueden garantizar que cumplen los requisitos técnicos de gestión de vulnerabilidades para la conformidad SOC 2 y que disponen de sistemas seguros para proteger sus datos e infraestructuras.
Automatizar el proceso con Aikido
Para cumplir la normativa, puede implementar el proceso manualmente o utilizar una plataforma de gestión de vulnerabilidades, como Aikido. Te explicaremos el proceso y cómo automatizarlo.
1. Realización de una evaluación de riesgos
Al conectarse a su código e infraestructura en la nube, Aikido realiza automáticamente una evaluación de riesgos. Analiza a fondo sus sistemas, identificando las vulnerabilidades potenciales que podrían ser explotadas por los atacantes. Como Aikido no tiene agentes, puede obtener una visión completa en 30 segundos. Se acabaron las horas perdidas instalando software caro o configurando y manteniendo herramientas gratuitas de código abierto.
2. Priorización de vulnerabilidades
Una vez completada la evaluación de riesgos, Aikido prioriza las vulnerabilidades. En lugar de abrumarle con una larga lista de todas las vulnerabilidades presentes en su sistema. Las vulnerabilidades son deduplicadas y auto-triadas, sólo verá las que realmente importan y son explotables. De esta forma, puede centrar sus esfuerzos en abordar primero las vulnerabilidades más críticas.

3. Abordar las vulnerabilidades
Abordar las vulnerabilidades puede ser una tarea manual, pero Aikido lo hace fácil. Características como autofix le permiten hacer una RP con un solo clic. Además, Aikido se integra plenamente con las herramientas que ya está utilizando. Ya sea implementando parches, actualizando software o realizando cambios de configuración.

4. Comprobación de la eficacia
Para garantizar la eficacia de las correcciones aplicadas, aconsejamos realizar un pentest. De este modo, podrá validar la eficacia de las medidas de seguridad y asegurarse de que sus sistemas son sólidos frente a posibles ataques. Aunque, para SOC 2, esto no es obligatorio. Aikido suele trabajar con Shift Left Security, pero usted es libre de elegir al consultor que desee.
5. 5. Seguimiento continuo
Además, Aikido le ayuda con la supervisión continua, un aspecto crucial para mantener sistemas seguros. Aikido escanea su entorno cada 24 horas en busca de nuevas vulnerabilidades y riesgos. Mediante la monitorización continua de sus sistemas, puede mantenerse proactivo en la identificación y tratamiento de cualquier vulnerabilidad o amenaza emergente.
Con Aikido, puede automatizar todo el proceso de gestión de vulnerabilidades, desde la evaluación de riesgos hasta la priorización de vulnerabilidades, el tratamiento de vulnerabilidades, las pruebas de eficacia y la supervisión continua. Al aprovechar las capacidades de Aikido, las empresas pueden cumplir con los requisitos técnicos de gestión de vulnerabilidades para el cumplimiento de SOC 2 y establecer un entorno seguro para salvaguardar sus datos e infraestructura.
Por qué integrar Aikido y Vanta le ahorrará tiempo y dinero
Se acabaron los procesos manuales de seguimiento
Aikido pone la gestión de vulnerabilidades técnicas en piloto automático. La plataforma supervisa continuamente su postura de seguridad en segundo plano. Sólo se le notificará cuando sea realmente importante. Además, automatiza 16 pruebas Vanta y ayuda a superar 5 controles Vanta.

Se acabaron las pérdidas de tiempo en la clasificación de falsos positivos.
La mayoría de las plataformas de seguridad envían indiscriminadamente a Vanta todas las vulnerabilidades identificadas. Esto supone una importante pérdida de tiempo, ya que hay que cribar numerosos falsos positivos. Por ejemplo, cuando se utilizan otras herramientas de seguridad, todas las vulnerabilidades encontradas se envían a Vanta, lo que significa que hay que dedicar mucho tiempo a clasificarlas. Por otro lado, Aikido ha construido un motor de auto-triaje que actúa como un filtro útil, ahorrándole un tiempo precioso.
Se acabó el dinero malgastado en licencias caras
El sector de la seguridad está plagado de modelos de precios abusivos y excesivamente complejos. Algunas empresas adoptan precios basados en el usuario, lo que anima a los desarrolladores a compartir cuentas, comprometiendo en última instancia la seguridad. Otras optan por modelos de precios basados en líneas de código, que se encarecen muy rápidamente. Sin embargo, nosotros rechazamos estos enfoques y, en su lugar, ofrecemos una sencilla tarificación de cuota fija por organización. Con Aikido, puede empezar por sólo 249 euros al mes. Al elegir nuestro modelo, puede esperar ahorrar aproximadamente un 50% en comparación con la competencia.
Vanta, una pieza esencial del puzzle
Para implantar SOC 2, necesita hacer algo más que la gestión técnica de vulnerabilidades. Necesitará una solución de software de cumplimiento de seguridad general y global. Una plataforma como Vanta automatiza el 90% del complejo y largo proceso de SOC 2. Y, además, se integra perfectamente con Aikido. Y además, se integra perfectamente con Aikido. Simplificando al máximo todos los aspectos de la gestión técnica de vulnerabilidades.

¿A qué espera? Pruebe Aikido hoy mismo de forma gratuita (la incorporación tarda 30 segundos) y acelere el cumplimiento de la norma SOC 2.

Prevenir la contaminación de prototipos en su repositorio
Si has llegado a esta página directamente desde un Pull Request de Aikido Autofix y sólo quieres aprender cómo terminar el PR, salta a Cómo implementar.
El ecosistema JavaScript tiene un problema y se llama contaminación de prototipos. Para una empresa SaaS que construye con JavaScript/npm, normalmente hasta el 20-30% de todas las vulnerabilidades conocidas (CVE) detectadas en las dependencias son causadas por la contaminación de prototipos. Normalmente no son fáciles de explotar, pero en los casos malos, pueden llevar a fallos de ejecución remota de código. Esto significa que son difíciles de ignorar por completo.
Dos formas de prevenir la contaminación por prototipos
Existe un soporte experimental en Node.js para congelar el prototipo por defecto bajo una bandera llamada --frozen-intrinsics. Activar esta opción anula todos los ataques de contaminación del prototipo. Sin embargo, no podemos recomendarlo todavía porque es experimental y tampoco funcionará en bases de código frontales. Eso le impediría construir la misma protección a través de su frontend y backend.
Una alternativa es nopp (No Prototype Pollution), una biblioteca de 14 líneas que congela el prototipo (y algunos otros puntos de entrada).
Cómo aplicar
1. Importar la biblioteca
Después de haber instalado nopp, todo lo que tienes que hacer es ir al script que inicia tu aplicación. Allí simplemente requieres la librería, después de haber requerido todas tus otras librerías. Ejemplo de commit abajo:

2. Comprobación de seguridad en toda la aplicación para las bibliotecas que dependen de la manipulación del prototipo.
La razón por la que congelamos el prototipo después de incluir otras librerías es que algunas de tus otras librerías pueden depender de cambiar el prototipo para funcionar. Incluso después de asegurarte de congelar el prototipo DESPUÉS de incluir otras librerías, es posible que necesites refactorizar antes de que tu aplicación vuelva a funcionar.
Por ejemplo, el propio aws-sdk de Amazon para Node.j s realiza cambios en el prototipo durante la construcción de objetos como "new AWS.S3(..)". En estos casos, puede que tengas que hacer una refactorización como la que se muestra a continuación, asegurándote de que el objeto se crea cuando se inicia tu proceso Node.js y no durante una fase posterior.

Asegurarte de que tu aplicación sigue funcionando después de este cambio puede suponer una mayor inversión de tiempo para los repositorios más grandes que tienen una baja cobertura de pruebas. Para repositorios más pequeños, valdrá la pena no tener que volver a lidiar con la contaminación de prototipos. Para repositorios más grandes, esto puede ser más complejo, pero la inversión en ingeniería probablemente tendrá un retorno de la inversión positivo a largo plazo.

¿Cómo equilibra el director de tecnología de una startup SaaS la velocidad de desarrollo y la seguridad?
Aprendizajes de anteriores empresas de SaaS
En una startup típica de SaaS, el equipo de desarrollo está sometido a una gran presión para ofrecer nuevas funciones. Suele haber competidores mejor financiados, el equipo de ventas pide una última función para cerrar el trato y el equipo de atención al cliente pide una corrección de errores. Puede ser difícil dar prioridad a la seguridad a menos que un cliente empresarial más grande lo exija o tu junta directiva lo imponga desde arriba.
En la mayoría de las startups, es posible que no dispongas de una gama completa de perfiles técnicos: puede que aún no tengas un jefe de producto a tiempo completo, probablemente no tengas un jefe de seguridad a tiempo completo en tu equipo de desarrollo. Un equipo de desarrollo sometido a la presión de la entrega se verá obligado a recortar muchos gastos, incluso en materia de seguridad.
He sido el CTO de 3 startups SaaS en fase inicial. (Teamleader, Officient & Futureproofed) A continuación he resumido mis aprendizajes de esas experiencias pasadas en empresas SaaS.

Evitar reinventar la rueda
Un gran ejemplo: no construyas un sistema de inicio de sesión con contraseñas. Sí, podrías construirlo en unos días, pero el coste de mantenerlo y añadir funciones de protección avanzadas en el futuro será muy alto. Considera utilizar un inicio de sesión mediante Single-sign on como Gmail o utiliza un servicio como Auth0.com. No sólo tendrás una experiencia de inicio de sesión más fluida y con más funciones, sino que además no tendrás que preocuparte por toda una clase de aspectos de seguridad relacionados con el inicio de sesión (fuerza bruta, credenciales de usuario filtradas en servicios de terceros, evitar y detectar ataques de toma de control de cuentas, validación de direcciones de correo electrónico, registro...).
Al final, si elige el proveedor adecuado, no sólo estará reduciendo su superficie de ataque, sino que también estará ganando tiempo que podrá dedicar a funciones más valiosas.
Otros buenos ejemplos que podrían ahorrarte semanas o meses son:
- No almacene tarjetas de crédito, utilice algo como Stripe o Mollie o Chargebee
- No ejecute usted mismo software complejo como MySQL o PostgreSQL o ElasticSearch. Utiliza servicios gestionados en la nube como RDS.
- No crees tus propios sistemas de registro. Utiliza sistemas como Sentry o Papertrail (y no registres allí ningún dato sensible).
- No utilice sus propios servidores de correo electrónico (SMTP), sino un servicio gestionado como Sendgrid o Mailgun.
- No construyas servidores websocket, utiliza servicios gestionados como Pusher.com
- No construyas tu propio sistema de featureflagging, utiliza un servicio como Launchdarkly
- No construyas tu propia integración de calendario, utiliza una herramienta como cronofy.com
- Al crear integraciones en general, busca API unificadas en ese espacio, como Apideck.
Invierta tiempo en un sistema de comunicación de crisis
Asegúrate de tener herramientas configuradas, como una aplicación de chat para hablar con tus clientes o, mejor aún, una página de estado gestionada o una cuenta de Twitter donde comunicar los problemas. En caso de que ocurra algo malo, es una gran práctica permitir que el resto de tu empresa se comunique con tus clientes mientras tú te centras en solucionar el problema durante una crisis.
Añadir guardarraíles globales
Probablemente estés revisando Pull Requests de tus desarrolladores, ¡genial! Es toda una tarea revisarlos para comprobar su mantenibilidad, rendimiento y funcionalidad. ¿Tienes tiempo para revisar también la seguridad? Seguro que podrás cubrir algunos riesgos, pero es bueno poder dejar de lado algunos riesgos añadiendo algunos guardrails y configuración global.
A veces, puedes tener suerte y existen soluciones globales para problemas específicos.
- Si utilizas nodeJS y no te gusta pensar en la contaminación del prototipo, debes congelar el prototipo para desactivar esta clase de ataques en toda la aplicación. Aikido puede construir automáticamente un Pull Request que haga esto por ti.
- Si utiliza SQL y teme los ataques de inyección SQL (debería temerlos), puede utilizar un WAF (como AWS WAF) o RASP (como Datadog's app security) para la protección de toda la aplicación.
- Si está descubriendo muchos ataques XSS, es probable que pueda eliminar gran parte de ellos introduciendo una política CSP muy estricta en el navegador.
- Si realiza muchas solicitudes salientes basadas en entradas de clientes, podría ser vulnerable a ataques SSRF. Si bien puede ser difícil bloquear esto por completo, puede mitigar los daños asegurándose de que no puede conducir a algo peor (como un ataque IMDSv1 sobre credenciales IAM en AWS). Aikido monitoriza esto en tu nube AWS por defecto.
- Cuando se trata de almacenamiento de objetos, evitar tipos específicos de funciones como Pickle, XML, (un)serialize en Java y PHP,.. y en su lugar optar por opciones de almacenamiento simples como JSON puede evitar muchos exploits típicos relacionados con unserialización insegura. Aikido monitoriza este tipo de funciones en tu código por defecto.
- Si utiliza una CDN o mecanismos de almacenamiento en caché, utilice dominios separados para sus activos estáticos con configuraciones de CDN separadas para evitar todo tipo de ataques de envenenamiento de caché (ChatGPT se encontró con esta trampa recientemente).
Eduque a sus desarrolladores con este sencillo truco
Hay un truco muy sencillo (valga el juego de palabras) que puede aplicar en sus procesos. Una pregunta rápida para el equipo de desarrollo durante la planificación del sprint:
¿Cómo puede piratearse la funcionalidad que estamos construyendo? (y ¿cómo podemos evitarlo?)
Aunque es posible que el equipo de desarrollo no pueda prever todos los posibles abusos, esta metodología es muy fácil de aplicar. Es un pequeño paso adicional que anima a los desarrolladores a comprobar las consideraciones de seguridad antes de emprender cualquier trabajo de desarrollo.

Asigne prioridades a las distintas partes de su código base
No todo será un objetivo tan grande para los piratas informáticos. Los componentes clave que les encanta atacar son :
- Sistemas de pago, monederos, sistemas de crédito
- Funcionalidad que se conecta a API caras como SMS, voip (piense en Twilio)
- Restablecimiento de contraseñas, sistemas de inicio de sesión, invitaciones a usuarios
- Funciones de exportación como PDF, Excel,.. exportaciones que podrían realizar operaciones de riesgo.
- Todo lo relacionado con la carga de archivos e imágenes
- Funciones que realizan solicitudes salientes por diseño, como webhooks
- Cualquier tipo de función que envíe correo electrónico, especialmente con contenido personalizado
PD: Aikido puede ayudarte a centrarte sólo en los repositorios más importantes del universo de tu startup asignando niveles de riesgo a cada base de código.
No olvide el aspecto humano
Como CTO en una pequeña startup, normalmente también eres el encargado de la seguridad operativa. Proporciona a tu equipo los medios para proteger sus cuentas. Asegúrate de que utilizan Yubikeys de hardware o aplicaciones de software para 2FA y, si es posible, hazlo cumplir. Herramientas como Gmail permiten hacerlo. Es una gran primera línea de defensa contra los ataques de phishing.
Mantenerse al día en prácticas de seguridad es difícil
Aprender sobre nuevos tipos de ataques al software es difícil. Ya es bastante difícil seguir las actualizaciones de los lenguajes que utilizas (Python, Node, Go,..) o los parches del sistema operativo o los exploits populares en paquetes de código abierto. Los ataques específicos se vuelven más populares con el tiempo, por lo que vale la pena seguir las tendencias. Por ejemplo, después de notar un repunte en los ataques de adquisición de subdominios el año pasado, Aikido introdujo una herramienta de monitorización de adquisición de subdominios para prevenir ese riesgo y automatizar la práctica de monitorizar estos registros DNS.
Automatice
En mis anteriores empresas, intentábamos pasar al siguiente nivel de seguridad haciendo que una persona de seguridad creara un calendario con tareas de seguridad recurrentes. Hacer una revisión de acceso para todas las aplicaciones cada trimestre. Hacer un escaneo de secretos filtrados en el código cada dos semanas, limpiar las CVEs de paquetes de código abierto cada viernes, hacer un escaneo SAST de vez en cuando, verificar los registros DNS para tomas de subdominios cada mes,... El resultado de estas tareas era difícil de clasificar y convertir en procesable para los desarrolladores. Peor aún, cuando esta persona dejaba la empresa, era difícil para cualquier otra persona retomar estas tareas porque requerían muchos conocimientos específicos.
Aquí es donde la idea de Aikido comenzó a crecer. Necesitábamos una solución que automatizara todo lo anterior, filtrara el ruido y pusiera las tareas delante de tus desarrolladores en Slack o Jira.
Empieza a escanear tu código y tu nube con Aikido hoy mismo. Regístrate aquí y empieza a escanear gratis.