Tarea N° 1_Edgar_Favián_Briceño_Jiménez_Seguridad_en_AJAX

January 28, 2019 | Author: Fabian Briceño Jiménez | Category: Java Script, Ajax (Programming), Web Server, Http Cookie, World Wide Web
Share Embed Donate


Short Description

Aplicaciones Online y BBDD...

Description

 Asignatura  Asignatu ra Seguridad en  Aplicaciones Online  y Bases de Datos

Datos del alumno alumno

Fecha

 Apellidos: Briceño Briceño Jiménez Jiménez

2017 – 09 – 21 Nombre: Edgar Favián

 Acc ti  A tiv v ida des 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 l os mismos.

Pautas de elaboración Esta actividad sobre seguridad en aplicaciones Ajax abarca los problemas de seguridad que tienen este tipo de aplicaciones, aplicaciones, que caen en la categoría denominada rich internet applications  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 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  URL’s  de internet,  papers,  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. consultadas. Extensión máxima: 10-15 páginas (fuente Georgia 11 e interlineado 1,5).

TEMA 1 – Actividades

© Universidad Internacional de La Rioja (UNIR)

 Asignatura Seguridad en  Aplicaciones Online  y Bases de Datos

Datos del alumno

Fecha

 Apellidos: Briceño Jiménez

2017 – 09 – 21 Nombre: Edgar Favián

DESARROLLO DE LA ACTIVIDAD  Antes de comenzar a mencionar los problemas que tiene AJAX, merece mucho la pena conocer un poco acerca de esta herramienta, saber que es y luego ya se pasará a hablar de los problemas que presenta y de sus posibles formas de mitigación.

¿Qué es AJAX? En torno a consultar varios autores, podemos decir que AJAX es un acumulado de tecnologías web que se usan en conjunto para permitir que puedan interactuar un cliente y un servidor, esto lo hacen de manera dinámica y sin que se tenga que recargar o refrescar la página web.

¿Por qué es utilizado AJAX?  AJAX introduce un motor AJAX entre la interacción del usuario y servidor, con esto se logra que el usuario jamás vea una ventana en blanco cuando está navegando ni tampoco verá un ícono en forma de círculo esperando a cargar la página desde un servidor.

Una que hemos conocido un poco de esta tecnología, pasamos a desarrollar la parte negativa del uso de AJAX, hablaremos de los problemas de seguridad que tiene y qué hacer con algunas posibles soluciones.

TEMA 1 – Actividades

© Universidad Internacional de La Rioja (UNIR)

 Asignatura Seguridad en  Aplicaciones Online  y Bases de Datos

Datos del alumno

Fecha

 Apellidos: Briceño Jiménez

2017 – 09 – 21 Nombre: Edgar Favián

¿Por qué NO AJAX? Parece algo no muy relevante pero a la vez lo es, muchas personas no recomiendan el uso de AJAX porque no funciona en todos los navegadores web y tampoco funciona en todos los dispositivos; por una razón que se desprende de su propio nombre JavaScript. Si bien muchos navegadores web y dispositivos soportan JavaScript, no todos lo hacen  y ese es un gran punto en contra de AJAX.

Problemas de Seguridad WEB 2.0 AJAX Para poder hablar acerca de los problemas de seguridad que presenta esta tecnología, debemos saber cómo funciona AJAX ya que de ello dependerá su seguridad.

Funcionamiento: Mientras la aplicación se ejecuta en el navegador del cliente, la comunicación se realiza de manera asíncrona en segundo plano con el servidor.

TEMA 1 – Actividades

© Universidad Internacional de La Rioja (UNIR)

 Asignatura Seguridad en  Aplicaciones Online  y Bases de Datos

Datos del alumno

Fecha

 Apellidos: Briceño Jiménez

2017 – 09 – 21 Nombre: Edgar Favián

Problemas de seguridad: 

XSS (DOM) Se puede alterar el contenido de un sitio, se puede robar cookies así como credenciales y modificar direcciones de datos que van a los usuarios.



SAME ORIGIN POLICY (SOP) Se puede firmar el script y permitir de esta manera que un script externo proveniente de otro sitio pueda acceder al DOM, cookies y credenciales del usuario.



CROSS ORIGIN RESOURCE SHARING (CORS) Con esta configuración lo que se logra es poder hacer una llamada AJAX a través de un dominio distinto con la finalidad de poder acceder a algún dato que el cliente requiera, exponiendo de esta manera y aumentando el riesgo de que los mismos sean robados.



JSONP Es un método que nace con la finalidad de cambiar la limitación que tiene AJAX para realizar peticiones entre dominios, esto puede comprometer la seguridad de los datos o credenciales del cliente.



DEPENDENCIA DE LA TECNOLOGÍA JavaScript Esta tecnología debe estar activada para que las aplicaciones puedan funcionar  y con esto existen algunas incompatibilidades entre navegadores, ya que no todos soportan esta tecnología.



GRAN SUPERFICIE DE IMPACTO Se debe tener muy en cuenta la parte que se ejecuta o desarrolla del lado del cliente, ya que es aquí en donde se tiene mayor exposición a un ataque.

