¿Se habría evitado el Cloudbleed si se utilizara Rust? Sé que no es lo mismo que Heartbleed, pero Rust probablemente habría evitado Heartbleed .
¿Se habría evitado el Cloudbleed si se utilizara Rust? Sé que no es lo mismo que Heartbleed, pero Rust probablemente habría evitado Heartbleed .
Tony Arcieri respondió el 3/2/17 a las 12:28 AM:
Sí, esta era una vulnerabilidad de seguridad de memoria. Aunque surgió en código generado (de Ragel), si Ragel generara código Rust, lo haría No tiene esta vulnerabilidad.
De la descripción detallada del error es visible, que ya han utilizado una herramienta de alto nivel para crear código, pero que no utilizaron la herramienta correctamente. Para citar:
La verificación de igualdad es generada automáticamente por Ragel y no fue parte del código que escribimos. Esto indicó que no estábamos usando Ragel correctamente.
Por lo tanto, ¿Rust habría impedido usar una herramienta de alto nivel de manera incorrecta? Probablemente no. Pero si la herramienta generara un código Rust en lugar de un código C, ¿se habría detectado la saturación del búfer? Esto es probable ya que la protección contra el exceso de búfer es uno de los objetivos de Rust. Pero como la herramienta no genera el código Rust, no se puede decir con seguridad cómo se vería este código y si Realmente se habría evitado el problema.
Lea otras preguntas en las etiquetas programming memory rust