¿No puede reproducir los resultados de MSF fuzzer?

1

Esta es la primera vez que solicito apoyo en mi caso. Por favor, perdóname, ya que todavía estoy aprendiendo ... El escenario es realmente simple:

Algunos dispositivos con servidor HTTP están siendo modificados por el módulo de metasploit (http_get_uri_long), que solicita URI largos y espera una respuesta. El servidor HTTP se bloquea cuando recibe alrededor de 1700 caracteres de URI, lo que congela completamente el dispositivo hasta que se reinicia manualmente al desenchufarlo del zócalo de alimentación. He realizado varias pruebas, y siempre que el servidor HTTP recibe "GET / XXXX ..." (alrededor de 1700 de Xs) el dispositivo se congela, lo que confirma que el error existe.

Sin embargo, al crear un PoC simple en Python (2.7) usando el módulo de socket, estoy solicitando la misma cantidad de X dentro de URI, pero sin mi objetivo (congelar el dispositivo). Para un URI más corto, se devuelve el error 404 normal. Pero cuando se solicitan URI más largos, el servidor HTTP no responde con nada. Y el dispositivo todavía está arriba.

He intentado Wirehark, para comprobar si (quizás) hice algo mal con mi código PoC, pero los paquetes parecen ser los mismos.

Aquí está mi PoC:

import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
ip = "192.168.0.11"
port = 80

s.connect((ip,port))
data = "GET /" + 'X' * 1800 + " HTTP/1.1\r\nHost: %s\r\n\r\n" % ip
print data
s.send(data)
print s.recv(4096)
s.close()

Mi objetivo es: lograr el mismo resultado que el Fuzzer URI HTTP de MSF, significa congelar el dispositivo. El problema es que no puedo reproducir lo mismo con mi código de Python.

Cualquier ayuda es muy apreciada :)

    
pregunta Morti S 12.07.2017 - 15:00
fuente

1 respuesta

1

Bien, he encontrado lo que causó el problema. Parece que la vulnerabilidad que estaba probando no es la Denegación de Servicio tradicional (como crear un paquete HTTP con una cadena larga en el interior), sino el "Agotamiento de recursos". He ajustado mi código y ahora está colgando el dispositivo correctamente.

Es hora de escribir un buen correo al fabricante del dispositivo :)

    
respondido por el Morti S 12.07.2017 - 20:00
fuente

Lea otras preguntas en las etiquetas