Título: Performance de un dirbuster en PHP? Publicado por: @XSStringManolo en 23 Diciembre 2019, 01:16 am 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. Título: Re: Performance de un dirbuster en PHP? Publicado por: AlbertoBSD en 23 Diciembre 2019, 01:31 am Pues lo ideal seria descargar el archivo al servidor local wget o algún otro método, para posteriormente de ahí ir leyendo línea a línea del mismo. Dependiendo del tamaño del archivo y de los límites de memoria del servidor lo ideal seria leer solo linea por linea he ir guardadlo los offset de cada linea o en su defecto irlos guardando en una base de datos.
Todo depende de lo que necesites si necesitas mas performance, sacrificas memoria y si quieres ahorrar memoria sacrificas performance. Eso si, el archivo tiene que estar localmente, si no ni perfermance ni memoria. Saludos! Título: Re: Performance de un dirbuster en PHP? Publicado por: @XSStringManolo en 23 Diciembre 2019, 19:56 pm Pues lo ideal seria descargar el archivo al servidor local wget o algún otro método, para posteriormente de ahí ir leyendo línea a línea del mismo. Dependiendo del tamaño del archivo y de los límites de memoria del servidor lo ideal seria leer solo linea por linea he ir guardadlo los offset de cada linea o en su defecto irlos guardando en una base de datos. Del tema de las requests sabes algo?Todo depende de lo que necesites si necesitas mas performance, sacrificas memoria y si quieres ahorrar memoria sacrificas performance. Eso si, el archivo tiene que estar localmente, si no ni perfermance ni memoria. Saludos! |