Write up #wgsbd2 Pizza

Bien este reto era mas interesante. Aqui nos conectamos al servidor de pruebas en el puerto 4242 y observamos un servicio para pedir pizza, asi es, pizza. En este servidor nos piden entrar con una cuenta o entrar como guest asi que le damos un intento a guest y vemos un formulario pidiendo nuestros datos. Una vez rellenado muy amablemente nos dicen que enviaran la pizza pero ¿y el reto?.

Haciendo intentos de varias cosas notamos que al meter mas de 50 caracteres en el ultimo campo nos regresa un trozo de codigo, el cual esta de una manera muy extraña:
import rand**
i*port ***eading
impo*t SocketServer
class ThreadedT**RequestHandler(**cketServ*r,BaseReq**stHandler):
de**ha*dle(self):
*ofle*** 50
rq = self.request
Entonces notamos algo mas curioso, existen 3 casos de desborde, con lo que enviamos 50, 51 y 52 caracteres y nos devuelve varios trozos de codigo igual, solo que los asteriscos estan en distintas posiciones. Con esto reconstruimos el cosigo y :
import random
import threading
import SocketServer
class ThreadedTCPRequestHandler(SocketServer,BaseRequestHandler):
def handle(self):
hoflen = 50
     rq = self.request
     rq.send(“Welcome to Happy Endless Awesome Pizza, your most valuable fast food restaurant.\n\n”)
     rq.send(“User [guest]: “)
     user = rq.recv(30)[:-1]
     if user == “guest” or user == “”:
       usertype = “guest”
     else:
       rq.send(“Password: “)
     pwd = rq.recv(20)[:-1]
     if user == “chucknorrium hyposulfite” and pwd == “ishouldgetalife”:
       usertype = “admin”
     else:
       rq.send(“\Incorrect user/password\n”)
     return
Asi que seguimos la filosofia chuck norris y tenemos un cuadro de opciones. Probamos una a una y WOW obtenemos esto: icountthepepperoni

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s