Seguridad de las aplicaciones web

El sitio web Open Web Application Security Project (OWASP) es una organización sin ánimo de lucro que tiene por fin mejorar la seguridad de las aplicaciones web.

En esta web podemos encontrar información sobre la seguridad de diferentes tecnologías. Por ejemplo, la página web PHP Top 5 explica las cinco principales vulnerabilidades de una aplicación desarrollada con PHP:

  1. Remote Code Execution
  2. Cross-site scripting
  3. SQL Injection
  4. PHP Configuration
  5. File system attacks

Por último, una utilidad muy interesante, VirusTotal, un antivirus online que nos permite analizar un fichero con la mayoría de antivirus que existen en la actualidad.

Servidores web para Windows

En los sistemas operativos Windows de Microsoft, el servidor web nativo se llama Internet Information Services (IIS). Sin embargo, también existen otras alternativas:

  • Apache, quizás el mejor servidor web actual.
  • XAMPP, disponible para Windows, Linux, Mac OS X y Solaris, contiene Apache, MySQL, PHP y Perl preconfigurados y listos para usar. Es portable, se puede utilizar sin instalar, por lo que se puede llevar en una memoria USB.
  • WampServer, incluye Apache, MySQL y PHP. Necesita instalación, pero tiene la ventaja que permite instalar múltiples versiones de los programas que lo componen y reproducir la configuración exacta del servidor de producción.
  • EasyPHP, incluye Apache, MySQL y PHP. Dispone de módulos preconfigurados con aplicaciones conocidas (WordPress, Drupal, Joomla, etc.) listas para instalar y utilizar. Es portable, se puede utilizar sin instalar, por lo que se puede llevar en una memoria USB.
  • Server2Go, se puede usar desde dispositivos de solo lectura como un CD-ROM.

Primeras críticas para HTML5

En el períodico El País ha sido publicado el artículo del El nuevo código de la web plantea dudas de privacidad.

La noticia dice:

Todavía sin una fecha de implantación concreta las críticas han comenzado a multiplicarse por los posibles problemas de privacidad que plantean las nuevas etiquetas del código HTML. Entre las ventajas del nuevo código se destaca la creación de etiquetas mucho más concretas y semánticas; más etiquetas pero también más ordenadas.

Un artículo del New York Times alerta a los navegantes: El navegador podrá compartir datos sobre el posicionamiento de usuario y los contactos a los que escribe.

El problema surge porque HTML5 incluye un nuevo API para el navegador con el fin de que las aplicaciones web (y por tanto, el servidor web, terceras personas) tengan conocimiento de la posición espacial (geolocalización) del usuario.

Pero no hay que tener miedo, ya que como podemos leer en el apartado 4 Security and privacy considerations de la especificación Geolocation API Specification del W3C:

The API defined in this specification is used to retrieve the geographic location of a hosting device. In almost all cases, this information also discloses the location of the user of the device, thereby potentially compromising the user’s privacy. A conforming implementation of this specification must provide a mechanism that protects the user’s privacy and this mechanism should ensure that no location information is made available through this API without the user’s express permission.

Es decir, un navegador no debe enviar información sobre la localización del usuario sin expreso consentimiento de este.

Más información:

¿Por qué hay que validar las páginas web?

La página web Validating your HTML, que forma parte del Opera Web Standards Curriculum, explica las razones por las que es importante validar las páginas web y comprobar que el código HTML es correcto y no contiene errores. Además se propone el uso de la herramienta W3C Markup Validation Service para validar las páginas web.

En Same DOM Errors, Different Browser Interpretations podemos encontrar varios ejemplos de errores sencillos en las páginas web y cómo son interpretados de diferente forma por diferentes navegadores.

Algunas páginas con más información:

¿Qué características de HTML 5 y CSS 3 soporta mi navegador?

El sitio web findmebyIP permite averiguar qué características de las nuevas tecnologías HTML 5 y CSS 3 soporta el navegador con el que te conectas a la página.

Por ejemplo, las siguientes dos imágenes muestran parte del test que se realiza en esta página. En la primera imagen vemos los resultados para Internet Explorer 8:

Y la siguiente imagen muestra los resultados del mismo test para Firefox 3.6:

Como se puede ver, los resultados son muy diferentes.