Análisis de servidores web en dominios ".es" (II)

Hace unos días veíamos las estadísticas que habíamos obtenido de los servidores web, lo que evidenciaba la gran cantidad de trabajo que queda por hacer. Sin embargo, como veremos a continuación, ese no es el único problema.

Tecnologías web

No todos los servidores responden sobre las tecnologías web que albergan (ASP, PHP, etc). De los 914.903 dominios en los que nos estamos basando, solo 395.828 respondieron a esta consulta y de ellos sacamos estas tecnologías:

  • PHP: 216.066.
  • ASP.NET: 111.171.
  • Plesk: 57.383.
  • Otros: 11.208.

1. ASP y Plesk

ASP no aporta información de sus versiones (punto para Microsoft), por lo que no podemos conocer nada de su antigüedad. Con Plesk ocurre lo mismo, solo se nos indica “PleskLin”, que entiendo que significa Plesk sobre Linux y no aporta información de versiones.

2. PHP

PHP es otro mundo. Whatweb nos reporta bastante información, entre ella, las versiones de PHP instaladas. Acumulando, encontramos que las versiones más comunes de PHP en los dominios “.es” son:

  • PHP 5.3.3: 34517 (de esos 216.066 totales, un 16%).
  • PHP 5.2.17: 26002 (un 12%).
  • PHP 5.4.38: 25663 (un 11%).
  • PHP 5.3.2: 23302 (un 10%).
  • PHP 5.3.29: 14317 (un 6,6%).
  • PHP 5.4.39: 13723 (otro 6%).
  • PHP 5.2.6: 8748 (un 4%).
  • PHP 5.5.23: 8074 (un 3,7%).
  • Otras versiones (aproximadamente un 30%).

La fecha que vemos encima de cada barra es la fecha en que dejaron de tener soporte según PHP.net. De hecho podemos ver que solo el 27% de los PHP dando funcionamiento estan actualmente bajo soporte de PHP.net:

Como vemos el 14 de Agosto de 2014 se dejó de dar soporte a 5.3.29 y con esta versión, un total de 217000 dominios .es se encontraron sin soporte PHP. En la actualidad, únicamente las versiones 5.4, 5.5 y 5.6 tienen soporte activo.

Si acumulamos la información anterior por familias:

  • PHP 5.5: 18987 (un 8,7%).
  • PHP 5.4: 56933 (un 26%).
  • PHP 5.3: 88730 (un 41%).
  • PHP 5.2: 39889 (un 18,5%).
  • PHP 5.1: 3084.
  • PHP 5.0: 823.
  • PHP 4.4: 3980.
  • Anteriores a 4.4: 3640.

Por poner un ejemplo, de la segunda versión más utilizada, la 5.2.17, encontramos que tiene las siguientes vulnerabilidades (38 en total):

CMS

En cuanto a los CMS, de los 914903 dominios, solo 137061 usaron algún tipo de CMS según whatweb. Entre ellos:

  • WordPress: 63.330 (un 46% del total).
  • Joomla!: 22.572 (16,44% del total).
  • 1and1: 10.947 (Un 8%).
  • Prestashop: 6944 (Un 5%).
  • Microsoft Tools (Frontpage + Word + Powerpoint): 5694 (4%).
  • Drupal: 3162 (2,3%).
  • One.com Web Editor: 2750.
  • Incomedia Website X5: 2607.
  • iWeb: 2103.
  • Parallels Plesk: 1937 .
  • Otros: 15015.

Ahora bien, lo más interesante viene al descubrir las versiones de los CMS. Algunos de ellos no daban información relevante (como debe ser), por ejemplo los de 1and1, los Drupal (el 99,99% devuelven “Drupal 7”) o los Prestashop. Pero los Joomla! y sobre todo los WordPress son una mina, como veremos a continuación.

1. Joomla!

Se obtuvo información de 22.572 Joomla!‘s. De ellos 15.903 no aportaban información relevante sobre la versión instalada. Pero otros 6.669 nos dijeron lo siguiente:

  • Sin informacion relevante: 15903.
  • Joomla! 1.5 : 5789.
  • Joomla! 1.6 : 231.
  • Joomla! 1.7 : 530.
  • Joomla! 2.5 : 70.
  • Joomla! 3 (en sus diferentes versiones): 49.

El script no aporta información de las subversiones de Joomla! en las ramas 1.5 a 1.7, pero si en las versiones 2.5 y 3, aunque el (aparentemente) reducido número de implantaciones de estas versiones proporciona poca información. Es muy raro que aparezcan tan pocas implantaciones de Joomla! 2.5 y Joomla! 3, por lo que lo más probable es que todas las que no devuelven información sean implantaciones de estas versiones. En cualquier caso, Joomla! ha demostrado ser un CMS muy envejecido y con una tasa de actualización bastante baja. Hay que recordar que casi un 30% de las implantaciones son Joomla 1.5, 1.6 o 1.7 y que Joomla! 1.5 se lanzó en Enero de 2008 y se le dejó de dar soporte en Diciembre de 2012. De hecho, a las versiones 1.6 y 1.7 también se les dejó de dar soporte en 2012 y las únicas actualmente con soporte oficial son las versiones 3.3 y 3.4.

2. WordPress

Vaya por delante que no tengo ni idea de WordPress por lo que puede que a lo largo de las siguientes líneas realice alguna afirmación que no tenga ni pies ni cabeza. Una vez dicho esto, hay que decir que la gran mayoría de los WordPress accedidos devolvieron la versión de WordPress (fail?). En total se obtuvo información de 63.330 wordpress en dominios “.es”. Las versiones más utilizadas (en el momento del estudio) fueron:

  • 4.1.1 : 9727 (Un 15% del total).
  • 4.1.3: 5165 (Un 8%).
  • 4.1.2: 4377 (Un 7%).
  • 4.0.1: 3834 (Un 6%).
  • 3.5.1: 2698 (Un 4,2%).

