Montar mi propio DDNS con python para efectuar ataques de DNS rebinding (para un reto en rootme)

Iniciado por retr02332, 14 Marzo 2021, 20:02 PM

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

retr02332

Hola a todos

Estoy intentando hacer un servidor DDNS en python sencillo, para probarlo contra un reto en internet de DNS rebinding.

Después de días de investigación pude entender la vuln, pero no he podido configurar un ddns propio usando dnslib en python3 (no tienen una documentación de la libreria)

A continuación les explicare los problemas que tengo:

1. Tengo un código de ejemplo en internet el cual ya logre entender pero no cumple mis expectativas ya que lo que quiero lograr es que este responda con un ip en especifico ante una consulta en especifico no para cualquier dominio, para ello he configurado el server a la escucha en el puerto 53 para que pueda filtrar las consultas entrantes pero no veo que esto tenga efecto cuando uso comandos como nslookup por ejemplo. (por cierto no se si tenerlo en el puerto 53 sea problema y pueda generar errores de algún tipo)

2. Tengo una vps en digital ocean en donde quiero que corra el programa, tengo un dominio inclusive y un servidor http para efectuar el ataque al reto que os comento. Pero lo que digo, no logro alterar la respuesta dns cuando se intenta resolver mi dominio.

Aquí les dejo aquel fragmento de código del que les hable en el punto #1:

Código (python) [Seleccionar]
from dnslib.server import *

class TestResolver:
   def resolve(self,request,handler):
       reply = request.reply()
       reply.add_answer(*RR.fromZone("abc.def. 60 A 1.2.3.4"))
       return reply

resolver = TestResolver()
logger = DNSLogger(prefix=False)
server = DNSServer(resolver,port=53,address="localhost",logger=logger,tcp=True)
server.start_thread()
q = DNSRecord.question("abc.def")
a = q.send("localhost",53,tcp=True)
print(DNSRecord.parse(a))
server.stop()

Xyzed

Qué interesante y amplio el apartado redes en la informática, tendré que meterme de lleno.
No puedo ayudarte lamentablemente, espero que te den una respuesta.
...