Dado que cualquiera puede modificarlo y redistribuirlo, al final hay un montón de versiones distintas y es todo un caos.
Hacer muchas variantes del mismo software, no es rentable, supone mucha duplicación de esfuerzos y confusión. Eso es precisamente el tipo de cosa que se trata de evitar desde el software libre. Nadie en su sano juicio bifurca un proyecto sin una buena razón. Y en cualquier caso siempre se puede coger el software directamente del equipo de desarrollo oficial.
Si no tienes conocimientos suficientes, ni tiempo muchas veces, ¿de que te sirve el código fuente?
Hay gente que sí tiene el conocimiento y el tiempo, y cuando se descubre algún fallo salta a la luz pública enseguida. De esta forma, todos los usuarios que lo utilizan son conscientes de esos fallos de seguridad y pueden obrar en consecuencia. En materia de seguridad, la falta de transparencia sólo perjudica a los usuarios, porque puede resultar mucho más difícil descubrir las vulnerabilidades del software que estén utilizando.
Al estar el código fuente disponible los intrusos tienen ventajas, ya que pueden descubrir antes los fallos y aprovecharse de ellos.
Cierto, pero hay algo más sobre este tema, que desde los sectores contrarios al software libre no se comenta. No sólo los intrusos los descubren, sino que también hay gente dedicada a la "caza" de bugs que descubre los fallos, los pone en conocimiento de los usuarios y los arregla, con lo cual los usuarios pueden obrar en consecuencia (por otro lado, al ser conscientes del fallo de seguridad y gracias a la disponibilidad del código fuente, es posible que cualquier persona con los conocimientos adecuados pueda arreglar el fallo y poner la versión ya reparada a disposición de los usuarios). Con software propietario, habría que esperar a que la empresa sacara el parche o Service Pack correspondiente y no hay que olvidar que esto lo hará cuando le salga económicamente rentable. Generalmente se espera a tener corregidos una determinada cantidad de errores y sólo entonces se libera el correspondiente Service Pack, en lugar de solucionar los fallos cuando se detectan. De este tipo de políticas también salimos perjudicados los usuarios.
Por otro lado, en el mundo propietario, cuando alguien descubre un agujero de seguridad, puede explotarlo durante mucho tiempo sin el conocimiento del afectado o el productor del software. En software libre, se descubren mas agujeros que salen pronto a la luz publica y son tapados rápidamente. En el peor de los casos no es mas que un intercambio de ventajas.