¿Por qué no es segura una aplicación de código abierto?

Por el contrario, el software de código abierto es más seguro que el software propietario en la mayoría de los casos.

Más ojos conducirán a un mejor software. En el código abierto en particular, esos ojos son “frescos” y no codificaron el proyecto durante meses, por lo tanto, la posibilidad de encontrar problemas de seguridad es mayor.

Sin embargo, todavía hay un problema con la forma en que se mantienen la mayoría de los proyectos de código abierto. Por ejemplo, ¿sabías que OpenSSL fue mantenido por dos tipos llamados Steve? La ley de Linus no siempre se aplica, ya que la mayoría de los usuarios solo se conectan y usan. En realidad no revisan el código.

A su pregunta sobre quién será vulnerable en el lado de la seguridad, la respuesta probablemente sería: ambos. Si hay una vulnerabilidad de seguridad, los clientes se verán afectados, y si los clientes se ven afectados, entonces la compañía también lo sufrirá.

Si está interesado, puede leer más información sobre este artículo: 3 razones por las que Open Source es más seguro que el software comercial

El software de código abierto parece vulnerable a la amenaza de seguridad. Hay algunas preocupaciones sobre este caso:

1. Cualquiera puede leer el código abierto y aprovechar los errores. El temor es que el código abierto pueda leerse y comprometerse. Pero en la práctica, las personas que realmente rompen el software no tienen necesidad de mirar el código fuente. Los proyectos de código abierto tienen comunidades activas donde cualquiera puede encontrar y corregir errores en el código. Los desarrolladores quieren aumentar su profesionalismo, por eso demuestran código escrito de acuerdo con las mejores prácticas, y tratan de corregir posibles vulnerabilidades de seguridad.

2. Ningún incentivo financiero significa que no hay motivación para hacer OSS seguro. Si el proyecto de código abierto tiene éxito, puede ser rentable para el equipo que lo respalda. Los desarrolladores de la comunidad OSS están interesados ​​en proporcionar un producto de alta calidad sin errores ni fallas. Cuando se encuentra alguna vulnerabilidad, los desarrolladores la corregirán de inmediato hasta que su reputación esté en riesgo. Además, las empresas a veces carecen de dinero o tiempo, por eso la seguridad del producto podría estar subcontratada.

3. El software propietario es inherentemente más seguro que el software de código abierto. En el caso de una licencia comercial, la seguridad se basa solo en la confianza del proveedor. Además, los equipos de software propietario generalmente consisten en menos personas sin, por ejemplo, ingenieros de control de calidad, que ayudan a eliminar las vulnerabilidades. Por otro lado, con los equipos de OSS puedes: participar en la revisión del código; seguir con la versión anterior; lanzar su propio parche; deshabilitar ciertas funciones bajo sospecha.

Cada parte del software (propietario y de código abierto) es única, y debe considerar su seguridad individualmente. También descubra las herramientas utilizadas en la industria; Por ejemplo, Airbnb y 500px utilizan Ruby on Rails, lo que indica la confiabilidad del marco. Para obtener más información y ejemplos sobre mitos de seguridad de código abierto, puede leer el artículo https://rubygarage.org/blog/open … en el blog de RubyGarage.

Las aplicaciones de código abierto tratan principalmente los problemas y problemas con el apoyo de la comunidad. A diferencia de algunas aplicaciones comerciales, donde el soporte adecuado está presente.

Las aplicaciones de código abierto no cobran mucho como tarifas de licencia o cargos de suscripción y, por lo tanto, tienen recursos limitados para el desarrollo de aplicaciones, parches de seguridad y actualizaciones. Aunque esencialmente no es el caso, la aplicación de código abierto será insegura, y para profundizar en esto en un sentido más profundo, consulte el siguiente artículo: Seis mitos de seguridad de código abierto desacreditados, y ocho desafíos reales a considerar | ZDNet

Las soluciones de código abierto son más seguras porque el código está abierto; cualquier vulnerabilidad es fácilmente detectable y se resuelve rápidamente al referirse a la vasta comunidad en línea de desarrollo de software libre.

Otro aspecto de investigar esto es que la aplicación de código abierto puede ser más lenta para emitir parches de software críticos a medida que surgen vulnerabilidades. Pero el argumento de que el código abierto debe ser arriesgado, ya que requiere tantos parches, se contrarresta con la explicación de que al tener a tantas personas trabajando con el código fuente de estos proyectos, se descubren vulnerabilidades potenciales y fallas de diseño mucho más rápido que con los programas creados. en código de propiedad.

Se puede encontrar otro artículo perspicaz sobre la seguridad de las aplicaciones de código abierto en:

Seguridad de software de código abierto

El software seguro es muy difícil para el diseño y la construcción, también se puede implementar correctamente.

El mismo desafío existe para el software abierto o cerrado. Es un mito pensar que el código abierto es más seguro solo porque millones de desarrolladores pueden leerlo o descargarlo. Solo más globos oculares no se traducen automáticamente en un software más seguro.

Tenga en cuenta que el atacante también puede

  1. descargue el mismo software de código abierto y estudíelo.
  2. Puede buscar ejemplos de codificación específicos en el s / w que puede explotar como vulnerabilidad e incluso verificarlo antes de aprovecharlo en algún ataque del mundo real.
  3. Quizás también explote problemas relacionados con la configuración, como la administración de claves criptográficas

Lo más importante es que el software src abierto puede ser s / w de propósito general en lugar de construido específicamente, por lo que puede tener mucho software (líneas) que significa más área de superficie y, por lo tanto, más vulnerabilidades para atacar

Además, la pila s / w puede ser grande, ya que normalmente un componente aprovecha otro componente de código abierto (creado por un equipo diferente). Por lo tanto, es fácil verse obligado a instalar muchos más componentes de los que uno necesita o le gusta. Mira el zoológico hadoop.

Por otro lado, el software comercial * quizás * diseñado específicamente y, por lo tanto, más pequeño. No necesariamente siempre es cierto.

En segundo lugar, el código fuente del software comercial no está disponible para que personas externas lo revisen. Esto también significa que incluso el atacante no puede leer. ¡Una especie de seguridad por oscuridad!

a menudo hay requisitos de licencia para s / w comerciales como SAP, por lo que otro obstáculo para que el atacante cruce.

No digo que el software comercial sea más seguridad.

Todo lo que digo es que no asuma que el software de código abierto significa seguridad especialmente si está construyendo un producto de seguridad.

Por el contrario, una aplicación de código abierto es mucho más superior, robusta y segura que sus homólogos patentados. El sorprendente éxito de sistemas como Linux y FreeBSD es un testimonio de este hecho.

Como Eric Raymond lo dice acertadamente en su libro, Cathedral and the Bazaar, “dado suficientes globos oculares, todos los errores se vuelven superficiales”. FOSS está siendo constantemente desarrollado, probado, auditado y evolucionado por algunas de las mejores mentes de este mundo, por lo que cualquier error o falla de seguridad se detecta en un instante durante las auditorías.

En comparación con esto, no sabes qué sucede detrás de los muros cerrados de un fabricante de software propietario como Apple o Microsoft. Una falla de seguridad en estos sistemas es solo la declarada por estas compañías. Como no tiene el código fuente, no puede auditar estos productos y estar absolutamente seguro de que no tienen problemas de seguridad. Por lo tanto, FOSS siempre se prefiere a una alternativa patentada.

Porque el software puede usarse de formas que el desarrollador nunca consideró. O porque el desarrollador utilizó técnicas de codificación deficientes. O porque el desarrollador usó una biblioteca que era vulnerable porque [volver al inicio]

tl; dr: se equivocaron