Hay que decir que las versiones de WordPress encontradas están bastante actualizadas. El 30% de las implantaciones tienen las 3 versiones más actualizadas. Y casi el 50% tiene instalada un WordPress de la rama 4.X.

En WordPress.org encontramos las fechas de publicación de cada release. De las 5 versiones más implantadas que vemos en el gráfico anterior, sólo una, la versión 3.5.1 tendría más de un año de antigüedad. En concreto fue lanzada el 24 de Enero de 2013. El resto puede considerarse como actual.

Aparentemente WordPress no deja nunca de dar soporte a versiones antiguas por lo que no podemos ver un gráfico como el que vimos con PHP. En wpvulndb.com tenemos un listado de vulnerabilidades en las distintas versiones de WordPress. Así, por ejemplo vemos que entre las 3 primeras, la 4.1.1 tiene reportadas 3 vulnerabilidades, la 4.0.1, dos vulnerabilidad reportadas, la 4.1.2 una, mientras que la versión 3.5.1, la que tiene más de un año de antigüedad, se han reportado ya 13 vulnerabilidades (véase http://www.cvedetails.com/vulnerability-list/vendor_id-2337/product_id-4096/version_id-147174/Wordpress-Wordpress-3.5.1.html) y está instalada en 2700 dominios .es. Sin comentarios.

Si agrupamos la información por familias vemos que sigue habiendo mucho WordPress 3 y algún que otro WordPress 2:

  • WordPress 3: 23379.
  • WordPress 4: 31023.
  • WordPress 2: 526.
  • Sin informacion: 8402.

De hecho acumulando versiones vemos que el 81% de los wordpress tienen una antigüedad (de fecha de salida) de menos de 2 años, pero un 16% (un total de 9376 implantaciones) cuenta aún con una versión de WordPress de más de 2 años de antigüedad que, a buen seguro, tendrá un gran número de vulnerabilidades.

2.1 Plugins de wordpress

Pero no solo tenemos información de las versiones de WordPress. Si nos fijamos en la información devuelta por Whatweb, encontramos que nos informa de algunos plugins instalados (me imagino que no todos). En total más de 400 plugins diferentes instalados en 17378 WordPress aportaron este tipo de información. Todos ellos con sus respectivas versiones. Los plugins más instalados fueron:

  • Visual Composer: 4594.
  • WooCommerce: 3977.
  • WPML: 3131.
  • Divi: 1129.

En wpvulndb podemos encontrar las vulnerabilidades de los plugins de WordPress. Por ejemplo WooCommerce (el 2º plugin más detectado) tiene reportadas 8 vulnerabilidades y WPML tiene una vulnerabilidad recientemente reportada.

Conclusión

Por suerte, los desarrolladores y fabricantes cada vez aportan menos información cuando se escanean sus productos. Sin embargo el estudio demuestra que sigue habiendo muchos productos, muchos sistemas, muchos servidores no actualizados. Es de suponer, además, que todos los productos que no nos aportan información sean versiones actualizadas, pero por supuesto nada se puede asegurar al respecto.

ASP, Nginx, Plesk no exhiben ningun tipo de información (al menos usando sólo el script whatweb). En cuanto a Apache, de las instalaciones que nos aportaron información (solo un 21%), el 74% usan versiones que tendrían más de un año de antigüedad. Los IIS detectados son, en su mayor parte (un 92%) versiones que podríamos catalogar como antiguas, siendo la más utilizada la versión 6.0 (que originalmente venia con Windows Server 2003). Esto no quiere decir que sean todas vulnerables ya que muy probablemente un porcentaje alto esté siendo mantenido y actualizado, pero…

Con los Joomla! ocurre algo parecido: solo un 29% nos dan algo de información, casi todos ellos indicándonos que son versiones 1.5, 1.6 y 1.7. Pocos CMS he conocido más vulnerables que Joomla! 1.5… y hay 2700 por ahí. ¿Solo 2700? Se me hacen muy pocos… Podríamos suponer que el 71% restante son versiones 2.5.X o 3.X pero no podemos asegurar tal cosa. Con respecto a WordPress ocurre que la gran mayoría de las instalaciones nos dicen que versión es. Esto nos permite saber que un 50% tienen instalada una versión de la rama 4.X y un 64% tiene un WordPress de menos de 2 años de antigüedad. En el caso de PHP, solo un 27% de los PHP que hay por ahí están oficialmente soportados por PHP.NET (solo las versiones 5.4., 5.5 y 5.6 lo están).

Hemos de tener en cuenta que este estudio ha sido realizado de manera muy superficial, cuidando hasta el extremo el potencial impacto y siendo lo menos agresivos posible. Toda la información obtenida está “ahí fuera” sin necesidad de “rascar”, disponible para todo el mundo incluidos aquellos sin buenas intenciones. Seguramente un enfoque más profundo (sin necesidad de ser agresivo) proporcionaría mucha más información del estado actual de servicios Joomla!, WordPress, IIS o Apache.

En resumen, los administradores tienen aún mucho trabajo. Sobre todo los de los pequeños hostings, que siguen siendo un porcentaje muy alto de los que los alojan dominios “.es”.

Trackbacks

  1. […] entrada Análisis de servidores web en dominios “.es” (II) aparece primero en Security Art […]