Inicio / Programación / Los lenguajes de programación que generan la mayoría de las vulnerabilidades del software

Los lenguajes de programación que generan la mayoría de las vulnerabilidades del software

La ola de advertencias y parches de vulnerabilidad de WordPress y Drupal en los últimos dos años, así como el interminable descubrimiento de errores de inyección SQL en las aplicaciones Web, pueden ser rastreados hasta su lenguaje de scripts subyacente — PHP.

Aplicaciones

Alrededor del 86% de las aplicaciones escritas en PHP contenían al menos una vulnerabilidad de scripting en sitios cruzados (XSS) y el 56% venían con al menos un error de inyección SQL, según una nueva investigación publicada hoy por Veracode, que estudió las aplicaciones escritas en los lenguajes de programación más extendidos — PHP, Java, Microsoft Classic ASP, .NET, iOS, Android, C y C++, JavaScript, ColdFusion, Ruby, y COBOL. Los datos se basan en sus escaneos basados en la nube y en el análisis de código de más de 50.000 aplicaciones en los últimos 18 meses.

Alrededor del 64% de las aplicaciones escritas en ASP clásico y el 62% de las escritas en ColdFusion tenían al menos un error de inyección SQL. Mientras tanto, el .NET y el Java son los mejores, con muchos menos casos de fallos de seguridad en sus aplicaciones: El 29% de las aplicaciones .NET y el 21% de las aplicaciones Java se encontraron con al menos un error de inyección SQL.

Chris Wysopal, fundador y CTO de Veracode, dice que los problemas de PHP son una de las razones por las que la inyección SQL – uno de los más abusivos y a la vez más fáciles de arreglar – simplemente no morirá. «Cuando veo una brecha, una de las cosas que se me ocurren es ‘Apuesto a que era un sitio PHP'». Wysopal dice. «Lo que mantiene algunas de estas vulnerabilidades vivas y bien es el uso de lenguajes que son más difíciles de programar de forma segura.

Todo se reduce a la forma en que estos lenguajes de programación están diseñados, y su uso. Mientras que Java y .NET tienen funciones incorporadas para reducir el riesgo de desbordamiento de buffer, XSS, e inyección SQL, PHP y ASP no vienen tan bien equipados y tienen menos APIs de seguridad. Según el informe de Veracode, tradicionalmente ha sido difícil escribir aplicaciones en PHP que «enlazan parámetros en consultas SQL», lo que lo hace más propenso a fallos de inyección SQL.

«Es más difícil programar en esos lenguajes [lenguajes de scripting]. No hay tantas funciones incorporadas», dice Wysopal. «Y los programas .NET y Java son típicamente usados por los graduados en informática que aprendieron esos lenguajes en la escuela. Muchos de los lenguajes de programación como ColdFusion y ASP salieron del mundo de la web, donde estás diseñando sitios web y empezando a aprender codificación, [y] a hacer sitios más interactivos».

También fallan

Estos lenguajes también fallan en el Top 10 de OWASP: cuatro de cada cinco aplicaciones escritas en PHP, ASP clásico y ColdFusion fallaron en al menos uno de los estándares de seguridad de aplicaciones. Veracode señala que esto tiene un gran impacto en la Red en general, ya que alrededor del 70% de los sistemas de gestión de contenidos en la Web están basados en PHP WordPress, Drupal y Joomla. Por lo tanto, «las organizaciones que buscan utilizar estos CMS deben planificar cuidadosamente sus despliegues», dijo Veracode en su informe.

Los desarrolladores están básicamente atascados con el lenguaje y la plataforma que su organización elige. «No es frecuente que un desarrollador llegue a seleccionar eso», dice. «Están como [limitados] por el entorno y el lenguaje que necesitan para construir sus aplicaciones».

Eso no quiere decir que no puedan estar mejor entrenados para escribir código seguro. Veracode también estudió los índices de corrección de vulnerabilidades, que mostraron una mejora del 30% en las correcciones de vulneración en las organizaciones que emplean formación en código seguro para sus desarrolladores.

Puede interesarte

Por qué Detroit se traslada a Silicon Valley

Ford Motor Co., la empresa que puso en marcha la cadena de montaje de automóviles …

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *