• No results found

En la actualidad es muy difícil confiar en la seguridad en Internet al menos si se trata de enviar datos importantes como por ejemplo al realizar compas on-line y es que la seguridad no solo se trata de un problema de carácter técnico (programas con fallos de seguridad difíciles de configurar y actualizar), sino también de formación y sensibilización. Muchos de los usuarios no tienen suficientes conocimientos informáticos, al momento de configurar los equipos para que la navegación en Internet sea más segura.

Además los servidores Web y los navegador con más difusión como Internet Explorer sufren más ataques informáticos, es necesario destacar el nivel de seguridad del equipo y la cantidad de servicios por el navegador, de hecho estas funciones o servicios “facilitan la integración automática de otras aplicaciones instaladas en el equipo (como las herramientas ofimáticas), la ejecución de código activo (applets, Java, controles ActiveX, scripts) o la descarga de

varios plugins para visualizar determinados contenidos multimedia.” (GOMEZ, 2009). Es por

eso que todas estas funciones avanzadas representan mayor riesgo de seguridad en el equipo.

2.2.7.1. Vulnerabilidades: Una vulnerabilidad es cualquier debilidad en el sistema

informático que pueda permitir a las amenazas causarle daños y producir pérdidas en la organización.

2.2.7.2. Problemas de Seguridad en la Web

A los usuarios les preocupa mucho la seguridad que puedan encontrar al navegar en la Web, están conscientes de los peligros que pueden encontrar, al no contar con una buena seguridad; y es que en la red hay gran cantidad de información valiosa que es el objetivo principal para los ataques informáticos. Entre los principales problemas que se dan en la red son los siguientes:

38

2.2.7.2.1. El servidor Web puede no ser seguro: puede ofrecer información falsa a los

usuarios, facilitar la descarga de software malicioso.

2.2.7.2.2. El navegador puede ejecutar código dañino descargado desde Internet: applets

Java maliciosos, “plugins” o controles ActiveX.

2.2.7.2.3. Un atacante podría interceptar la información intercambiada entre el navegador

y el servidor Web, si no se utiliza una conexión protegida mediante técnicas criptográficas.

2.2.7.2.4. Otras como el secuestro de sesiones (“hacking”), ataques de repetición (“replay

attacks”), ataques de intermediario (del tipo “man-in-the-middle”), acceso a información sensible o modificación del contenido del servidor Web. (GOMEZ, 2009)

2.2.7.3. Recomendaciones para el desarrollo de aplicaciones Web Seguras

2.2.7.3.1. Protección de la Información transmitida: En el desarrollo de una aplicación

web garantizar la confidencialidad e integridad de los datos intercambiados entre el usuario, el equipo y el servidor Web es de vital importancia, el protocolo HTTP utiliza una serie de métodos o protocolos para gestionar el envío de la información, a continuación una descripción de estos:

Tabla 9. Métodos de respuesta HTTP

Interpretación

GET Este método utiliza la URL para el envío de los datos, por eso no es una buena opción para proteger la información; ya que al ser mostrados en la URL son visibles a terceros.

POST A diferencia del método anterior este no muestra los datos en la URL, por ende muy útil al momento de enviar información vulnerable como variables de sesión.

HEAD “utilizado para obtener meta-información sobre registros del servidor, como por ejemplo el tamaño de un fichero para poder visualizarlo y descargarlo.”

PUT permite guardar una determinada versión del fichero en el servidor Web, pero no específica la localización de este

DELETE Acción que solicita el cliente para eliminar un recurso especifico. TRACE Envía una copia de la petición para supervisar su progreso CONNECT Petición usada por SSL

39

2.2.7.3.2. Identificación y autenticación de Usuarios: Según McClure Stuart y Kurtz

George (2010) la autenticación se la define como la identificación de un usuario, usado en conjunto con la autorización para permitir o denegar el acceso a un recurso particular. Hay muchas formas de autenticar a un usuario, y algunas veces necesitará permitir el acceso a recursos sin ninguna autorización, por ejemplo en un sitio de compras. Solamente cuando el usuario quiere actualizar sus elementos de compra es cuando inicia el proceso de autenticación.

2.2.7.3.3. Validación de entrada y salida de información en la Aplicación Web: El

Servidor Web debería filtrar, revisar y validar la información que se envía desde el navegador Web ya que no es una aplicación de confianza, debido a que cualquier intruso en la red podría modificar los datos; tampoco fiarse de las validaciones del lado del cliente ya que el código puede ser manipulado por terceros.

