
Hace fingerprinting de servidores, encuentra exploits, escanea WebDAV. Puede o no también hacer café.
DAVScan es un escáner webdav rápido y ligero diseñado para descubrir archivos y carpetas ocultos en servidores web con DAV habilitado. El escáner funciona aprovechándose de servidores WebDAV con privilegios excesivos o mal configurados, o servidores vulnerables a varias vulnerabilidades de divulgación o evasión de autenticación. El escáner intenta identificar el servidor objetivo y luego recorrer el servidor basándose en los resultados de una solicitud PROPFIND raíz.
Si realmente te tomas el tiempo de leer mi código de mierda, notarás que decidí cambiar parte del núcleo de davscan para usar beautiful soup, lo que requerirá libxml. Decidí hacer esto como resultado de encontrarme con una configuración DAV realmente mala que devolvió casi 500 MB de datos XML y mató la biblioteca xmltree. BS puede... bueno... manejar tanta BS. Tomará un poco más de tiempo recopilar y analizar todo, pero ahora DAVScan debería poder manejar tanta mierda como puedas echarle (asumiendo que no te quedes sin memoria).
Identificación por cabecera del servidor - Si el servidor web devuelve una cabecera de servidor, davscan puede buscar exploits públicos basados en la respuesta.
Escaneo DAV básico con PROPFIND - Escaneo rápido para encontrar cualquier cosa que pueda ser visible desde DAV.
IIS/6.0 Unicode Auth Bypass - Funciona usando GET para archivos y PROPFIND para carpetas. No completamente probado, así que verifica el trabajo.
Exclusión de resultados de exploits DoS - Puedes excluir exploits de denegación de servicio de los resultados de searchsploit.
Exclusión de módulos MSF de los resultados de exploits - Se incluye un searchsploit personalizado en el repositorio para esto. Sobrescribe el searchsploit existente o haz una copia de seguridad y reemplázalo. Esta característica puede o no terminar en el script searchsploit real.
Capacidad de proxy - Puedes especificar un proxy http(s) para usar. Esto simplemente pasará un proxy a la sesión de requests. Añadí esto debido a la necesidad de autenticación NTLM que requests no puede hacer en este momento.
Autenticación - Solo funciona autenticación básica por ahora. Si necesitas algo como tokenización o algo extraño, házmelo saber y trabajaré en ello. Sin embargo, no es una alta prioridad agregar más funcionalidad a esto. La mayoría de las necesidades de autenticación únicas se pueden manejar usando burp y el indicador de proxy.
Identificación por cabecera X - Está ahí, pero no funciona correctamente. Puede que ya funcione ahora, pero no está completamente probado.
Mi capacidad para documentar cosas correctamente - Cuando cambié el xml nativo por beautiful soup, eso vino con algunos requisitos que no sabía que debía contarte. Querrás instalar eso también, así como la biblioteca C libxml porque hace las cosas más rápidas. Además, no se caga si le das medio gigabyte de WebDAV XML. Adelante, pregúntame cómo descubrí eso.
Probablemente mucho más que no he probado y cualquier problema que pueda haber en github, asumiendo que la gente se preocupe por decirme qué es estúpido...
Construir una base de datos sqlite en lugar de archivo plano - Actualmente la salida va a un archivo con un par de mensajes en pantalla solo para mostrar que funciona.
¡Convertirme en piloto de combate! - Vi Top Gun una vez y ahora estoy muy emocionado por unirme a la Fuerza Aérea y vivir el sueño. "¡Siento la necesidad de velocidad!"
¿Sabías que puedes ayudarme a arreglar mi mal código? Podría ser como tu trabajo diario pero sin paga y un poquito más de reconocimiento, ya que casi no obtengo nada de tu arduo trabajo aquí. En el lado positivo, no te exigiré que vengas el fin de semana para ponerte al día. Ni siquiera me quejaré si envías código que escribiste cuando estabas borracho. Por si no lo has notado, así es cuando hago mi mejor trabajo (más o menos). Solo no envíes tonterías como corregir un error tipográfico. Esos están ahí a propósito.
Usage: davscan.py [-h] [-D DEPTH] [-a AUTH] [-u USER] [-p PASSWORD]
[-o OUTFILE] [-P PROXY] [-d] [-m] url
positional arguments:
url url of the server to scan; https://foo.com:8443/
optional arguments:
-h, --help show this help message and exit
-D DEPTH, --depth DEPTH How many folders deep should davscan go (default is infinity); -d 1
-a AUTH, --auth AUTH Basic authentication required; -a basic
-u USER, --user USER user; -u derpina
-p PASSWORD, --password PASSWORD password; -P 'P@$$W0rd'
-o OUTFILE, --out OUTFILE output file. defaults to; -o /tmp/davout
-P PROXY, --proxy PROXY proxy server if needed.; -P http://user:[email protected]:8080/
-d, --no-dos exclude DoS modules
-m, --no-msf exclude MSF modules from results