Estoy mirando de como hacer un dirbuster en PHP en base a un diccionario y a fuerza bruta.
Mi idea es:
Cliente hace request de los dominios a los cuales buscarles directorios y urls de diccionarios al servidor.
POST dominio=https://www.google.com diccionario=https://raw.githubusercontent.com/dustyfresh/dictionaries/master/DirBuster-Lists/directory-list-2.3-big.txt
Las dudas que me surgen son las siguientes en base a performance?
-Cual es la forma más eficiente de leer el diccionario? Lo leo entero y lo guardo en una variable con file_get_contents?
-Cuantas peticiones puedo hacer simultaneamente? file_get_contents es más rápido que Curl, pero por lo que leí por ahí, Curl permite hacer peticiones multihilo. Me renta entonces usar Curl sobre file_get_contents? Cual es la forma más eficiente?
-Cual es el límite de peticiones simultaneas? Puedo attachear timeouts a las peticiones y recibir un callback? Ya que solo me interesa saber si es status 200, y descargarlo en caso de que la respuesta sea de poco tamaño para scrapear las urls que contiene en busca de directorios. Si por ejemplo pesa 4 gigas, no me renta descargar todo el contenido. Es esto posible?
-Debo leer 100 directorios e ir haciendo peticiones de forma que siempre tenga 100 requests simultaneas?
Aclarar que voy a usar hostings gratuitos, entonces no puedo utilizar un cliente C++ en el servidor para hacer las peticiones o utilizar PHP desde cli.
Gracias.