Los indicadores fácilmente reconocibles por un usuario de
que ha conectado con un servidor web seguro son la URL en la barra de
direcciones del navegador, que debe comenzar por https:// en lugar del habitual
http://, y el símbolo de un candado cerrado o una llave completa que aparece en
la barra de estado, en la parte inferior del navegador.
Adicionalmente, el usuario puede hacer doble click en el
icono del candado o la llave, dependiendo del navegador utilizado, para
visualizar información detallada del certificado de seguridad. Algo tan básico y útil de cara al usuario,
como el poder comprobar la seguridad de su conexión con el web de la entidad,
es en muchas ocasiones ocultado de forma artificial, facilitando la labor de
los ataques "phishing".
Un ejemplo real lo podemos observar, por ejemplo, en la web
de la entidad ING Direct (http://www.ingdirect.es). Aparentemente, por los
elementos visibles, no podemos comprobar que estamos conectados a un servidor
web seguro y que nuestros datos se enviarán cifrados, dado que ni la dirección
comienza por https:// ni apreciamos el icono del candado o llave en la parte
inferior del navegador.
Éste es el diseño ideal para un ataque "phishing",
ya que es fácil de imitar, y el usuario no echará en falta los indicadores
visuales que le permiten comprobar que no está conectando con un servidor web
seguro.
Lenguajes
de programación del lado Servidor
Existe
una multitud de lenguajes concebidos o no para Internet. Cada uno de ellos
explota más a fondo ciertas características que lo hacen más o menos útiles
para desarrollar distintas aplicaciones.
Un
lenguaje del lado del servidor es aquel que se ejecuta en el servidor web,
justo antes de que se envíe la página a través de Internet al cliente. Las
páginas que se ejecutan en el servidor pueden realizar accesos a bases de
datos, conexiones en red, y otras tareas para crear la página final que verá el
cliente.
Los
lenguajes de lado servidor más ampliamente utilizados para el desarrollo de
páginas dinámicas son el ASP, JSP, PERL y PHP.
ASP.NET (Active Server
Pages).
Lenguaje
comercializado por Microsoft, y usado por programadores para desarrollar entre
otras funciones, sitios web. ASP.NET es el sucesor de la tecnología ASP, fue
lanzada al mercado mediante una estrategia de mercado denominada .NET.
Se
desarrollado para resolver las limitantes que brindaba tu antecesor ASP. Para
el desarrollo de ASP.NET se puede utilizar C#, VB.NET o J#. Los archivos
cuentan con la extensión (aspx). Para su funcionamiento de las páginas se
necesita tener instalado IIS con el Framework .Net. Microsft Windows 2003
incluye este framework, solo se necesitará instalarlo en versiones anteriores.
El
lenguaje ASP consiste en una serie de clases .NET utilizadas para crear
aplicaciones Web, tanto del lado cliente (Web Form) como del lado servidor (Web
Service). La integración de nativa .NET Framework con el sistema operativo Windows
Server 2003 hace que su ejecución sea más estable y rápida que otros lenguajes
de programación.
Las
páginas creadas con la tecnología ASP.NET funcionan en todo tipo de navegadores
– incluyendo Netscape, Safari y Internet Explorer.
Actualizaciones
Dinámicas Soporte de servicios web XML Conexiones del tipo DSN, o sin
utilización de DSN, para acceder a fuentes de datos ODBC.
Ventajas:
- Completamente
orientado a objetos.
- Controles
de usuario y personalizados.
- División
entre la capa de aplicación o diseño y el código.
- Facilita
el mantenimiento de grandes aplicaciones.
- Incremento
de velocidad de respuesta del servidor.
- Mayor
velocidad.
- Mayor
seguridad.
Desventajas:
- Mayor consumo de recursos.
- Tecnología propietaria.
- Hospedaje
de sitios web costosos.
JSP
Es un
lenguaje para la creación de sitios web dinámicos, acrónimo de Java Server
Pages. Está orientado a desarrollar páginas web en Java. JSP es un lenguaje
multiplataforma.
JSP fue
desarrollado por Sun Microsystems. Comparte ventajas similares a las de
ASP.NET, desarrollado para la creación de aplicaciones web potentes. Posee un
motor de páginas basado en los servlets de Java. Para su funcionamiento se
necesita tener instalado un servidor Tomcat.
Características:
- Código
separado de la lógica del programa.
- Las
páginas son compiladas en la primera petición.
- Permite
separar la parte dinámica de la estática en las páginas web.
- Los
archivos se encuentran con la extensión (jsp).
- El código
JSP puede ser incrustado en código HTML.
Los
elementos que pueden ser insertados en las páginas JSP son los siguientes:
- Código: se puede
incrustar código “Java”.
- Directivas: permite
controlar parámetros del servlet.
- Acciones: permite
alterar el flujo normal de ejecución de una página.
Ventajas:
- Ejecución
rápida del servlets.
- Crear
páginas del lado del servidor.
- Multiplataforma.
- Código
bien estructurado.
- Integridad
con los módulos de Java.
- La parte
dinámica está escrita en Java.
Desventajas:
- Complejidad
de aprendizaje.
PHP
PHP es el
acrónimo de Hipertext Preprocesor. Es un lenguaje de programación del lado del
servidor gratuito e independiente de plataforma, rápido, con una gran librería
de funciones y mucha documentación. Fue creado originalmente en 1994 por Rasmus
Lerdorf, pero como PHP está desarrollado en política de código abierto, a lo
largo de su historia ha tenido muchas contribuciones de otros desarrolladores.
El
cliente solamente recibe una página con el código HTML resultante de la
ejecución de la PHP. Como la página resultante contiene únicamente código HTML,
es compatible con todos los navegadores.
Ventajas:
- Muy fácil
de aprender.
- Se
caracteriza por ser un lenguaje muy rápido.
- Soporta
en cierta medida la orientación a objeto. Clases y herencia.
- Es un
lenguaje multiplataforma: Linux, Windows, entre otros.
- Capacidad
de conexión con la mayoría de los manejadores de base de datos: MysSQL,
PostgreSQL, Oracle, MS SQL Server, entre otras.
- Capacidad
de expandir su potencial utilizando módulos.
- Posee
documentación en su página oficial la cual incluye descripción y ejemplos de
cada una de sus funciones.
- Es libre,
por lo que se presenta como una alternativa de fácil acceso para todos.
- Incluye
gran cantidad de funciones.
- No
requiere definición de tipos de variables ni manejo detallado del bajo nivel.
Desventajas:
- Todo el
trabajo lo realiza el servidor y no delega al cliente. Por tanto puede ser más
ineficiente a medida que las solicitudes aumenten de número.
- La
legibilidad del código puede verse afectada al mezclar sentencias HTML y PHP.
- La
programación orientada a objetos es aún muy deficiente para aplicaciones
grandes.
- Dificulta
la modularización.
- Dificulta
la organización por capas de la aplicación.
Seguridad:
PHP es un
poderoso lenguaje e intérprete, ya sea incluido como parte de un servidor web
en forma de módulo o ejecutado como un binario CGI separado, es capaz de
acceder a archivos, ejecutar comandos y abrir conexiones de red en el servidor.
Estas propiedades hacen que cualquier cosa que sea ejecutada en un servidor web
sea insegura por naturaleza.
No hay comentarios:
Publicar un comentario