TEMA 1 – Actividades

© Universidad Internacional de La Rioja (UNIR)

 Asignatura Seguridad en  Aplicaciones Online  y Bases de Datos



Datos del alumno

Fecha

 Apellidos: Briceño Jiménez

2017 – 09 – 21 Nombre: Edgar Favián

XPATH Y XML INJECTION Los XPATH son un peligro y una acción muy similar a la SQL Injection, el lenguaje que se utiliza es XPATH y tienen como fin malicioso atacar a los documentos XML.



JAVASCRIPT HIJACKING Consiste en tomar el control de una sesión web, que por lo general es controlada o administrada por medio de un token de sesión; Javascript Hijacking compromete el token de sesión, lo roba y de esta manera tiene acceso no autorizado al servidor web.

Posibles soluciones:  A continuación y base a la consulta realizada en la actividad, se proponen las siguientes posibles soluciones a los problemas de AJAX. 

Como AJAX necesariamente ejecuta JavaScript, ese código debe ejecutarse con el uso de una sandbox, de esa forma el atacante que intente colarse queda fuera  y no tendría acceso a los recursos que le pudieran interesar de un ususario.



En lo posible se debe no establecer conexiones con nombres de dominio distintos del que se ha obtenido el script, esto se lo hace con el uso de CORS.



Una vez se han obtenido los ficheros JavaScript desde un nombre de dominio o sitio web, los mismo no deben poder acceder a las propiedades de otro dominio.



Comprobación siempre en los dos extremos, tanto el servidor como en el cliente,  ya que cualquier acción que sea validada por el cliente podría ser manipulada y aprovechada por el atacante.



Requerir controles de seguridad como autenticación en el lado del servidor.



Siempre tener en cuenta los ataques como XSS y XSRF, mediante un filtrado correcto o con el uso de tokens.

TEMA 1 – Actividades

© Universidad Internacional de La Rioja (UNIR)

 Asignatura Seguridad en  Aplicaciones Online  y Bases de Datos



Datos del alumno

Fecha

 Apellidos: Briceño Jiménez

2017 – 09 – 21 Nombre: Edgar Favián

Evitar almacenar datos delicados en el lado del cliente, ya que el atacante podría acceder a ellos de forma relativamente sencilla.



Siempre utilizar métodos criptográficos para la transmisión de datos sensibles entre el cliente y el servidor.



Cualquier petición que se haga con AJAX y que tenga relación con el acceso a recursos protegidos, deben siempre estar autenticadas.

Conclusiones: Como resultado del desarrollo de esta actividad, se puede concluir: 

Conocer de manera introductoria que es la tecnología WEB 2.0 AJAX y cómo interactúan cliente y servidor en una web.



Saber porque utilizar AJAX y cuáles son sus puntos negativos que hacen que no termine de explotárselo al máximo.



Se pudo conocer algunos problemas de seguridad con AJAX, pero por otro lado también se pudo verificar que existen métodos para poder aplacar de cierta forma estas fallas.

 Webgrafía: 

OWASP. (2014). Session Hijacking Attack. Recuperado de: https://www.owasp.org/index.php/Session_hijacking_attack 



Pablo. (2013). NotasJS: Política del mismo origen. Recuperado de: http://notasjs.blogspot.com/2013/09/politica-del-mismo-origen-sameorigin.html



Hernández, Juan. (2012). Sopa de siglas: AJAX, JSON, JSONP y CORS. Recuperado de: http://blog.koalite.com/2012/03/sopa-de-siglas-ajax-json-jsonp-y-cors/



TEMA 1 – Actividades

© Universidad Internacional de La Rioja (UNIR)

 Asignatura Seguridad en  Aplicaciones Online  y Bases de Datos



Datos del alumno

Fecha

 Apellidos: Briceño Jiménez

2017 – 09 – 21 Nombre: Edgar Favián

 Adastra. (2014). The Hacker Way: Configuraciones inseguras con CORS. Recuperado de: https://thehackerway.com/2014/10/08/vulnerabilidades-comunes-en-html5configuraciones-inseguras-con-cors-parte-1/



Saquete, Ramón. (2013). Human Level: ¿Cómo evitar ataques de hackers en una página web? Recuperado de: https://www.humanlevel.com/articulos/desarrollo-web/como-evitar-ataquesde-hackers-en-una-pagina-web.html



Garrett, Jesse. (2005). AJAX: Un nuevo acercamiento a las aplicaciones web. Recuperado de: http://www.maestrosdelweb.com/ajax/



Fuentes, Iván. Universidad de Alicante: Accesibilidad de las aplicaciones AJAX. Recuperado de: http://accesibilidadweb.dlsi.ua.es/?menu=accesibilidad-aplicaciones-ajax



González, Pablo. (2014). Flu-Project: Seguridad en AJAX. Recuperado de: http://www.flu-project.com/2014/04/seguridad-en-ajax-parte-i.html

TEMA 1 – Actividades

© Universidad Internacional de La Rioja (UNIR)

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF