ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Trabajo: Seguridad en AJAX


Enviado por   •  23 de Julio de 2020  •  Tareas  •  1.992 Palabras (8 Páginas)  •  498 Visitas

Página 1 de 8

Actividades[pic 1]

Trabajo: Seguridad en AJAX

Descripción de la actividad

Realización de un trabajo para recopilar los problemas de seguridad que presenta la tecnología WEB 2.0 AJAX y las posibles soluciones a los mismos.

Pautas de elaboración

Esta actividad sobre seguridad en aplicaciones Ajax abarca los problemas de seguridad que tienen este tipo de aplicaciones, que caen en la categoría denominada rich internet applications y en las posibles soluciones a los mismos. Hay que consultar cuantas fuentes relativas al tema se considere y sintetizar la información relevante sin limitarse a copiar el contenido de alguna de ellas.

Criterios de valoración

Se valorará (para todas las actividades):

  • Contenidos. Para la realización de los trabajos se deben consultar varias fuentes para después contrastarlas, sintetizarlas y generar un trabajo y opinión personalizados aportando ejemplos gráficos.
  • Estructura del documento. Debe ser planificada previamente y tener un apartado de conclusiones y de referencias al final.
  • Presentación acorde con la categoría del curso.
  • Referencias. Se deben especificar en un apartado al final todas las fuentes consultadas, URL’s de internet, papers, artículos o libros especificando todos los datos de la publicación disponibles. Recalcar la obligatoriedad de la especificación de las referencias consultadas.

Extensión máxima: 10-15 páginas (fuente Georgia 11 e interlineado 1,5).


Introducción

En el presente trabajo, se realizará un análisis de la manera en que trabaja Ajax y la Web 2.0, para determinar los puntos débiles que se presentan en este tipo de tecnologías y así mismo la manera en como abordarlos, para evitar que nuestra implementación tenga problemas al desplegar este tipo de tecnología, ya que es muy importante y útil en la actualidad, ya que muchas de las plataformas que se utilizan actualmente, están basadas en este modelo y permite tener una dinámica que es importante al momento de dar a conocer nuestros productos, nuestra información e inclusive, interactuar con otras personas a través de la web.

Qué es Ajax

Es el acrónimo de “JavaScript y XML Asíncronos” por sus siglas en ingles “Asynchronous JavaScript and XML”, pero ¿qué es lo que hace? Algunos autores expresan que Ajax como tal no es una tecnología, sino un término que describe una manera de utilizar conjuntamente varias tecnologías ya existentes, como son HTML, XHTML, CSS, JavaScript, DOM, XML, XSLT y la parte más importante el objeto XMLHttpRequest. Todas estas tecnologías y el modelo que propone AJAX para utilizarlas, presentan distintas ventajas, para hacer una página más dinámica y responsiva a las acciones del usuario, capaz de actualizarse continuamente sin tener que cargar toda la página completa.

[pic 2]

(w3schools, 2020) (Colaboradores de MDN, 2019) (desarrolloweb, 2020) (Raffino, 2018) (Reg Developer, 2008) (Cebrian, 2006) (Pérez, 2015) (librosweb, 2020)

Esto deriva en tener páginas que permiten tener interacción con ellas de una manera más dinámica y presentarse las acciones únicamente donde el usuario realizó alguna solicitud, a esto se le denomina como actualización asíncrona, puesto que, no existe una sincronía de toda la página, muchas aplicaciones están utilizando esta modalidad, debido a la experiencia que se presenta ante el usuario.

Que es Web 2.0

No es que exista una nueva Internet o un invento completamente nuevo, este concepto de Web 2.0, refiere a la interactividad y participación que tiene el usuario para con el Internet, en el cuál se facilita la transmisión de información, así como la manera de transmitir esta información, ya que no sólo se contempla al usuario como un simple cliente que consume información, sino como un elemento que puede aportar información, para interactuar con otros usuarios, generar contenido o para establecer comunidades virtuales.

Algunas de las herramientas que tenemos en la web 2.0 son las siguientes:

  • Redes sociales
  • Wikis
  • Blogs
  • Sitios que alojan videos
  • Páginas de venta online
  • Podcasts
  • Presentaciones online
  • Mapas conceptuales y mentales

Como podemos observar muchas de estas páginas, son las que consumimos actualmente, ya que han tenido un despliegue e importante muy grande, derivado de los servicios que se pueden prestar a través de estas y por la facilidad para acceder a ellos, los cuales mediante alguna suscripción o de manera gratuita, pero con publicidad, pueden prestar servicios como ver videos, películas o inclusive tomar clases y que tengan validez oficial.

Importancia de Ajax en Web 2.0

Mucha de la información que se consume a través de la Web 2.0, tienen la funcionalidad de Ajax, que permite que el contenido fluya de una manera más rápida y dinámica dentro de un sitio, por ejemplo, si estamos consumiendo un video a través de una página, podemos tener una fluidez completa dentro de la página, por ejemplo podemos dejar comentarios o darle “me gusta” al video que se está reproduciendo o buscar el video siguiente sin necesidad de interrumpir o cancelar la reproducción que tenemos actualmente, así mismo si queremos agregar el video que se está reproduciendo a una lista especial, para volverlo a escuchar en un futuro, lo podemos hacer de una manera rápida y sin interrupciones.

Problemas de Seguridad

Debido a lo dinámico que puede ser un servidor, tenemos muchos puntos franqueables en la implementación de Ajax sino se tiene cuidado y sobre todo si no se tiene conocimiento de los tipos de ataque, es por eso que, en esta sección, vamos a comentar algunos de los más importantes.

  • Inyección:
  • Debido a que cadenas de texto pueden ser insertadas dentro de contenedores de texto como lo son los textbox, se puede utilizar esta opción para ingresar código malicioso que nos permita hacer consulta a la base de datos, o que nos genere un shell en el equipo, podemos obtener información importante del dominio del servidor, etc.
  • XSS (Cross-site scripting): Sí se utilizan variables entre páginas, pueden ser alteradas por el atacante y así obtener acceso a páginas o sitios en los cuales no debería de acceder.
  • Envenenamiento XML: Alterar o crear XML mal formado, y enviarlo al servidor para que lo procese, provocará una denegación de servicio.
  • SQLi (SQL inyection): Cuando se tiene consulta a bases de datos y mediante una caja de texto, se complementa o se modifica la consulta para que arroje información extra.
  • Ejecución maliciosa de código Ajax: Debido a que Ajax se ejecuta en segundo plano, muchas veces el usuario no está consiente de que es lo que se está ejecutando en una página, es por eso que al entrar en una página maliciosa no estemos conscientes y roben información de nuestro equipo o del explorador, como son cookies de autenticación, credenciales, etc.
  • Validación única del cliente: Si tenemos algún tipo de validación del lado del cliente, el atacante puede realizar modificaciones de las consultas o solicitudes que se envían al servidor, para una vez validada, se intercepta y se envía con algún tipo de código malicioso.
  • Manipulación de complementos: Cuando nuestra página ejecuta complementos como ActiveX, Flash o Applets, puede ser vulnerados fácilmente para inyectar código o si consultamos nosotros alguna página con estos complementos, se puede filtrar nuestra información o infectarse nuestro equipo.
  • La mejor manera de poder evitar estos escenarios, es validar todas las entradas de texto que se tienen en la página, ya que así podemos validar que el usuario solamente está ingresando la información que se le pide.
  • Así mismo, tenemos que hacer validaciones del lado del servidor para respaldar la seguridad del lado del cliente, para evitar que el atacante burle la seguridad del lado del cliente e inserte código en el transcurso al servidor.
  • También tenemos que tener en cuenta, evitar la utilización de complementos que históricamente son vulnerables a ataques y propagación de virus.
  • Codificación
  • Debido a que los lenguajes de programación y las herramientas que utilizamos, normalmente manejan más de un tipo de codificación, podemos tener problemas si un atacante disfraza información o ataques de inyección con otro tipo de codificación y provoca que tengamos ataques casi imposibles de detectar, pues, al recibir alguna cadena de caracteres, lo primero que intentarán nuestras tecnologías es entender lo que se les está pidiendo y sino establecimos una codificación en específico, va a intentar cambiar a otra codificación y es cuando ocurre el ataque.
  • La mejor manera de evitar este tipo de ataques es establecer una codificación en específico para toda la página y forzar a que la entrada de texto, tengan esta misma característica, así nuestra herramienta, no intentará cambiar a otra codificación para entender el mensaje.
  • También es importante implementar la validación de datos ingresados en los campos de texto, para evitar que se ingrese información de más y si es posible limitar la cantidad de caracteres que se va a ingresar en el campo de texto, para evitar este tipo de ataques.
  • Programación definida
  • Por las características de Ajax, es posible que se tenga la costumbre de ejecutar mucho código del lado del cliente, esto provoca que, si se implemente autenticación, control de acceso, validación o algún otro mecanismo de seguridad del lado del cliente, sea fácilmente atacable, ya que utilizando mecanismos como Firebug, con esto el atacante puede alterar el código o utilizar cadenas de conexión para entrar a la base de datos, etc.
  • Es por eso que se tiene que tener cuidado de que es lo que le corresponde ejecutar al servidor y que al cliente y analizar de que manera es la más segura, para evitar este tipo de ataques, así mismo se tiene que revisar la parte de autenticación, para obtener un acceso más seguro como un SSO, o algún AD o RADIUS, para evitar que la autenticación se tenga que hacer directamente en el servidor y sea más vulnerable.

Conclusiones

En general, este nuevo modelo de Ajax, nos permite mucha más interacción con las páginas web, a tal grado, que muchos trabajos, entretenimiento, interacción o inclusive educación, son prácticamente inconcebibles sin el Internet, esto ha ayudado a que tengamos más interacción de manera virtual entre personas de distintos países, que podamos estudiar en universidades que no están en nuestro continente, que estemos enterados de la noticias que han surgido del otro lado del mundo hace unos minutos y sobre todo, en lo que ha ayudado Ajax, es en la manera tan dinámica e interactiva en que lo podemos hacer, sin necesidad de que estar refrescando continuamente una página o que tengamos que esperar mucho tiempo a terminar un proceso para iniciar otro. Pero también tenemos que tener en cuenta que se tienen que tener consideraciones muy importantes en la manera en que implementamos este modelo, ya que como lo vimos, resulta que tiene muchas vulnerabilidades y no es por él en si, sino que toda la tecnología es vulnerable y continuamente se encuentra evolucionando para evitar estos problemas, pero tenemos que poner mucha atención en la manera en que se está implementando y sobre todo actualizarnos continuamente en conocimiento para evitar que nuestra página o sitio presente problemas para nosotros o para las personas que lo consultan.

...

Descargar como (para miembros actualizados) txt (13 Kb) pdf (160 Kb) docx (27 Kb)
Leer 7 páginas más »
Disponible sólo en Clubensayos.com