Es necesario limitar el tamaño y el rango de los caracteres en los campos de un formulario de la aplicación Web, sin olvidar de controlar los campos que tienen la función autocompletar, el navegador podría llenar los campos con información invalida. Para ROLDÁN, VALDERAS, & PASTOR, (2010) hay que tomar en cuenta los siguientes puntos:

2.2.7.3.4. Control de accesos: “una vez confirmada la entrada del usuario en el sistema,

el control de acceso pretende asegurar que las acciones realizadas por el usuario están en

conformidad con los privilegios del mismo.”

2.2.7.3.5. Control de flujo en la información: “complementa el control de accesos,

evitando cierto actos de los usuarios sobre los datos a los que tiene derecho a acceder. Por ejemplo, pueden evitar la copia de un fichero de acceso restringido. ”

40

2.2.7.3.6. Protocolos Criptográficos: Para que la navegación en las aplicaciones Web

sea segura, se emplean determinados protocolos criptográficos. Estos protocolos emplean entre ciertos esquemas de encriptación numéricos, asimétricos, firmas electrónicas, funciones hash, generadoras de números pseudoaleatorios, etcétera. Hay que tener en cuenta que estos protocolos solo permiten proteger los datos intercambiados en una transacción entre el navegador y el servidor web.

a) Protocolos SSL: el significado de sus siglas Secure Sockets Layer en español Capa de

Conexión Segura, fue creado para “garantizar la seguridad en el intercambio de datos entre el navegador y el servidor Web, siendo hoy en día el más utilizado para realizar transacciones comerciales en Internet. SSL permite garantizar la confidencialidad, la autenticación y la integridad de los mensajes intercambiados” (GOMEZ, 2009)

b) Protocolos TLS: el protocolo Transport Layer Security en español Capa de

Transporte Segura, es una evolución del protocolo SSL

c) Protocolos S-HTTP: sus siglas Secure Hypertext Transport Protocol en español

Protocolo de Transporte de Hipertexto Seguro, es un protocolo nuevo que ayuda a la encriptación de mensajes que se intercambian entre el navegador y el servidor Web ofreciendo transacciones seguras a través del Internet con los servicios confidencialidad, autenticación e integridad de los mensajes.

d) Protocolos SET: Transacción Electrónica Segura en inglés sus siglas Secure

Electronic Transaction, este protocolo utiliza técnicas criptográficas tales como certificados digitales y criptografía de clave pública, utilizado más para compras por internet permitiendo autenticar a todas las partes que intervienen y no sólo al vendedor como es el caso de SSL.

41

e) Protocolos SSH: sus siglas Secure SHell, en español Intérprete de órdenes Segura,

“el protocolo SSH permite establecer una conexión segura a máquinas remotas, con autenticación mutua robusta, encriptación de los datos transmitidos y chequeo de la integridad de los datos” (GOMEZ, 2009)

2.2.7.4. Recomendaciones para una Navegación Segura en las Aplicaciones Web

 Verificar el certificado digital de la página antes de confiar en su contenido, mismo

que se encuentra en la parte superior del navegador en forma de candado, allí indica la fecha de caducidad y el dominio del certificado vigentes.

 Recordar que las páginas, aplicaciones o sitios Web seguros en la barra de direcciones

empiezan por https:// seguido de un candado; es por eso que entidades bancarias u otras que necesitan de la autenticación de sus clientes deben modificar la configuración de sus servidores Web para brindar seguridad y confianza en el envío de datos sensibles por parte del cliente.

 Verificar la dirección URL completa de la organización dueña de la página, ya que

podría tener otra dirección y no darse cuenta.

 Aplicar los últimos parches de seguridad otorgados por los fabricantes y confirmar que

operen de modo seguro mediante certificado digitales o protocolos de comunicación segura como los protocolos SSL, HTTPS, SSH entre otros.

 El cliente debe procurar el cierre de su sesión cuando termine de utilizar la aplicación;

ya que no basta con solo cerrar el navegador, los datos pueden ser secuestrados por terceros.

42

 La navegación por estos sitios o aplicaciones Web donde necesiten la información

personal del usuario no se debe hacerse desde lugares públicos, ya que los equipos de estos lugares pueden estar infectados por programas troyanos o tener un programa para registrar las pulsaciones del teclado, logrando así el robo de la información.

 Las aplicaciones Web deberían estar programadas para utilizar páginas de

autenticación independientes; es decir, páginas que se abren en nuevas ventanas del navegador.

 Es responsabilidad del cliente el guardar datos importantes como su login y contraseña

de acceso.